2
我試圖下載一些位於文件夾(不是特定於Outlook)中的.msg
文件的附件。使用python保存.msg文件的附件
import win32com.client
import os
path = 'C:\\Users\\my_messages\\'
files = [f for f in os.listdir(path) if '.msg' in f]
print files
for file in files:
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
msg = outlook.OpenSharedItem(os.path.join(path, file))
att=msg.Attachments
for i in att:
i.SaveAsFile(os.path.join(path, i.FileName))
我不斷收到此錯誤,這使我相信,win32com
庫有問題。任何幫助深表感謝。
IOError: [Errno 2] No such file or directory: u'C:\\Python27\\lib\\site-packages\\win32com\\gen_py\\00062FFF-0000-0000-C000-000000000046x0x9x6\\ItemEvents.py.temp'
該線路上時,將生成錯誤:
msg = outlook.OpenSharedItem(os.path.join(path, file))
你有沒有考慮任何現有的解決方案,如https://github.com/mattgwwalker/msg-extractor而不是自己寫?如果沒有別的,你至少可以看看他們是如何做到的。 –
謝謝,我試着用'python ExtractMsg.py example.msg'的例子,但得到錯誤:'無法打開'ExtractMsg'文件:[Errno 2]沒有這樣的文件或目錄。如果我運行'Import ExtractMsg',我沒有問題。也許我只需要挖掘圖書館的代碼。 – user2242044
對於使用'Anaconda'安裝的'Python 3.6.0',它工作得很好。你是如何安裝'win32com'庫的? – Adonis