Python - 爬虫:解析 email (一)
先上解析邮件的代码:
# 添加配置信息
from .settings import EMAIL_SETTINGS
email_username = EMAIL_SETTINGS['UserName']
email_password = EMAIL_SETTINGS['Password']
imap_server_host = EMAIL_SETTINGS['Host']
imap_server_port = EMAIL_SETTINGS['Port']
class EmailReceiver:
# 解释一下几个参数:
# mess_sender:发件人
# len_num:要一次性获取该发件人几封邮件的内容,按收件时间倒序计数
# mess_title:邮件主题关键字
# 注:我这里是固定格式的邮件获取, 场景类似于每日发送固定格式的 report
def get_email_list_action(self, mess_sender, len_num, mess_title):
# 邮箱登录
email_server = imaplib.IMAP4_SSL(host=imap_server_host, port=imap_server_port)
try:
email_server.login(email_username, email_password)
print("imap4----username exist, now will check password")
except:
print("imap4----sorry the given email address or password seem do not correct")
exit(1)
# 定义一个列表,用于存放目标邮件内容
messages = []
# 登录成功后,获取邮件
# 定位邮件文件夹“Test”,使用 email_server.select()
email_server.select('"Test"')
# 搜索匹配的邮件,None默认就是ASCII编码
status, data