900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 使用python解压缩rar zip文件

使用python解压缩rar zip文件

时间:2024-05-07 23:42:59

相关推荐

使用python解压缩rar zip文件

使用python解压缩rar、zip文件

1 解压缩rar文件

步骤

(1) 导入 unrar 模块:pip install unrar

(2) 下载 unrar library 并按照默认安装路径安装 下载链接

(3) 编辑环境变量:

用户变量:变量名:x64 变量值:C:\Program Files (x86)\UnrarDLL\x64 (默认路径)

系统变量:变量名:UNRAR_LIB_PATH 变量值:C:\Program Files (x86)\UnrarDLL\x64\UnRAR64.dll (默认路径) (32位系统下的变量值为C:\Program Files (x86)\UnrarDLL\UnRAR.dll)

(4) 安装winrar(360软件库有)

将 winrar 的目录下的 unrar.exe 复制到 Python 路径的 Scripts 文件夹下

(5) 重启pycharm

代码

import rarfilepathRar = '' # rar文件路径outputDir = '' # 指定输出的文件夹路径z = rarfile.RarFile(pathRar)z.extractall(outputDir)z.close()os.remove(pathRar)

2 解压缩zip文件

解码

使用zipfile的extract()或extractall()方法直接解压时,文件名可能会出现乱码。

代码

import zipfile# 出现乱码时解码def recode(raw: str) -> str:try:return raw.encode('cp437').decode('gbk')except:return raw.encode('utf-8').decode('utf-8')zipFile = zipfile.ZipFile(pathZip)# 压缩包路径zipFileList = zipFile.namelist() # 获取压缩包里所有文件for f in zipFileList:zipFile.extract(f, obj) # 循环解压文件到指定目录name1 = os.path.join(obj, f) # 乱码文件名name2 = os.path.join(obj, recode(f)) # 解码后文件名os.rename(name1, name2) # 文件重命名zipFile.close() # 关闭文件释放内存os.remove(pathZip)

参考文档:

/m0_46172703/article/details/122963919?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166726793316782417053165%2522%252C%2522scm%2522%253A%25220713.130102334…%2522%257D&request_id=166726793316782417053165&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_click~default-2-122963919-null-null.142v62control,201v3control_2,213v1t3_esquery_v2&utm_term=python%E8%A7%A3%E5%8E%8Brar%E6%96%87%E4%BB%B6&spm=1018.2226.3001.4187

/m0_68103885/article/details/124609932

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。