我正在编写一个 mht 脚本来解析一个 mht 文件并从父级中提取部分消息并将它们写入一个单独的 mht 文件
我编写了以下函数,它在 file_location 打开一个 mht 文件并搜索特定的 content_id 并将其写入一个新的 mht 文件
def extract_content(self, file_location, content_id,extension):
first_part = file_location.split(extension)[0]
#checking if file exists
new_file = first_part + "-" + content_id.split('.')[0] + extension
while os.path.exists(new_file):
os.remove(new_file)
with open(file_location, 'rb') as mime_file, open(new_file, 'w') as output:
***#Extracting the message from the mht file***
message = message_from_file(mime_file)
t = mimetypes.guess_type(file_location)[0]
#Walking through the message
for i, part in enumerate(message.walk()):
#Check the content_id if the one we are looking for
if part['Content-ID'] == '<' + content_id + '>':
***witing the contents***
output.write(part.as_string(unixfrom=False))
显然,在application/pdf 和 application/octet-stream的情况下,我无法在 IE 中打开输出部分。
如何将这些 Content-Type(如 application/pdf 和 application/octet-stream)写入 mht 文件,以便能够在 IE 中查看图像或 pdf?
谢谢