# 导入所需模块import smtplibfrom email.header import Headerfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.mime.image import MIMEImage#电脑 邮箱帐号和授权码,连接和登录邮箱,这里跟着教程获取邮箱的授权码,在第27课第10页,最好都使用QQ邮箱,不然会报错mailUser = "XXXX@qq.com"#这里XXXX修改为自己的QQ号mailPass = "XXXXXXXXXXXXXX"#这里是QQ邮箱授权码smtpObj = smtplib.SMTP_SSL("smtp.qq.com", 465)smtpObj.login(mailUser, mailPass)# 发件人、收件人sender = "XXXX@qq.com"#这里也要修改为自己的QQ号receiverDict = {"yqbc": "yequbiancheng@baicizhan.com"}# 文件路径,路径可右键要发送的文件-属性,然后复制粘贴进双引号里面,其他位置不要修改path = r"C:\Users\16252\Desktop"#路径可右键要发送的文件-属性,然后复制粘贴进双引号里面,其他位置不要修改for receiver in receiverDict: # 编辑并整合发件人、收件人、主题信息 message = MIMEMultipart() message["From"] = Header(f"XX<{sender}>")#这里XX也要修改为自己的QQ名称 message["To"] = Header(f"{receiver}<{receiverDict[receiver]}>") message["Subject"] = Header(f"给夜曲的一封信") # 编辑邮件正文 mailContent = MIMEText("coco测试:在这里写下想对夜曲或者茂茂老师说的话哦,引号内的内容就是自己可编辑的哦", "plain", "utf-8") # 读取图片文件 filePath = path + "\\" + "入门成绩单.png"#这里"入门成绩单.png"取决于自己电脑上文件的名称,可右键点击属性查看 with open(filePath, "rb") as imageFile: fileContent = imageFile.read() # 编辑附件信息 att = MIMEImage(fileContent) att.add_header("Content-Disposition", "attachment", filename="入门成绩单.jpg") # 整合正文和图片 message.attach(mailContent) 电脑 message.attach(att) # 发送邮件 smtpObj.sendmail(sender, receiverDict[receiver], message.as_string()) print("发送成功")
邮件发送是本次基础知识学习的较难的例题了,刚学习的我还有很多不明白的地方,需要不断看,有什么问题可以指出。
关注点赞收藏不迷路,私信共享学习资料,共同学习,共同进步。