我需要提取.zip档案中的文件并提取其数据。.zip档案附加在电子邮件消息文件中;我不使用邮件协议来访问邮箱。我能够解析这些邮件消息...
...
from email.parser import Parser
...
for fileName in os.listdir(mailDir):
...
message = Parser().parse(open(mailDir + '/' + fileName, 'r'))
...
for part in message.walk():
if part.get_content_type() == 'application/octet-stream':
当我开始编写这段代码时,我测试的是带有 .csv 附件的电子邮件,并没有问题访问附件并提取数据,但现在我正在处理带有 .zip(包含之前使用的 .csv)的电子邮件,我卡住了。 添加...
import zipfile
...但是似乎我需要将附加的.zip实际保存到文件系统中才能使用zipfile。我不想这样做,认为(希望)我可以简单地使用...
zipfile.ZipFile(the_base64_string_from_message, 'r')
但是那样做失败了。我如何在不在文件系统中创建.zip档案的情况下访问存档?另外,也许我甚至不应该使用电子邮件模块(仅使用它来轻松查找附件)?