首页 > 编程语言 > 详细

python实现收邮件判断模块poplib,email

时间:2019-12-25 13:53:12      阅读:106      评论:0      收藏:0      [点我收藏+]

一、代码

# 输入邮件地址, 口令和POP3服务器地址:
import datetime
import email
import poplib
import email.policy
from email.parser import Parser
flag=False

emailaddress = ******
# 注意使用开通POP,SMTP等的授权码
password = *******
pop3_server = *******

# 连接到POP3服务器:
server = poplib.POP3(pop3_server)
# 可以打开或关闭调试信息:
# server.set_debuglevel(1)
# POP3服务器的欢迎文字:
print(server.getwelcome())

# 身份认证:
server.user(emailaddress)
server.pass_(password)

# stat()返回邮件数量和占用空间:
messagesCount, messagesSize = server.stat()
print(messagesCount:, messagesCount)
print(messagesSize:, messagesSize)
# list()返回所有邮件的编号:
resp, mails, octets = server.list()
print("resp:", resp)
print("mails:", mails)
print("octets:", octets)

length = len(mails)

print(length)

for i in range(length):
    i=length-i
    resp, lines, octets = server.retr(i)
    msg_content=b\r\n.join(lines)
    msg = email.parser.BytesParser(policy=email.policy.default).parsebytes(msg_content)
    print(发件人, msg[from])
    print(收件人, msg[to])
    print(主题, msg[subject])
    print(第一个收件人用户名, msg[to].addresses[0].username)
    print(第一个发件人用户名, msg[from].addresses[0].username)
    theme= msg[subject]
    email_content=[part.get_content() for part in msg.walk() if part.get_content_maintype() == text][0]
    if theme=="启动查库任务分派机器人" and email_content==datetime.datetime.now().strftime("%Y%m%d"):
        flag=True
        break

server.quit()
print(flag)

python实现收邮件判断模块poplib,email

原文:https://www.cnblogs.com/angelyan/p/12096131.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!