2017-08-29 24 views
0

現在、私は私はexchangelibですべてのフォルダから最新のメールを受け取ることができますか?

latest_mails = account.inbox.filter(datetime_received__gt=emails_since) 

を使用ししかし、サブフォルダ内にある、受信した電子メールを見逃しているようです。

for f in account.root.get_folders(): 
    print(f) 

ですべてのフォルダを印刷

Calendar (Kalender) 
Contacts (Kontakte) 
Contacts (Vorgeschlagene Kontakte) 
Folder (AllItems) 
Folder (Calendar Logging) 
Folder (Common Views) 
Folder (Conversation Action Settings) 
Folder (Deferred Action) 
Folder (Deletions) 
Folder (Erinnerungen) 
Folder (ExchangeSyncData) 
Folder (Finder) 
Folder (Infected Items) 
Folder (Journal) 
Folder (Location) 
Folder (MailboxAssociations) 
Folder (Notizen) 
Folder (Recipient Cache) 
Folder (Recoverable Items) 
Folder (Schedule) 
Folder (Shortcuts) 
Folder (Spooler Queue) 
Folder (System) 
Folder (Versions) 
Folder (Views) 
Folder (WorkingSet) 
Messages (Postausgang) 
Messages (Posteingang) 
Messages (foo) 
Messages (bar) 
Messages (something is) 
Messages (here) 
Messages (Gelöschte Elemente) 
Messages (Gesendete Elemente) 
Messages (Junk-E-Mail) 
Messages (Meine Kontakte) 
Messages (MyContactsExtended) 
Messages (Nachverfolgte E-Mail-Verarbeitung) 
Messages (Zugang) 
Tasks (Aufgaben) 
Tasks (Aufgabensuche) 

のようなものを与えるので、私は唯一の「メッセージ」フォルダを見てみたいが、それらのすべてで。これは可能ですか(account.root.get_folders()を使用せず)、結果をループする(約5分かかります)

+0

もご覧ください:https://github.com/ecederstrand/exchangelib/issues/30#issuecomment-257429078 - しかし、私は 'Messages'の由来を知りません。 –

+0

'from exchangelib.folders import Messages'それは –

答えて

0

.filter()はサブフォルダではなく、それを呼び出すフォルダでのみ機能します。私は、EWSが一度に1つのフォルダを検索することしかサポートしていないことは確かです。あなたは少し物事をスピードアップするために、このような何かを行うことができるはず

from exchangelib.folders import Messages 

for f in account.folders[Message]: 
    for i in f.filter(datetime_received__gt=emails_since): 
     print(i) 

しかしFolderタイプのフォルダもMessage項目を含めることができますので、あなたのニーズに応じて、あなたはまた、それらを訪問する必要があります。

f.supported_item_modelsは、特定のフォルダに含まれるアイテムの種類を教えてくれます。

+0

のようです。実際、EWS *は1回のリクエストで複数のフォルダを検索できます。 exchangelibはまだ通常のフィルタ方法ではサポートしていません:https://github.com/ecederstrand/exchangelib/issues/224 –

関連する問題