用Python接收电子邮件
我尝试在我的Pi上接收电子邮件,到目前为止,我从gmail的收件箱接收电子邮件,但是我尝试在没有添加所有内容(如消息ID和内容类型)的情况下接收它们。我在寻找纯电子邮件正文文本。到目前为止我已经知道了用Python接收电子邮件,python,email,imaplib,Python,Email,Imaplib,我尝试在我的Pi上接收电子邮件,到目前为止,我从gmail的收件箱接收电子邮件,但是我尝试在没有添加所有内容(如消息ID和内容类型)的情况下接收它们。我在寻找纯电子邮件正文文本。到目前为止我已经知道了 import imaplib mail = imaplib.IMAP4_SSL('imap.gmail.com') mail.login('xxxxxxx', 'xxxxxx') mail.list mail.select("inbox") obj, data = mail
import imaplib
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('xxxxxxx', 'xxxxxx')
mail.list
mail.select("inbox")
obj, data = mail.search(None, 'ALL')
for num in data [0].split():
typ, data = mail.fetch(num, '(RFC822)')
print 'Message %s\n%s\n' % (num, data[0][1])
mail.close()
尝试将
'BODY[1]'
作为字符串传递,而不是'(RFC822)
“BODY[1]”
的作用是指定您只需要电子邮件的文本/普通部分。您可以在本文档中找到,其中详细解释了第6.4.5节或第53页下的FETCH命令
希望这有帮助 所以我犯了一个新手错误,将我的文件命名为email.py,并且没有导入电子邮件
谢谢。我在这方面遇到了很多错误:(文件“email.py”,type中的第9行,data=mail.fetch(num,'BODY[1]”),以及第455行和第1087行中的一系列其他错误,你会遇到什么样的错误?我编辑了我的答案,使之不那么具体(我没有太多使用Python 2.x的经验,主要使用Python 3.4)。但是,字符串规范应该是正确的。我收到一个fetch命令错误:错误['cannotparse command'],但它也不喜欢BODY[1]的答案。链接也很好。谢谢!