我能够使用python IMAP登录Gmail帐户
imap = imaplib.IMAP4_SSL('imap.gmail.com')
imap.login(myDict["emailUsername"], myDict["emailPassword"])
imap.select(mailbox='inbox', readonly=False)
resp, items = imap.search(None, 'All')
email_ids = items[0].split()
latest_email_id = email_ids[-1]
resp, data = imap.fetch(latest_email_id, "(UID)")
print ("resp= ", resp, " data=", data)
#msg_uid = parse_uid(data[0])
match = pattern_uid.match(data[0].decode("utf-8"))
#print ("match= ", match)
msg_uid = match.group('uid')
我需要确保我收到的最后一封电子邮件的UID包含某个字符串(XYZ)。我不是在寻找标题主题,而是在寻找电子邮件的内容。我该怎么办?
答案 0 :(得分:1)
您可以通过以下几种方式:
获取消息并遍历文本正文部分以查找您的字符串-例如Finding links in an emails body with Python
通过在UID SEARCH命令中将'latest_email_id'和您的搜索条件提供回服务器来使服务器进行搜索。对于Gmail,您甚至可以使用X-GM-RAW属性通过GMail网络界面使用相同的语法支持。有关详细信息,请参见https://developers.google.com/gmail/imap/imap-extensions。