[英]How to parse / read Outlook PST-Files with Python?
在 Internet 上搜索使用 Python 訪問 Outlook PST 文件的結果很少(並且顯示的大部分內容已經過時)。 有誰知道如何在有或沒有圖書館的情況下閱讀 PST? 不幸的是,如果沒有圖書館的幫助,我在編程方面還不夠好,無法構建 PST 閱讀器。
我的目標是獲取有關內容的以下信息:
我已經嘗試了以下事情:
libpff / pypff :崩潰並且似乎在做某事之前讀取內存中的整個文件(沒有好的解決方案,因為 PST 文件保存在緩慢的網絡存儲上)。
Libratom :與基於 libpff 的問題相同。
Libpst :不清楚這是如何使用的/以二進制形式出現(沒有解釋如何安裝)/見這篇文章的答案/似乎沒有得到維護或更新。
win32(在 Outlook 中安裝 PST) :一個教程展示了如何將 PST 安裝到本地安裝的 Outlook 並使用 MAPI 訪問獲取內容,但這也非常非常慢,而且不是一個好的解決方案,因為需要 Outlook。
Asponse Email Python :雖然文檔不是很好,但一開始很有希望(沒有 Python 示例/不同的命名,例如 PersonalStorage 對象和許多其他對象/在每個文件夾 50 個項目后停止(可能是非免費版本的限制,但不清楚由於出版商網站上缺乏解釋)。
這是來自Asponse 網站的一個例子:
personalStorage = PersonalStorage.from_file(dataDir + "Outlook.pst")
folderInfoCollection = personalStorage.root_folder.get_sub_folders()
for folderInfo in folderInfoCollection:
print("Folder: " + folderInfo.display_name)
print("Total Items: " + str(folderInfo.content_count))
print("Total Unread Items: " + str(folderInfo.content_unread_count))
print("----------------------")
我做了大量的谷歌搜索以找到合適的導入語句來運行。
有沒有人有閱讀 Outlook PST 文件的穩定清晰的方法? 即使是使用 Asponse 的解決方案也會超過 50 個項目的限制。
贖回可以是另一種選擇 - 它是擴展 MAPI 的包裝器,因此您仍然需要安裝 Outlook(對於其 MAPI 系統),但與 Outlook 對象模型不同的是,它可以從服務中使用,不需要啟動 Outlook。 exe 和/或將 PST 文件添加到用戶的默認配置文件。 您可以使用任一RDOSession 。 LogonPstStore
(它創建和刪除配置為使用指定 PST 文件的臨時配置文件)和/或RDOSession .Stores.AddPstStore
以將 PST 文件添加到現有會話(例如由 Outlook 使用或由LogonPstStore
創建)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.