【发布时间】:2017-12-16 22:19:23
【问题描述】:
我有一个问题,我需要识别文件类型(tar、tar.gz 或 zip)我在这个站点找到了一个解决方案: Python - mechanism to identify compressed file type and uncompress
但该解决方案不适用于 tar 文件,因为 tar 文件的起始字符不同...
magic_dict = {
"\x1f\x8b\x08": "gz",
"\x00\x00\x00": "tar",
"\x50\x4b\x03\x04": "zip"
}
max_len = max(len(x) for x in magic_dict)
def file_type(filename):
with open(filename) as f:
file_start = f.read(max_len)
for magic, filetype in magic_dict.items():
if file_start.startswith(magic):
return filetype
return "no match"
如何检测 tar 文件?
【问题讨论】:
-
这是python 2还是python 3?
-
我使用 python 2.7
标签: python compression tar