python3.6读取tar.bz2文件

it2024-08-06  43

0.环境

ubuntu16.04 python3.6 tarfile

1.问题

tarfile.ReadError: not a bzip2 file

File "/usr/lib/python3.6/tarfile.py", line 1678, in bz2open raise ReadError("not a bzip2 file") tarfile.ReadError: not a bzip2 file

2.解决

改: tar = tarfile.open(tar_path, "r:bz2") 为: tar = tarfile.open(tar_path, "r")

3.完整代码

import tarfile def extract(tar_path, target_path): """ Args: tar_path: tar file local path(Both relative path and absolute path can be used) target_path: the path you want to save your file """ try: tar = tarfile.open(tar_path, "r") tar.debug = 1 file_names = tar.getnames() for file_name in file_names: if not file_name.endswith(".jpg"): continue # print(file_name) tar.extract(file_name, target_path) tar.close() except Exception as e: print(e) raise

 

 

最新回复(0)