Python gzip 省略原始文件名和时间戳

Cma*_*mag 3 python gzip md5sum

伙计们,我正在生成一个 gzip 文件的 md5sum。从技术上讲,每次压缩相同的文件,但产生的 md5sum 是不同的。我如何告诉它使用-n标志来省略原始文件名和时间戳?

f_in = open(tmpFile, 'rb')
f_out = gzip.open(uploadFile, 'wb')
f_out.writelines(f_in)
f_out.close()
f_in.close()
Run Code Online (Sandbox Code Playgroud)

谢谢!

Mar*_*ler 5

GzipFile类允许您明确提供的文件名和标题中的时间戳。

例如:

#!/usr/bin/python
import sys
import gzip

f = open('out.gz', 'wb')
gz = gzip.GzipFile('', 'wb', 9, f, 0.)
gz.write(str.encode('this is a test'))
gz.close()
f.close()
Run Code Online (Sandbox Code Playgroud)

这将生成一个没有文件名且修改时间为零的 gzip 标头,这意味着根据 gzip 的 RFC 1952 标准没有修改时间。

  • 如果您提供空字符串作为文件名,则标头将根本不包含文件名。与标头中的文件名是空字符串相反。细微差别。 (2认同)