1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| import os import smtplib from email import encoders from email.header import Header from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.mime.base import MIMEBase
def send_email(): msg = MIMEMultipart() msg['From'] = Header('Worker<1837@qq.com>') msg['To'] = Header('Administrators<17859@163.com>') msg['Subject'] = Header('Work in 2020.', 'utf-8').encode() msg.attach(MIMEText('hello, work completed.', 'plain', 'utf-8'))
zip_path = os.path.join(os.path.abspath('.'), 'test.zip') with open(zip_path, 'rb') as f: mime = MIMEBase('zip', 'zip', filename=zip_path) mime.add_header('Content-Disposition', 'attachment', filename=('utf8', '', 'test1.zip')) mime.add_header('Content-ID', '<0>') mime.add_header('X-Attachment-Id', '0') mime.set_payload(f.read()) encoders.encode_base64(mime) msg.attach(mime)
server = smtplib.SMTP("smtp.qq.com", 25) server.starttls() server.login("196@qq.com", "gphf") server.sendmail("186@qq.com", ["17@163.com", ], msg.as_string()) server.quit()
if __name__ == '__main__': send_email()
|