python解压到指定文件夹_Python:将文件解压缩到当前工作目录,但不保存zip中的目录结构...
我有一个像这样的zip文件:
myArchive.zip
|
-folder1
|
--folder2
|
---myimage.jpg
当我尝试提取myimage.jpg时:
with zipfile.ZipFile('myArchive.zip', 'r') as zfile:
zfile.extract('folder1/folder2/myimage.jpg')
我将在我当前工作的目录中获得/folder1/folder2/myimage.jpg
但我只想将myimage.jpg提取到当前工作目录,我该怎么办呢?
解决方法:
而不是使用extract或extractall,只需获取数据并将其写入您喜欢的任何文件.这是一个代码示例,可以满足您的需求:
import os, sys, time
import zipfile
ENC = 'cp437'
outdir = unicode(os.path.abspath('.'))
outzip = 'c:/1temp/timbersales.zip'
zf = zipfile.ZipFile(outzip, 'r')
for info in zf.infolist():
fn, dtz = info.filename, info.date_time # , info.file_size
# some zips have dirs listed as files. Catch
# and bypass those.
name = os.path.basename(fn)
if not name:
continue
# get our filename converted from bytes to unicode
fn_uni = fn.decode(ENC, 'replace')
bn_uni = os.path.basename(fn_uni)
# this method is about 15% faster than extractall, and
# preserves modify and access dates
c = zf.open(fn)
outfile = os.path.join(outdir, bn_uni)
# try/except to avoid problems with locked files, etc
# do in chunks to avoid memory problems
chunk = 2**16
try:
with open(outfile, 'wb') as f:
s = c.read(chunk)
f.write(s)
while not len(s) < chunk:
s = c.read(chunk)
f.write(s)
c.close()
# set modify and access dates to that inside the zip
dtout = time.mktime(dtz + (0, 0, -1))
os.utime(outfile, (dtout, dtout))
except IOError:
c.close()
此示例执行zip中的所有文件,但您可以轻松添加几行来检查特定文件.它还将覆盖工作目录中的任何文件,其名称与提取的文件同名.
标签:python,zipfile
来源: https://codeday.me/bug/20190729/1567948.html
python解压到指定文件夹_Python:将文件解压缩到当前工作目录,但不保存zip中的目录结构...相关推荐
- python解压到指定文件夹_在Python中压缩和解压文件
Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 如果你已经使用计算机一段时间,你可能遇到了.zip扩展名的文件.它们是可以保存许多其他文件,文件夹和子文件 ...
- python新建文件夹和文件夹_Python创建文件夹与文件的快捷方法
前言 Python快捷创建文件夹和文件详解 自己做文件时发现 简单的反复操作十分浪费时间,于是想到了 使用Python,这个分享给大家,快捷高效办公. 项目目录 file11 创建文件夹 file2 ...
- python os模块创建文件夹_Python创建文件夹与文件的快捷方法
前言 Python快捷创建文件夹和文件详解 自己做文件时发现 简单的反复操作十分浪费时间,于是想到了 使用Python,这个分享给大家,快捷高效办公. 项目目录 file11 创建文件夹 file2 ...
- 如何用python整理文件夹_python按照文件创建日期整理文件至文件夹
# -*- coding: utf-8 -*- # @Time : 2019-02-15 13:31 # @Author : cxa # @File : sortbydate.py # @Softwa ...
- python 清空文件夹_python读写文件
文件读写 文件读写,是Python代码调用电脑文件的主要功能,能被用于读取和写入文本记录.音频片段.Excel文档.保存邮件以及任何保存在电脑上的东西. ①读取文件 首先,我们在桌面新建一个text文 ...
- python 解压js压缩的图片_Python解压各种压缩文件总结
工作中经常遇到需要解压各种压缩包的接口需求,包括.tar..tar.gz..zip..rar包,为了避免每次都得重新谷歌,试错调错,我将各种解压的python代码整理出来,下次可以直接拿过来用,建议小 ...
- python复制文件到指定文件夹_python 拷贝文件夹下所有的文件到指定文件夹(不包括目录)...
1.随便简单些写了一下.直接粘结代码,只是简单的实现一下,还很多需要完善和扩展的地方,比如忽略掉后缀文件,删除文件 如果排除的某些的话可以用: sourceF.find('.后缀')>0 2.注 ...
- python如何进入文件夹_python之文件的读写和文件目录以及文件夹的操作实现代码...
这篇文章主要介绍了python之文件的读写和文件目录以及文件夹的操作实现代码,需要的朋友可以参考下 为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用 ...
- python判断路径是文件还是文件夹_python 判断文件还是文件夹的简单实例
python 判断文件还是文件夹的简单实例 更新时间:2019年06月10日 09:44:48 作者:ZenGeek 今天小编就为大家分享一篇python 判断文件还是文件夹的简单实例,具有很好的参考 ...
最新文章
- 解题报告(一)E、(BZOJ4589)Hard Nim(博弈论 + FWT)
- 古代password
- 缓存穿透、缓存击穿、缓存雪崩及其解决方案
- ubuntu下网页显示乱码的解决方法
- io流文本文档的快速读取
- SQLServer全文检索无内容
- 关于malloc与字符指针的一些易错点
- IDE 插件新版本发布,总有一个功能帮到你——开发部署提速 8 倍
- jvm延迟偏向_用于偏向硬币翻转模拟的Python程序
- 最短路径问题(信息学奥赛一本通-T1342)
- HMC 命令行登陆设置
- #洛谷oj:P3144 Closing the Farm S
- 深入理解安卓Activity
- PS一些简单的非主流照片效果
- 求助:Appium 如何实现登录手机淘宝时拖动苹果到购物车的验证
- 一缕烟香起静中开鸿蒙意思,一缕青烟暗指什么意思 千古萦回一缕香
- 吴恩达深度学习编程作业 part 2-2
- 浏览器访问不了localhost
- 贾立平是中科学院计算机所博士,在思考中砥砺前行——记我校计算机与软件工程学院青年教师王晓明博士...
- 学习篇(一)- Spring自动装配的方式
热门文章
- python 调用c++返回char*
- ubuntu 安装ImageMagic
- activity重启问题
- C语言作业关于高空坠球,浙大版《C语言程序设计(第3版)》题目集 习题4-8 高空坠球...
- 1载波把32个信道按_「防疫」截至8月27日,单日确诊新增32例,张文宏带来1个坏消息...
- 阿里mysql数据库同步_如何对MySQL数据库中的数据进行实时同步-阿里云开发者社区...
- slope one 推荐算法python 代码_java和python实现一个加权SlopeOne推荐算法
- SpringBoot配置Mybatis在控制台打印sql
- MySQL插入数据时报错Cause: java.sql.SQLException: #HY000的解决方法
- c++人脸特征保存到本地_尚邦小规模人脸识别布控系统