import smtplib
server = smtplib.SMTP()
server.connect(host, port)
server.login(username, password)
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()
說明:執行個體化;連接配接伺服器;登陸賬号,密碼;發送郵件給某某。。。
是不是很簡單。。。
msg.as_string()是一個字元串類型:as_string()是将發送的資訊msg變為字元串類型
msg的位置你寫 '你好,世界' 也可以,就是說要字元串....
PS:
郵件端口比較複雜,自己注意的我這裡總結一下,讓你不用白行一趟
--------------------發送,投遞的
SMTP : 25
SSL SMTP : 465 smtplib.SMTP_SSL() 适當替換
TLS SMTP : 587 starttls() 需要在 smtplib.SMTP_SSL() 或smtplib.SMTP() 後增加開始TLS
---------------------------------接收,驗證的
POP3 : 110
SSL POP3 : 995
IMAP: 143
SSL IMAP : 993
悄悄共享給你。。。。無多少人知道的。。。SSL,TLS 哈哈。。。
#####下面我複制人家的例子。。。
from email.mime.text import MIMEText
from email.header import Header
import csv
from_addr = input('請輸入登入郵箱:')
password = input('請輸入郵箱授權碼:')
smtp_server = 'smtp.qq.com'
text='''
人生苦短,我用Python
'''
data = [['y ', '[email protected]'],['x', [email protected]']]
with open('to_addrs.csv', 'w', newline='') as f:
writer = csv.writer(f)
for row in data:
writer.writerow(row)
with open('to_addrs.csv', 'r') as f:
reader = csv.reader(f)
for row in reader:
to_addrs=row[1]
msg = MIMEText(text,'plain','utf-8')
msg['From'] = Header(from_addr)
msg['To'] = Header(to_addrs)
msg['Subject'] = Header('python test')
server = smtplib.SMTP_SSL()
server.connect(smtp_server,465)
server.login(from_addr, password)
server.sendmail(from_addr, to_addrs, msg.as_string())