使用Python解壓zip rar檔案

2021-10-21 06:16:14 字數 1993 閱讀 6130

解壓 zip 檔案

基本解壓操作

import zipfile

'''基本格式:zipfile.zipfile(filename[,mode[,compression[,allowzip64]]])

mode:可選 r,w,a 代表不同的開啟檔案的方式;r 唯讀;w 重寫;a 新增

compression:指出這個 zipfile 用什麼壓縮方法,預設是 zip_stored,另一種選擇是 zip_deflated;

allowzip64:bool型變數,當設定為true時可以建立大於 2g 的 zip 檔案,預設值 true;

'''zip_file = zipfile.zipfile(path)

zip_list = zip_file.namelist(

)# 得到壓縮包裡所有檔案

for f in zip_list:

zip_file.extract(f, folder_abs)

# 迴圈解壓檔案到指定目錄

zip_file.close(

)# 關閉檔案,必須有,釋放記憶體

其他方法

'''

'''zipfile.is_zipfile(

'***.zip'

)# 判斷檔案是否是個有效的zipfile

zipfile.namelist(

'***.zip'

)# 列表,儲存zip檔案中所有子檔案的path(相對於zip檔案包而言的)

zipfile.infolist(

'***.zip'

)# 列表,儲存每個zip檔案中子檔案的zipinfo物件

zipfile.printdir(

)# 列印輸出zip檔案的目錄結構,包括每個檔案的path,修改時間和大小

zipfile.

open

(name[

,mode[

,pwd]])

# 獲取乙個子檔案的檔案物件,可以對其進行read,readline,write等操作

zipfile.setpassword(psw),為zip檔案設定預設密碼

zipfile.testzip(

)# 讀取zip中的所有檔案,驗證他們的crc校驗和。返回第乙個損壞檔案的名稱,如果所有檔案都是完整的就返回none

zipfile.write(filename[

,arcname[

,compression_type]])

# 將zip外的檔案filename寫入到名為arcname的子檔案中(當然arcname也是帶有相對zip包的路徑的),開啟方式為w或a

zipfile.extract(member, path=

none

, pwd=

none

)# 解壓乙個zip中的檔案,path為解壓儲存路徑,pwd為密碼

zipfile.extractall(path[

,pwd]

)# 解壓zip中的所有檔案,path為解壓儲存路徑,pwd為密碼

解壓 rar 檔案

python 本身不支援 rar 檔案的解壓,需要先安裝相關依賴才可使用

基本操作

rf = rarfile.rarfile(_rarfile, mode=

'r')

# mode的值只能為'r'

rf_list = rf.namelist(

)# 得到壓縮包裡所有的檔案

print

('rar檔案內容'

, rf_list)

for f in rf_list:

rf.extract(f, folder_abs)

# 迴圈解壓,將檔案解壓到指定路徑

# 一次性解壓所有檔案到指定目錄

# rf.extractall(path) # 不傳path,預設為當前目錄

使用Python解壓zip rar檔案的方法

解壓 zip 檔案 基本解壓操作 import zipfile 基本格式 zipfile.zipfile filename mode compression allowzip64 mode 可選 r,w,a 代表不同的開啟檔案的方式 r 唯讀 w 重寫 a 新增 compression 指出這個 z...

python解壓gz linux怎樣解壓 gz檔案

gzip bzip2 1.使用 gzip 程式來壓縮和解壓縮檔案 gzip 是乙個使用 lempel ziv 編碼 lz77 演算法來壓縮和解壓縮檔案的實用工具。1.1 壓縮檔案 如果要壓縮乙個名為 ostechnix.txt 的檔案,使之成為 gzip 格式的壓縮檔案,那麼只需執行如下命令 gzi...

python 解壓zip檔案

import os import zipfile import time defunzipfile file dir,file name,filelist param file dir 絕對路徑 param file name 解壓檔名 param filelist 返回解壓後的所有檔名 retur...