这里不清楚
来源: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键是固定的。
祝学习愉快~
相似问题