到昨天課程已經完結。可是你是否是你仍是以爲沒有成就感。。。。答案確定的。 做爲一名郵件管理員,也是一件有意思的事情。。。。。 我觸發學習Py的,主要也是用於羣發郵件,解決市場管理部老是找我羣發郵件。。。。。 那時候我使用的是shell......可是仍是要要入系統搞,能不能我給工具,大家本身發送。。。。。。。。。。 因此仍是很苦逼,咱們 搜索python 發送郵件,你會發現2個模塊smtplib,email 1. smtplib是用來發送郵件用的;( 跟服務器鏈接,你纔能有機會發送郵件吧) 2. email是用來構建郵件內容的。(你發送的內容至少 兩個都是Python內置模塊。(這裏信息說明,python裝完就有,自帶入網,須要pip install xxx) ######################開始以前,咱們思考一下發送郵件過程: 準備好郵件內容 -----------鏈接服務器 -------------點擊發送。 (3個步驟) ######################開始寫以前,咱們要思考一個問題,如何學習python 其餘大神的 模塊...用什麼學習什麼 百度》smtplib python 本身找文檔資料吧。。。之後都是這樣的路線,英文,英文,英文。。(不搞IT,能夠不用堅持了。。。) ############################################開始smtplib模塊
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的位置你寫 '你好,世界' 也能夠,就是說要字符串....python
PS:
郵件端口比較複雜,本身注意的我這裏總結一下,讓你不用白行一趟shell
--------------------發送,投遞的
SMTP : 25
SSL SMTP : 465 smtplib.SMTP_SSL() 適當替換
TLS SMTP : 587 starttls() 須要在 smtplib.SMTP_SSL() 或smtplib.SMTP() 後增長開始TLS服務器
---------------------------------接收,驗證的
POP3 : 110
SSL POP3 : 995ide
IMAP: 143
SSL IMAP : 993工具
悄悄共享給你。。。。無多少人知道的。。。SSL,TLS 哈哈。。。學習
#####下面我複製人家的例子。。。
import smtplibui
from email.mime.text import MIMETextcode
from email.header import Headerserver
import csvip
from_addr = input('請輸入登陸郵箱:')
password = input('請輸入郵箱受權碼:')
smtp_server = 'smtp.qq.com'
text='''
人生苦短,我用Python
'''
data = [['y ', '123@qq.com'],['x', 4533@qq.com']]
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())
server.quit()