【发布时间】:2016-06-17 16:41:43
【问题描述】:
python 新手,在克服这个问题时遇到了一些麻烦。
我正在通过 imap 收到来自 gmail 的电子邮件(使用来自 https://yuji.wordpress.com/2011/06/22/python-imaplib-imap-example-with-gmail/ 的起始代码),并且想要在特定的电子邮件(我能够获取)中搜索特定的字符串。像这样的
ids = data[0]
id_list = ids.split()
ids = data[0]
id_list = ids.split()
latest_email_id = id_list[-1]
result, data = mail.fetch(latest_email_id, "(RFC822)")
raw_email = data[0][1]
def search_raw():
if 'gave' in raw_email:
done = 'yes'
else:
done = 'no'
它总是将 done 设置为 no。这是电子邮件的输出(用于电子邮件的正文部分)
Content-Type multipart/related;boundary=1_56D8EAE1_29AD7EA0;type="text/html"
--1_56D8EAE1_29AD7EA0
Content-Type text/html;charset="UTF-8"
Content-Transfer-Encoding base64
PEhUTUw+CiAgICAgICAgPEhFQUQ+CiAgICAgICAgICAgICAgICA8VElUTEU+PC9USVRMRT4KICAg
ICAgICA8L0hFQUQ+CiAgICAgICAgPEJPRFk+CiAgICAgICAgICAgICAgICA8UCBhbGlnbj0ibGVm
dCI+PEZPTlQgZmFjZT0iVmVyZGFuYSIgY29sb3I9IiNjYzAwMDAiIHNpemU9IjIiPlNlbnQgZnJv
bSBteSBtb2JpbGUuCiAgICAgICAgICAgICAgICA8QlI+X19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzwvRk9OVD48L1A+CgogICAgICAg
ICAgICAgICAgPFBSRT4KR2F2ZQoKPC9QUkU+CiAgICAgICAgPC9CT0RZPgo8L0hUTUw+Cg==
--1_56D8EAE1_29AD7EA0--
我知道问题在于 html,但似乎无法弄清楚如何正确解析电子邮件。
谢谢!
【问题讨论】:
-
电子邮件的输出类型是什么?是 JSON 还是字符串或类似的东西?