这里不清楚
来源:6-2 邮件发送
松松哥哥
2023-09-23 14:35:17
# coding:utf-8 import time import smtplib import schedule # pip install schedule from email.mime.text import MIMEText from email.header import Header from email.mime.multipart import MIMEMultipart #第三方的smtp mail_host = 'smtp.sina.com' mail_user = 'conan868242' mail_pass = 'cb997b01a87232b2' # smtp 开通, 授权码 sender = 'conan868242@sina.com' receivers = ['dewei.zhang@tusimple.com'] message = MIMEMultipart() #message = MIMEText('<p style="color:red;">这是一个测试</p>', 'html', 'utf-8') message['From'] = Header(sender) message['Subject'] = Header('python脚本测试', 'utf-8') attr = MIMEText(open('send.py', 'rb').read(), 'base64', 'utf-8') attr['Content-Type'] = 'application/octet-stream' attr['Content-Disposition'] = 'attachment;filename="send.py"' message.attach(attr) message.attach(MIMEText('这是一个带附件的邮件', 'plain', 'utf-8')) def send(): print('send start') try: smtpobj = smtplib.SMTP() smtpobj.connect(mail_host, 25) smtpobj.login(mail_user, mail_pass) smtpobj.sendmail(sender, receivers, message.as_string()) except smtplib.SMTPException as e: print('error: %s' % e) if __name__ == '__main__': schedule.every(10).seconds.do(send) while 1: schedule.run_pending() time.sleep(1)
message['From'] = Header(sender) message['Subject'] = Header('python脚本测试', 'utf-8')
这里为什么写message['from']=Header(sender)还有夏敏的subject这里为什么这样写。看不懂
1回答
同学,你好!1、message['From'] = Header(sender) 是用来设置邮件的发送者信息。Header() 函数用来创建邮件头部的对象,其中第一个参数 sender 是发送者的名称或地址。这里,我们将 sender 作为参数传递给 Header() 函数,然后将返回的对象赋值给 message['From']作为邮件的发送者
2、message['Subject'] = Header('python脚本测试', 'utf-8') 是用来设置邮件的主题。同样地,我们使用 Header() 函数来创建邮件头部的对象,其中第一个参数是主题内容 'python脚本测试',第二个参数 'utf-8' 指定了编码方式为 UTF-8。然后,我们将返回的对象赋值给 message['Subject']作为邮件的主题。其中message的From和Subject键是固定的。
祝学习愉快~
相似问题