通过POP3协议下载任何一个电子邮件服务提供商账户中的电子邮件。
我们要尝试下载用户电子邮件账户中的第一封邮件。用户名在命令行中输入,密码不能在命令行中指定,而是在运行脚本时输入,而且不能显示出来。
import argparse
import getpass
import poplib
GOOGLE_POP3_SERVER = 'pop.outlook.com'
def download_email(username): mailbox = poplib.POP3_SSL(GOOGLE_POP3_SERVER, '995') mailbox.user(username) password = getpass.getpass(prompt="Enter your outlook password: ") mailbox.pass_(password) num_messages = len(mailbox.list()[1]) print("Total emails: {}".format(num_messages))print("Getting last message")for msg in mailbox.retr(num_messages)[1]: print msg mailbox.quit()
if __name__ == '__main__': parser = argparse.ArgumentParser(description='Email Download Example') parser.add_argument('--username', action="store", dest="username", default=getpass.getuser()) given_args = parser.parse_args() username = given_args.username download_email(username)