python zipfile解压文件出现中文乱码
解压文件首先要在编写代码的开头通过import关键字来调用zipfile,再用with开头的命令来处理需要解压的文件。解决乱码情况可以通过自己创建文件夹的方式来解决,先创建一个自己的解压目录,为了区分是文件还是文件夹要获取文件大小,再把解码方式为cp437变成gbk,再对文件进行拼接,示例如下:
with zipfile.ZipFile(file='/data/home/sunzq/FQA.zip', mode='r') as wz: # os.mkdir('/data/home/sunzq/FQA') for old_name in wz.namelist(): file_size = wz.getinfo(old_name).file_size new_name = old_name.encode('cp437').decode('gbk') new_path = os.path.join('/data/home/sunzq/', new_name) if file_size > 0: with open(file=new_path, mode='wb') as h: h.write(wz.read(old_name)) else: os.mkdir(new_path)