python使用yagmail發送163郵件

半年前,我想用python寫一直爬蟲爬天氣,然後通過微信機器人每天發送天氣信息給女朋友(我們程序員要是浪漫起來,就沒人其他人的事了)。
但是後來放棄了,因爲微信在客戶端只能登陸在同一機器上,如果微信機器人運行在服務器上,那就意味着不能在自己的電腦上登陸微信了,強行登陸會導致服務端微信被被迫下線。

後來,我想到了用郵箱來發送消息,郵箱沒有多端登錄的問題,我用的是網易的163郵箱。
python發送郵件主要有兩個庫,smtplib和yagmail,我用的是yagmail,因爲它簡單易用。

廢話不多說,講重點,分兩步:

一,開通SMTP(就是請求163郵箱官方讓你在其他地方登錄的郵箱)

1,登錄163郵箱,在首頁上找到 設置 -> POP3/SMTP/MAP。
在這裏插入圖片描述
2,然後勾選複選框中的 POP3/SMTP服務 ,在彈出確認授權對話框的時候點擊確定。在這裏插入圖片描述
3,點擊 開啓 (授權碼),在彈出對話框之後按照提示發送短信進行驗證。
在這裏插入圖片描述
在這裏插入圖片描述
4,發送短信之後,點擊我已發送,則會彈出填寫授權碼的對話框,創建授權碼(也就是用python發郵件的時候使用的密碼),確定之後會再彈出一個確認對話框,點擊確定就OK啦。
在這裏插入圖片描述
在這裏插入圖片描述

二,寫代碼(很簡單哦)

首先通過安裝yagmail模塊

pip install yagmail

下面是核心代碼,先ctrl + c , 再 ctrl + v , 然後改改就OK啦

import yagmail

#通過郵箱服務器登錄自己的郵箱,host是163郵箱的服務器
email = yagmail.SMTP(user="[email protected]", password="1314abc", host='smtp.163.com')

#開始發送郵件 email.send(別人的郵箱,標題,[內容,附件1,附件2])
email.send('[email protected]', '問候', '你最近好嗎?')

提示

不知道爲啥,郵件有很大的可能性會被對方的郵箱放入垃圾箱。
解決方法,標題和內容用英文寫,就不會被放入垃圾郵箱啦。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章