用于在主题行中包含关键字的电子邮件中下载附件的python脚本

时间:2017-05-09 18:44:17

标签: python outlook pop3

import getpass, poplib, email, parse
from poplib  import POP3
user = 'rnandipati@qwerty.com' 
M = poplib.POP3_SSL('outlook.office365.com', '995') 
M.user(user) 
M.pass_('R7!')
numMessages = len(M.list()[1])
print ("You have %d messages." % (numMessages))
print ("Message List:")

M.quit()

我有上面的代码,它给出了我的电子邮件中的邮件数量。我想从包含" hello"的消息中下载附件。在主题行。

我尝试了什么:

 for mList in range(numMessages):
        for msg in M.retr(mList+1)[1]:
            if msg.startswith('Subject'):
                print(msg)
                break

我在网上看了很多例子,真的需要帮助。我也是这种脚本的新手。

谢谢。

1 个答案:

答案 0 :(得分:0)

引用文档:

  

POP3.retr(其中

     

检索整个消息号 ,并设置其看到的标志。结果是形式(响应,['line',...],八位字节)。

所以M.retr(mList+1)[1]是一个行列表。

您正在迭代一个字符串列表,它可以是unicode ou bytes strings。

文档没有说明你得到的字符串类型,但是,如果你使用的是Python 3,我会假设它是unicode字符串。

所以:msg.startswith("Subject:")应该有用。