簡體   English   中英

使用python保存.msg文件中的附件

[英]Saving attachments from .msg files with python

我試圖為駐留在文件夾中的多個.msg文件下載一些附件(不是專門用於Outlook)。

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))

這里的問題是Python正在使用的庫的問題,如以下所示:

  • pypiwin32 (更具體地說是調用outlook.OpenSharedItem )可在全新安裝的Python2.7中使用
  • 將庫文件夾( site-packages\\win32com )從有效安裝復制到其原始(錯誤)安裝后,OP設法使其運行

為了獲得更清晰的答案,需要進行更多的調查,至少將庫win32com的工作版本復制到有問題的安裝中才能解決此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM