-
python压缩包怎么打开-python解压缩rar,zip文件的正确姿势
2020-11-11 15:17:11dirs,fs inos.walk(basePath):for f infs: filename=os.path.join(root,f) type=os.path.splitext(filename)[-1][1:]if type=="rar": fileget=rarfile.RarFile(filename) with filegetasrf:ifrf.needs_password():#...import rarfile,zipfile,os,shutilfrompathlib import Path
basePath="d:/basePath"outPath="d:/outPath"passlist=[]
with open("pass.txt","r") asf:for line inf.readlines():
passlist.append(line.rstrip())for root,dirs,fs inos.walk(basePath):for f infs:
filename=os.path.join(root,f)
type=os.path.splitext(filename)[-1][1:]if type=="rar":
fileget=rarfile.RarFile(filename)
with filegetasrf:ifrf.needs_password():#判断是否需要密码for pwds inpasslist:try:
fileget.extractall(outPath,pwd=pwds.encode())#不要直接用pwds,要编码一下
print(filename+":"+pwds)
except:
passelse:
fileget.extractall(outPath)
elif type=="zip":
with zipfile.ZipFile(filename,"r") aszf:for info inzf.infolist():try:
newname=info.filename.encode("cp437").decode("gbk");
except:try:
newname=info.filename.encode("cp437").decode("utf-8");
except:
newname=info.filename
outname=newname.split("/")
l=len(outname)if outname[l-1]!="":#如果是文件if info.flag_bits & 0x01:#如果文件有密码for pwd inpasslist:try:
body=zf.read(info,pwd=pwd.encode())
print("pass:"+pwd)
with open(outPath+"/"+outname[l-1],"wb") asoutfile:
outfile.write(body)
except:
passelse:
with open(outPath+"/"+outname[l-1],"wb") asoutfile:#要把中文的zip解压出中文,就不要用extract了,在新位置创建中文名文件,然后把读取出来的数据写进去就可以。
outfile.write(zf.read(info))else:#如果是文件,直接复制到新位置
shutil.copy(filename,outPath+"\"+f)
-
python压缩包怎么打开-python解压压缩包的几种方法
2020-11-11 14:51:42这里讨论使用Python解压例如以下五种压缩文件:.gz .tar .tgz .zip .rar简单介绍gz: 即gzip。通常仅仅能压缩一个文件。与tar结合起来就能够实现先打包,再压缩。tar: linux系统下的打包工具。仅仅打包。不压缩tgz...这里讨论使用Python解压例如以下五种压缩文件:
.gz .tar .tgz .zip .rar
简单介绍
gz: 即gzip。通常仅仅能压缩一个文件。与tar结合起来就能够实现先打包,再压缩。
tar: linux系统下的打包工具。仅仅打包。不压缩
tgz:即tar.gz。先用tar打包,然后再用gz压缩得到的文件
zip: 不同于gzip。尽管使用相似的算法,能够打包压缩多个文件。只是分别压缩文件。压缩率低于tar。
rar:打包压缩文件。最初用于DOS,基于window操作系统。
压缩率比zip高,但速度慢。随机訪问的速度也慢。
关于zip于rar之间的各种比較。可见:
gz
因为gz一般仅仅压缩一个文件,全部常与其它打包工具一起工作。比方能够先用tar打包为XXX.tar,然后在压缩为XXX.tar.gz
解压gz,事实上就是读出当中的单一文件,Python方法例如以下:
import gzip
import os
def un_gz(file_name):
"""ungz zip file"""
f_name = file_name.replace(".gz", "")
#获取文件的名称,去掉
g_file = gzip.GzipFile(file_name)
#创建gzip对象
open(f_name, "w+").write(g_file.read())
#gzip对象用read()打开后,写入open()建立的文件里。
g_file.close()
#关闭gzip对象
tar
XXX.tar.gz解压后得到XXX.tar,还要进一步解压出来。
*注:tgz与tar.gz是同样的格式,老版本号DOS扩展名最多三个字符,故用tgz表示。
因为这里有多个文件,我们先读取全部文件名称。然后解压。例如以下:
import tarfile
def un_tar(file_name):
untar zip file"""
tar = tarfile.open(file_name)
names = tar.getnames()
if os.path.isdir(file_name + "_files"):
pass
else:
os.mkdir(file_name + "_files")
#因为解压后是很多文件,预先建立同名目录
for name in names:
tar.extract(name, file_name + "_files/")
tar.close()
*注:tgz文件与tar文件同样的解压方法。
zip
与tar类似,先读取多个文件名称,然后解压。例如以下:import zipfile
def un_zip(file_name):
"""unzip zip file"""
zip_file = zipfile.ZipFile(file_name)
if os.path.isdir(file_name + "_files"):
pass
else:
os.mkdir(file_name + "_files")
for names in zip_file.namelist():
zip_file.extract(names,file_name + "_files/")
zip_file.close()
rar
由于rar通常为window下使用,须要额外的Python包rarfile。
解压到Python安装文件夹的/Scripts/文件夹下,在当前窗体打开命令行,
输入Python setup.py install
安装完毕。
import rarfile
import os
def un_rar(file_name):
"""unrar zip file"""
rar = rarfile.RarFile(file_name)
if os.path.isdir(file_name + "_files"):
pass
else:
os.mkdir(file_name + "_files")
os.chdir(file_name + "_files"):
rar.extractall()
rar.close()
tar打包
在写打包代码的过程中,使用tar.add()添加文件时,会把文件本身的路径也加进去,加上arcname就能依据自己的命名规则将文件添加tar包
打包代码:
#!/usr/bin/env /usr/local/bin/python
# encoding: utf-8
import tarfile
import os
import time
start = time.time()
tar=tarfile.open("/path/to/your.tar,"w")
for root,dir,files in os.walk("/path/to/dir/"):
for file in files:
fullpath=os.path.join(root,file)
tar.add(fullpath,arcname=file)
tar.close()
print time.time()-start
在打包的过程中能够设置压缩规则,如想要以gz压缩的格式打包
tar=tarfile.open("/path/to/your.tar.gz","w:gz")
其它格式例如以下表:
tarfile.open的mode有非常多种:
mode action
"r" or "r:*"
Open for reading with transparent compression (recommended).
"r:"
Open for reading exclusively without compression.
"r:gz"
Open for reading with gzip compression.
"r:bz2"
Open for reading with bzip2 compression.
"a" or "a:"
Open for appending with no compression. The file is created if it does not exist.
"w" or "w:"
Open for uncompressed writing.
"w:gz"
Open for gzip compressed writing.
"w:bz2"
Open for bzip2 compressed writing.
tar解包
tar解包也能够依据不同压缩格式来解压。
#!/usr/bin/env /usr/local/bin/python
# encoding: utf-8
import tarfile
import time
start = time.time()
t = tarfile.open("/path/to/your.tar", "r:")
t.extractall(path = "/path/to/extractdir/")
t.close()
print time.time()-start
上面的代码是解压全部的,也能够挨个起做不同的处理,但要假设tar包内文件过多,小心内存哦~
tar = tarfile.open(filename, "r:gz")
for tar_info in tar:
file = tar.extractfile(tar_info)
do_something_with(file)
-
python压缩包怎么打开-详解python解压压缩包的五种方法
2020-11-11 14:43:03这里讨论使用Python解压例如以下五种压缩文件:.gz .tar .tgz .zip .rar简单介绍gz: 即gzip。通常仅仅能压缩一个文件。与tar结合起来就能够实现先打包,再压缩。tar: linux系统下的打包工具。仅仅打包。不压缩tgz...这里讨论使用Python解压例如以下五种压缩文件:
.gz .tar .tgz .zip .rar
简单介绍
gz: 即gzip。通常仅仅能压缩一个文件。与tar结合起来就能够实现先打包,再压缩。
tar: linux系统下的打包工具。仅仅打包。不压缩
tgz:即tar.gz。先用tar打包,然后再用gz压缩得到的文件
zip: 不同于gzip。尽管使用相似的算法,能够打包压缩多个文件。只是分别压缩文件。压缩率低于tar。
rar:打包压缩文件。最初用于DOS,基于window操作系统。
压缩率比zip高,但速度慢。随机�L问的速度也慢。
关于zip于rar之间的各种比�^。可见:
gz
因为gz一般仅仅压缩一个文件,全部常与其它打包工具一起工作。比方能够先用tar打包为XXX.tar,然后在压缩为XXX.tar.gz
解压gz,事实上就是读出当中的单一文件,Python方法例如以下:
import gzip
import os
def un_gz(file_name):
"""ungz zip file"""
f_name = file_name.replace(".gz", "")
#获取文件的名称,去掉
g_file = gzip.GzipFile(file_name)
#创建gzip对象
open(f_name, "w+").write(g_file.read())
#gzip对象用read()打开后,写入open()建立的文件里。
g_file.close()
#关闭gzip对象
tar
XXX.tar.gz解压后得到XXX.tar,还要进一步解压出来。
*注:tgz与tar.gz是同样的格式,老版本号DOS扩展名最多三个字符,故用tgz表示。
因为这里有多个文件,我们先读取全部文件名称。然后解压。例如以下:
import tarfile
def un_tar(file_name):
untar zip file"""
tar = tarfile.open(file_name)
names = tar.getnames()
if os.path.isdir(file_name + "_files"):
pass
else:
os.mkdir(file_name + "_files")
#因为解压后是很多文件,预先建立同名目录
for name in names:
tar.extract(name, file_name + "_files/")
tar.close()
*注:tgz文件与tar文件同样的解压方法。
zip
与tar类似,先读取多个文件名称,然后解压。例如以下:
import zipfile
def un_zip(file_name):
"""unzip zip file"""
zip_file = zipfile.ZipFile(file_name)
if os.path.isdir(file_name + "_files"):
pass
else:
os.mkdir(file_name + "_files")
for names in zip_file.namelist():
zip_file.extract(names,file_name + "_files/")
zip_file.close()
rar
由于rar通常为window下使用,须要额外的Python包rarfile。
解压到Python安装文件夹的/Scripts/文件夹下,在当前窗体打开命令行,
输入Python setup.py install
安装完毕。
import rarfile
import os
def un_rar(file_name):
"""unrar zip file"""
rar = rarfile.RarFile(file_name)
if os.path.isdir(file_name + "_files"):
pass
else:
os.mkdir(file_name + "_files")
os.chdir(file_name + "_files"):
rar.extractall()
rar.close()
tar打包
在写打包代码的过程中,使用tar.add()添加文件时,会把文件本身的路径也加进去,加上arcname就能依据自己的命名规则将文件添加tar包
打包代码:
#!/usr/bin/env /usr/local/bin/python
# encoding: utf-8
import tarfile
import os
import time
start = time.time()
tar=tarfile.open("/path/to/your.tar,"w")
for root,dir,files in os.walk("/path/to/dir/"):
for file in files:
fullpath=os.path.join(root,file)
tar.add(fullpath,arcname=file)
tar.close()
print time.time()-start
在打包的过程中能够设置压缩规则,如想要以gz压缩的格式打包
tar=tarfile.open("/path/to/your.tar.gz","w:gz")
其它格式例如以下表:
tarfile.open的mode有非常多种:
mode action
tar解包
tar解包也能够依据不同压缩格式来解压。
#!/usr/bin/env /usr/local/bin/python
# encoding: utf-8
import tarfile
import time
start = time.time()
t = tarfile.open("/path/to/your.tar", "r:")
t.extractall(path = "/path/to/extractdir/")
t.close()
print time.time()-start
上面的代码是解压全部的,也能够挨个起做不同的处理,但要假设tar包内文件过多,小心内存哦~
tar = tarfile.open(filename, "r:gz")
for tar_info in tar:
file = tar.extractfile(tar_info)
do_something_with(file)
ps:python实现rar文件解压
1.pip3 install rarfile 安装rarfile库
(注意是解压,压缩这个方法不支持)
#coding=utf-8
import rarfile
path = "E:\New\New.rar"
path2 = "E:\New"
rf = rarfile.RarFile(path) #待解压文件
rf.extractall(path2) #解压指定文件路径
总结
以上所述是小编给大家介绍的python解压压缩包的五种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
-
电脑rar文件打开方式_第23期分享:RAR压缩包如何添加密码,如何打开?
2020-10-20 04:29:37有些电脑没有安装rar解压软件的小伙伴,碰到这种rar、zip等压缩格式的就不知道怎么打开了;有些小伙伴需要对自己的作品进行打包加密,不知道如何操作?为解决这两个问题,现免费提供RAR解压缩安装包,并提供RAR安装...有些电脑没有安装rar解压软件的小伙伴,碰到这种rar、zip等压缩格式的就不知道怎么打开了;有些小伙伴需要对自己的作品进行打包加密,不知道如何操作?为解决这两个问题,现免费提供RAR解压缩安装包,并提供RAR安装教程、文件打包加密教程、解压教程。
【下载地址】http://www.cityhbs.com/thread-823-1-1.html
详细教程如下
一、第1部分教程:RAR如何安装?
1.选择我们下载的安装包,根据系统位数选择对应的安装版本,这里我们选择64位,右键以管理员的方式运行。
2.点击【install】安装。
3.点击确定。
4.点击完成。
二、第2部分教程:文件如何打包加密?
1.选择我们需要打包的文件,选择右键【添加到压缩文件】。
2.设置【压缩文件名】,点击【设置密码】。
3.输入压缩文件的密码,勾选【加密文件名】,点击确定。
4.点击确定。
三、第3部分教程:如何解压文件?
1.在RAR压缩包上右键,选择【解压到 ***E】。
2.如果有密码的RAR压缩包,会提示你输入密码,点击确定完成解压。
本期分享到此结束,您学会了吗?
-
电脑中的RAR文件怎么样打开
2014-10-14 10:33:11今天我们来给大家讲解一下如何RAR文件,刚接触电脑的朋友,可能对这个文件感到陌生,不会知道该如何打开这个文件,或许各本就不认识这个文件,针对这些问题小编就来给大家具体讲解一下,相信大家很快就会认识这个... -
4怎么打开项目_win10系统jar文件怎么打开
2021-01-10 07:24:54jar文件怎么打开,以为是压缩包,直接就解压了,但是并没有什么用。jar文件是什么?其实是Java项目下生成的项目文件,有用户想了解打开jar文件的方法,那么接下来就让小编教你win10系统jar文件怎么打开吧。JAR文件是... -
java怎么安装_win10系统jar文件怎么打开
2020-11-14 01:05:41jar文件怎么打开,以为是压缩包,直接就解压了,但是并没有什么用。jar文件是什么?其实是Java项目下生成的项目文件,有用户想了解打开jar文件的方法,那么接下来就让小编教你win10系统jar文件怎么打开吧。JAR文件是... -
手把手交给大家怎样破解压缩包密码的方法
2020-05-11 21:37:24在网上下载了一些rar压缩文件,但是下载时没注意看有没有密码了,结果在解压时发现需要密码才可以解决,但是现在又找不到下载地址了,那么要怎么破解WinRAR加密文件呢,我给大家推荐一款破解压缩文件密码神器软件,... -
java怎么打开压缩文件_Java操作zip-压缩和解压文件
2021-02-25 18:22:16一、说明rar格式的压缩包收费,java支持zip格式的压缩和解压二、工具类import java.io.*;import java.util.Enumeration;import java.util.List;import java.util.zip.ZipEntry;import java.util.zip.ZipFile;import ... -
解决mac创建的压缩包,window下解压乱码的问题
2012-12-01 14:45:48mac创建的压缩包,发到window后打开文件名是乱码,文件名是中文,解决方法如下: mac下解压缩rar文件工具-rarosx(免费的)使用介绍 说到rarosx,刚开始用mac的时候下载过,下载后不知道这个... -
关于java调用winRAR命令行生成压缩包不能正常退出的问题
2010-05-21 11:51:51在cmd下执行,却任何问题没有,不用几秒就压缩完毕,打开任务管理器,Rar.exe也正常退出,在D盘根目录下,也正确的生成了“download.rar”压缩包。 现在的问题就是,在cmd下执行rar命令行,和在java里执行相同的... -
rar文件头损坏_在 Mac 上打包的压缩文件,Win 解压后乱码怎么破?
2020-12-07 22:50:50想必不少小伙伴遇到过压缩包无法正常打开的问题——双击解压,映入眼帘的并非宝贵资源,而是一堆看不懂的乱码,这就很扎心了……荔枝君电脑里没有异常压缩包 (原因在下文),所以就晒一晒百度知道网友的困惑了:其实... -
winrar把解压开后的文件继续压缩,结果两个压缩包不一般大
2009-05-14 11:10:18我一个系统里自动生成一个压缩包文件。是.rar格式的。...但是用纪事本或者EditPlus打开这两个压缩包文件可以发现:系统生成那个上边多了一些东西。但是这些东西在哪设置了。解压的时候怎么看不到。实在... -
用RAR来给我们的重要文件加密
2019-09-21 17:04:36怎么样用RAR来给我们的重要文件加密,方法非常的简单,我给大家介绍一下: 第一步:选中欲加密文件 先把硬盘中的重要文件拷贝到一个临时文件夹下,选中它们后,选择WinRAR→“添加到压缩包”命令,打开“压缩包名称... -
鑫宇秒赞 v1.4.3.rar
2019-07-08 01:16:17-关于添加QQ提示'创建连接失败',我反正试过好几个空间都没出现这种情况,不知道你是怎么搞的。 -如果你之前安装过1.2版本,升级到1.4必须要清空数据库重新安装!因为数据表结构不通用 -要想正常发邮件 空间必须... -
dex2jar.rar
2010-11-13 00:51:27参考一下别人怎么实现的吧! 可是Android用的Dalvik压根不是标准的Java VM的Jar,而是DEX格式的,怎么办? 附件是dxe2jar和JD,两个工具都是open source的,我已经全部放在一个压缩包了。 别着急,有办法: 1. ... -
excel取消密码_怎么取消excel的密码保护
2020-11-18 11:14:11第三步,打开压缩包,依次打开文件夹xl->wordsheets->sheet1,并将sheet1.xml文件拖出到桌面;第四步,用记事本打开sheet1.xml文件,搜索“SheetProtect”,把这段文字删掉,保存;第五步,将修改后的sheet1.... -
android4.2_api_level17.part01.rar
2014-10-14 16:37:17离线文档,完整。文档必须离线浏览才行,不然它会自动连接服务器。下载火狐浏览器(其它浏览器不支持这功能):-->...csdn只支持上传60M以下的附件,所以拆开,总共3个压缩包,其它两个不用我说怎么找把,what?听不见 -
android4.2_api_level17.part02.rar
2014-10-14 16:40:15离线文档,完整,还包括官方教程。文档必须离线浏览才行,不然它会自动连接服务器。下载火狐浏览器(其它浏览器不支持...csdn只支持上传60M以下的附件,所以拆开,总共3个压缩包,其它两个不用我说怎么找把,what?听不见 -
多奥淘宝客程序 API F8.0 免费版.rar
2019-07-07 14:51:481、将压缩包里“upload”文件夹内的所有文件上传到空间(不包括upload文件夹) “include” 目录里几个PHP文件需要使用二进制上传。 2、浏览器打开:http://您的网址/install/install.php 进行安装。 4、安装... -
多多淘宝客7.4最新版.rar
2012-09-11 11:09:44先看自己空间支付伪静态不,如果不支持后台关闭伪静态功能,如果支持伪静态功能,还没设置的话,把压缩包里的伪静态规则发给空间商或自己设置,这个是主机问题 主机不支持伪静态或者伪静态规则没有加载却后台开启了... -
我的世界java版forge怎么用_我的世界forge怎么安装
2021-03-17 16:47:57我的世界如果想要安装mod首先面临的问题就是必备的API组件,Forge是...如果你的forge是一个rar或zip等压缩包,先解压,然后到MC文件夹找到minecraft.jar(位于.minecraft\bin文件夹里),用压缩工具打开(是打开不是解... -
新版Android开发教程.rar
2010-12-14 15:49:11----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ... -
教你怎么在QQ空间的日志上传软件
2011-05-14 10:20:00一:筹备一张图片,好比 yuer.jpg。...生成 yuer.rar压缩包 三:打开呼吁行提醒符:点击“起头→运行”,输入“cmd”。 四:我们假设中两个文件都存放在“ D:”下。输入呼吁:copy /b D:yuer.jpg + D:yuer.rar ... -
怎么把一个文件隐藏在一个jpg文件里?
2016-01-19 09:56:58准备:1.一张图片 2.一个做试验的txt文件 3.WinRAR 步骤: 1:准备一张图片,比如 123.jpg。...生成 test.rar 压缩包 3:打开命令行提示符:点击“开始→运行”,输入“cmd”。 4:我们假设中两... -
ftp上传文件易损坏_FTP上传教程、如何使用ftp软件、怎么上传文件到网站空间里面...
2021-01-18 18:50:221、 打开我发送的百度网盘下载FTP软件 2、 把网站程序压缩打包放到桌面(一般的win操作系统的空间需要rar压缩包,liunx系统的空间需要zip格式的压缩包) 3、 打开http://www.11977.net/登陆会员名下—业务管理——虚拟... -
tar.gz文件怎么解压_你还在用手机自带的解压软件吗?不是我吹不装这两款亏大了~...
2020-12-10 09:24:57点击“蓝字”关注我们我们平时下载一些文件,如果文件是压缩包形式的话是不能直接打开的,需要使用到压缩软件进行解压才能打开。手机自带的压缩软件一般都不怎么好用,有时候还会解压失败,山伏今天给大家分享两款... -
没有光驱怎么装系统
2013-06-05 08:26:19第2种是RAR压缩包,这些的安装程序,你直接解压缩到一个目录就可以了,里面有个Setup.exe文件,如果语言正确的话,可以直接进行升级安装,不过很多时候都是语言不正确的了,没关系,我们还能在DOS下进行安装,下面... -
winrar6.0汉化中文版 v6.00烈火版
2020-10-27 14:43:25从网上下载了一个压缩包,不知道怎么打开?电脑里面有上千个文件,一个个发送给好友太麻烦?建议使用winrar6.0,这是一款非常经典和知名的解压缩软件,可以帮助用户轻松把各种压缩包里面的文件解压出来,再也不用... -
win10下deepfakes环境配置(二)- Openfaceswap 使用
2019-05-04 15:30:00上一篇已经配置好了Openfaceswap的环境,这一篇我们来看看怎么使用Openfaceswap。这个压缩包里面包含了一些基本素材,在workspace文件夹里,并且已经将...解压下载的Openfaceswap.rar,打开解压目录,打开OpenFa...