0

我试图只返回从 IMAP 服务器获取的消息的消息内容。我觉得我在某个时候可以毫无问题地工作,但我目前正在退回一堆垃圾。这是我目前从服务器返回的内容(包括一堆我不想要的垃圾)。

我的代码如下所示:

server.select('INBOX')
status, ids = server.search(None, 'UnSeen')

latest_id = ids[0]
print 'latest id is', latest_id
status, msg_data = server.fetch(latest_id, '(RFC822)')
raw_data = msg_data[0][1]
print 'raw msg data: ', raw_data

我的目标是从中分离出字符串“Abc”:

原始味精数据:传递至:接收:通过 SMTP id k5csp25808iba;2012 年 5 月 22 日星期二 16:52:37 -0700 (PDT) 返回路径:<3xSa8TyIUAIYBIBIEJFFGFA.BFFACICAAIB.dGgfq0IEl2373.5ysmo.qyyqvo.myw@grandcentral.bounces.google.com> 接收到的 SPF:通过 (google.com: 3xSa8TyIUAIYBIBIEJFFGFA.BFBACICAAIB.dGgfq0IEl2373.5ysmo.qyyqvo.myw@grandcentral.bounces.google.com 的域指定为允许的发件人)client-ip=10.52.24.68;身份验证结果:mr.google.com;spf=pass (google.com: domain of 3xSa8TyIUAIYBIBIEJFFGFA.BFBACICAAIB.dGgfq0IEl2373.5ysmo.qyyqvo.myw@grandcentral.bounces.google.com 指定为允许发件人) smtp.mail=3xSa8TyIUAIYBIBIEJFFGFA.BFBACICAAIB.dGgfq0IEl2373.myw@gfq0IEl2373.q5.yy. grandcentral.bounces.google.com;dkim=pass header.i=3xSa8TyIUAIYBIBIEJFFGFA.BFBACICAAIB.dGgfq0IEl2373.5ysmo.qyyqvo。myw@grandcentral.bounces.google.com 收到:来自 mr.google.com ([10.52.24.68]) 的 SMTP id 为 s4mr15641011vdf.3.1337730757212 (num_hops = 1);2012 年 5 月 22 日星期二 16:52:37 -0700 (PDT) DKIM-签名:v=1;一个=rsa-sha256;c=放松/放松;d=google.com;s=20120113;h=mime-version:references:message-id:date:subject:from:to:content-type; bh=KIYz0SegimNSAAbGsi5167k+DIHSSlVjHp4RK92QeKo=; b=K2//5fPk82ocgnfM6iY4abv/RnxBzlbpnhSosuzkhf8cASjQmyLI0fshrY/xFWY1kh dQHWDqnpdPW5JhF8kODPkX6nDUCTmA81954ROjmqorUHqoqrqNgcJg17M5PPhfMCduhm HaavvpGomS8M29A2Yw81p6+BDSLHDOsVaqXKM1SuuBjslBYZZNEz3YNDsZWHWop64O6V STWCiuXhdAwxqD3Ruuh1ZTbxrmHMimKZfGtF5wahvy8prRQibdBd21eW05fk7PHwalg9 vrsKpGD/xYzpGzEc7nUzIvirUlHFebN3r7JqO463ZKpWgKX/zEdG/uO2OFdxsYdqThow EBDg== MIME-Version: 1.0 Received: by 10.52.24.68 with SMTP id s4mr10817316vdf.3.1337730757202; Tue, 22 May 2012 16:52:37 -0700 (PDT) References: <+18184955650.77d431b4360d0f0785312b85196039cf7bf69257@txt.voice.google.com> Message-ID: <+18184955650.d58cd371f90b1e89b989489c4752e917791953de@txt.voice.google.com> Date: 2012 年 5 月 22 日星期二 23:52:37 +0000 主题:来自发件人的短信:“”<.T6WVgq84bs@txt.voice.google。com> To: Content-Type: text/plain; 字符集=ISO-8859-1;格式=流动;delsp=是

美国广播公司

4

2 回答 2

1

我可以在这里找到传递给 server.fetch() 的字符串的引用(如上所述)。这回答了我的问题,因为我可以通过以下方式隔离我想要的字符串:

status, msg_data = server.fetch(some_id, '(UID BODY[TEXT])')
于 2012-05-23T14:47:33.613 回答
0

email.parser.Parser().parse(),email.parser.Parser().parsestr()

于 2012-05-23T00:08:20.220 回答