python自动收发邮件

303 阅读1分钟
import yagmail
#yagmail.register('发送方邮箱地址', '授权码')#这行运行第一次后即可注释掉

yag = yagmail.SMTP(user = '发送方地址', host = 'smtp服务器地址')
contents = ['Hello World!',
        '我发了一封邮件']#contents是邮件正文内容
yag.send('接收方邮箱地址', '邮件标题', contents)

正文也可带有附件

import yagmail

yag = yagmail.SMTP(user = '发送方地址', host = 'smtp服务器地址')
contents = ['Hello World!',
       '我发了一封邮件',
       '附件所在的路径']
yag.send('接收方邮箱地址', '邮件标题', contents)

将附件内嵌在正文

contents = ['Hello World!',
        '我发了一封邮件',
        yagmail.inline('附件所在路径')]

群发用字符串列表即可

s = ['接收方邮箱地址1', '接收方邮箱地址2', '接收方邮箱地址3']
yag.send(s, '邮件标题', contents)

读取自己的上面设置的密码

import keyring

password = keyring.get_password('yagmail', '自己的邮箱地址')

读取邮件

import keyring
from imbox import Imbox
password = keyring.get_password('yagmail', '自己的邮箱地址')
with Imbox('imap地址', '自己的邮箱地址', password, ssl = True) as imbox:
    all_inbox_messages = imbox.messages()
    for uid, message in all_inbox_messages:
        print(message.subject)
        print(message.body['plain'])