python傳送qq郵件
阿新 • • 發佈:2020-09-15
import smtplib from email.mime.text import MIMEText # email 用於構建郵件內容 from email.header import Header from email.mime.multipart import MIMEMultipart from email.mime.base import MIMEBase # 用於構建郵件頭 from email import encoders # 發信方的資訊:發信郵箱,QQ 郵箱授權碼 from_addr = 'xx@qq.com' password = 'hjfjgjkglkj' # 收信方郵箱to_addr = '[email protected]' # 發信伺服器 smtp_server = 'smtp.qq.com' message = MIMEMultipart() message.attach(MIMEText("我傳送郵件了!嘿嘿!", 'plain', 'utf-8')) # 郵箱正文內容,第一個引數為內容,第二個引數為格式(plain 為純文字),第三個引數為編碼 # msg = MIMEText('send by python', 'plain', 'utf-8') # 郵件頭資訊 message['From'] = from_addr message['To'] = Header(to_addr) message['Subject'] = Header('老子來了!') # 新增檔案到附件 with open('D:\code\客戶\俄爾浦斯的琴絃_EDGAR\data.xlsx', 'rb') as f: # MIMEBase表示附件的物件 mime = MIMEBase('text', 'txt', filename='D:\code\客戶\俄爾浦斯的琴絃_EDGAR\data.xlsx') # filename是顯示附件名字 mime.add_header('Content-Disposition', 'attachment', filename="data.xlsx") # 獲取附件內容 mime.set_payload(f.read()) encoders.encode_base64(mime) # 作為附件新增到郵件 message.attach(mime) # 開啟發信服務,這裡使用的是加密傳輸 server = smtplib.SMTP_SSL() server.connect(smtp_server, 465) # 登入發信郵箱 server.login(from_addr, password) # 傳送郵件 server.sendmail(from_addr, to_addr, message.as_string()) # 關閉伺服器