2017-06-15 65 views
1

我可以遍歷所有使用for item in account.root.get_folders()if item.__class__ == exchangelib.folders.Messages:的郵件文件夾,但是如何獲得該文件夾中消息使用的空間量?使用python exchangelib,如何獲得郵件文件夾中消息的總大小

我已經從該文件夾在線閱讀是EWS擴展屬性類型,但是如何通過exchangelib獲取? (僅供參考,屬性爲PropertyTag:0x0e08; PropertyType:整數)

回答

0

exchangelib不支持文件夾的擴展屬性。 EWS確實暴露在項size屬性,它可以很容易地加入到exchangelib(隨意打開一個問題:-)),這將允許你做這樣的事情:

sum(some_folder.all().values_list('size', flat=True)) 

更新: 這裏是使用此示例代碼來獲取所有電子郵件(class folder.Message)文件夾的文件夾大小:

for folder in account.root.find_folders(): 
    if folder.__class__ != exchangelib.folders.Messages: 
     continue 
    fsum = sum(folder.all().values_list('size', flat=True)) 
    print('{0:>40s} {1:12,d}'.format(folder.name.encode('utf-8'), fsum)) 
+0

感謝您的回答! –

相關問題