我无法解码我正在获取的电子邮件。
脚本应该登录到电子邮件账户, 获取未读信件, 然后再保存在数据库中 。 我只需要电子邮件中的实际文本, 但是没有 html 的东西 。
I have found many examples but none of the seems to work. I have tried this and this and some more I have found.
我现在的守则是:
import imaplib, sys, email
import email.parser
myparser = email.parser.Parser()
conn = imaplib.IMAP4_SSL(host= mail.something.com )
retcode, capabilities = conn.login( username , XXXXX )
conn.select( Inbox , readonly = 1) # Select inbox as read-only
retcode, messages = conn.search(None, (UNSEEN) )
if retcode == OK :
for message in messages[0].split( ):
if message == :
continue
ret, data = conn.fetch(message, (RFC822) )
msg = email.message_from_string(data[0][1])
# rootMessage = myparser.parse(data[0][1])
# print Message %s
%s
% (message, rootMessage)
print msg
print ---------------------------------------------------------------
conn.close()
正如你可以看到的,这里没有解码,因为我所尝试的一切都失败了。
我对Python非常新奇,所以如果有人能引导我走上正确的方向,我会非常感激。 黑客会很好,它不是一个任务的关键脚本,但一个通用的解决方案是最好的。
- GG -G -G -G -G -G -G -G
更新:
没有错误, 问题是输出未正确解码 。
实例投入:
This is a test message.
Gísli
产出:
This is a test message.
G=EDsli