当前位置:天才代写 > tutorial > Python教程 > python解决linux下解压zip文件乱码问题-python手艺人

python解决linux下解压zip文件乱码问题-python手艺人

2021-02-27 16:43 星期六 所属: Python教程 浏览:27

情况

在linux下常常会碰到从windows下复制回来的zip文件缓解压力错码的难题,今日何三就来共享下如和应用python处理linux下解压zip文件乱码的难题,撰写的python小脚本制作供大伙儿参照

构思

  1. 出現错码的缘故绝大多数都是由于编号不统一导致的,windows下汉语一般全是GBK编号,而linux下编号一般是UTF-8
  2. python中有一个zipfile缓解压力控制模块,先运用zipfile载入zip文件中的每一个文档,并将名字开展转换格式实际操作,也就是先从zip文件中恰当的载入名字,随后在开展储存

编码执行

将下边的编码储存成uzip.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# uzip.py

import os
import sys
import zipfile

print("Processing File "   sys.argv[1])

file=zipfile.ZipFile(sys.argv[1],"r");
for name in file.namelist():
    utf8name=name.decode('gbk')
    print("Extracting "   utf8name)
    pathname = os.path.dirname(utf8name)
    if not os.path.exists(pathname) and pathname!= "":
        os.makedirs(pathname)
    data = file.read(name)
    if not os.path.exists(utf8name):
        fo = open(utf8name, "w")
        fo.write(data)
        fo.close
file.close()

启用:

> uzip.py abc.zip
 

    关键字:

天才代写-代写联系方式