微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python 2.7.x zipfile:从networking驱动器缓慢解压缩Windows

我有一个小的脚本,我用一个stackoverflow社区的帮助来解压档案。

我目前面临的一个奇怪的问题是,解包之前的大型zip文件(例如,1GB或更多)在本地下载(?)到计算机上,然后才开始解压缩。

我的脚本是:

#!/usr/bin/env python2.7 # coding=utf-8 import os import sys def unpack_zip(zip_file,to_dir): if sys.platform in ('darwin','linux2'): unpack = os.system('unzip %s -d %s' % (zip_file,to_dir)) if unpack != 0: return False return to_dir elif 'win32' in sys.platform: import zipfile zf = zipfile.ZipFile(zip_file,"r") if zf.testzip() is not None: return False try: os.mkdir(to_dir) except OSError: pass def get_members(zip_archive): parts = [] for name in zip_archive.namelist(): if not name.endswith('/'): parts.append(name.split('/')[:-1]) prefix = os.path.commonprefix(parts) or '' if prefix: prefix = '/'.join(prefix) + '/' offset = len(prefix) for zipinfo in zip_archive.infolist(): name = zipinfo.filename if len(name) > offset: zipinfo.filename = name[offset:] print "Extracting: %s" % name yield zipinfo zf.extractall(to_dir,get_members(zf)) zf.close() return to_dir if __name__ == "__main__": archive = os.path.join(os.getcwd(),"zip_file.zip") unzip_to = os.path.join(os.getcwd(),"test_unzip") unpack_zip(archive,unzip_to)

如果你启动这个脚本,它将等待几分钟,然后才会开始提取。 重要说明:zip文件应位于networking驱动器上。

使用批处理脚本更新xml

无法加载php_curl

使用JScript查找操作系统名称/版本

Windows 10物联网核心 – video打开closures

在窗口中的WebKit for pygtk中embeddedFlash

我的目标是立即启动exctracion进程(类似于Linux / Mac中的unzip工具)。 有没有第三方依赖项 (只有在ZipFile和Python的帮助下)才有可能实现?

谢谢!

以编程方式发送键盘中断

练习14学习python的难办法

如何在C#中使用Windows服务调用Windows应用程序?

如何在Python上生成DOT语言输出

我如何知道在Windows中运行的是什么python脚本?

您在开箱之前正在测试您的压缩文件。 testzip方法的文档字符串很清楚:“读取所有文件并检查CRC。 删除这一行,解包应立即开始。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐