问题描述
我正在尝试检查过去24小时内从指定的sender.email_address
收到了多少封电子邮件,但是此代码中出现错误
回溯(最近通话最近): 文件“ c:/Users/fmi/Desktop/Python/emailtest.py”,第13行 用于testfolder.all()中的项目
文件“ C:\ Users \ fmi \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ exchangelib \ queryset.py”,第507行,order_by 引发ValueError(“ ordersby()中的%s”%e.args [0]) ValueError:文件夹[Messages(Root(,'[self]','root',8,0,62,None,',' yEHuM6wBAEYSp + OGVQhHl3U8WgJ / ZQAAAwEBAAAAAA ==”, 'AQAAABYAAABGEqfjhlUIR5d1PFoCf2UAAAAcRKyn'), '测试',26821,26654,0, 'IPF.Note', 'AQMkADI2YmY4MjAwAC1mNTBkLTQyMzEtYTM0Yi04NTdmZDRhMDE0MGQALgAAA + xnYBMGPANEmpY / yEHuM6wBAEYSp + OGVQhHl3U8WgJ / ZQAAAw0rAAAA', 'AQAAABYAAABGEqfjhlUIR5d1PFoCf2UAAAAcRKxr')]在ORDER_BY( )
在尝试打印时。如果电子邮件计数为0,我也希望它给我警报。
from exchangelib import Credentials,Account,UTC_NOW
from collections import defaultdict
from datetime import timedelta
credentials = Credentials('fmi@.dk','something')
a = Account('fmi@.dk',credentials=credentials,autodiscover=True)
counts = defaultdict(int)
testfolder = a.inbox.parent / 'Test'
since = UTC_NOW() - timedelta(hours=24)
for item in testfolder.all()\
.only('sender','subject')\
.filter(datetime_received__gt=since)\
.order_by('-datetime_received'):
if item.sender.email_address == 'info@something.dk':
counts[item.sender.email_address,item.subject] += 1
print(counts)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)