我正在使用poplib从邮件服务器获取电子邮件。方法retr(n)检索第n个电子邮件消息。它以有趣的形式返回消息,其中所有内容都被分成几行并放在元组中。是什么赋予了! :它将字符“3D”随机插入电子邮件中。此外,它将标记的元素分解为碎片并在断裂处插入“=”。正如其他人看到的那样?
答案 0 :(得分:0)
给予Andrew Medico信用,您看到的字符串位于“Quoted Printable Encoding”(http://en.wikipedia.org/wiki/Quoted-printable)。我收到的电子邮件已经是那种格式了,就我而言。
我可以使用quopri模块(https://docs.python.org/2/library/quopri.html)将其变回“普通”字符串。
import poplib
import quopri
pop_conn = poplib.POP3_SSL( "the_host" )
pop_conn.user("my_user")
pop_conn.pass_("my_password")
email_i_want = 1
encoded_msg = pop_conn.retr( email_i_want )[1]
joined_msg = str( '\n'.join(encoded_msg) )
decoded_msg = quopri.decodestring( joined_msg )
print decoded_msg