有时候,你的文件或目录名称中带有一些无法识别的字符来通过压缩文件,所以你不能提取它们。 你用什么工具来提取他们在正确转换文件名?
Answer 1:
我在网上搜索,但未能找到一个好剧本。 因此,出于需要我写了一个Python脚本自己。 希望它的人来得心应手。
任何建议,欢迎,特别是如果你知道这会不会有些特殊情况下工作英寸 请不要挑上凌乱的编码风格。
import os,sys,zipfile
x, fn = sys.argv
enc = 'utf-8'
zipf = zipfile.ZipFile(fn)
for x in zipf.infolist():
fn = x.filename
fne = fn.encode(enc)
if os.sep in fne:
path = fne[:fne.rindex(os.sep)]
if not os.path.exists(path): os.makedirs(path)
if fne.endswith(os.sep): continue
f = open(fne,'wb')
f.write(zipf.open(fn).read())
f.close()
文章来源: How to Extract Zip Files with non-Unicode non-Latin Filenames?