smtplib python教程_python使用smtplib模块发送邮件
使用smtplib模塊發送郵件,供大家參考,具體內容如下
1)使用smtplib模塊發送簡單郵件
步驟:
1.連接SMTP服務器,并使用用戶名、密碼登陸服務器
2.創建EmailMessage對象,該對象代表了郵件本身
3.調用sendmail()方法發送郵件
示例:
我用自己的QQ郵箱(英文地址)給自己(原始地址)發一封郵件(QQ郵箱需要授權碼(詳見))
smtplib.SMTP() 代表的普通SMTP連接(默認端口21)
smtplib.SMTP_SSL() 代表基于SSL的SMTP連接(默認端口456,安全)
import smtplib
import email.message
fromaddr = "wk_helloworld@qq.com" # 賬號
password = "****************" # QQ授權碼
conn = smtplib.SMTP_SSL("smtp.qq.com", 465) # 創建SMTP連接
conn.login(fromaddr, password) # 登錄郵件服務器
msg = email.message.EmailMessage() # 創建郵件對象
msg.set_content("您好,Python郵件") # 設置郵件內容(普通郵件)
conn.sendmail(fromaddr, ["929667257@qq.com"], msg.as_string()) # 發送郵件
conn.quit() # 退出連接
2)發送內容完整的郵件
為郵件設置標題、發件人名字、收件人名(設置 EmailMessage 對象對應的屬性)
EmailMessage的set_content() 方法的第二個參數設置為 html 可將郵件內容改為 HTML 格式
import smtplib
import email.message
fromaddr = "wk_helloworld@qq.com"
password = "****************"
conn = smtplib.SMTP_SSL("smtp.qq.com", 465)
conn.login(fromaddr, password)
msg = email.message.EmailMessage()
msg.set_content("
HTML郵件
" + "
HTML郵件內容", "html", "UTF-8")msg["subject"] = "HTML郵件"
msg["from"] = "癡迷" % fromaddr
msg["to"] = "淡然" % "929667257@qq.com"
conn.sendmail(fromaddr, ["929667257@qq.com"], msg.as_string())
conn.quit()
3)發送圖文并茂的郵件
在郵件中插入圖片,需要先調用 EmailMessage 的 add_attachment() 方法來添加附件,該方法參數:
maintype:指定附件的主要類型
subtype:指定附件的子類型
filename:指定該附件的文件名
cid=img:指定該附件的資源 ID
通過元素來插入附件中的圖片(引用附件的cid屬性)
import smtplib
import email.message
import email.utils
fromaddr = "wk_helloworld@qq.com"
password = "****************"
toaddr = "929667257@qq.com"
conn = smtplib.SMTP_SSL("smtp.qq.com", 465)
conn.login(fromaddr, password)
msg = email.message.EmailMessage()
first_id = email.utils.make_msgid()
msg.set_content("
HTML郵件
"
+ "
html郵件內容"+ "", "html", "UTF-8")
msg["subject"] = "HTML郵件"
msg["from"] = "wk" % fromaddr
msg["to"] = "k" % toaddr
# 添加附件
with open("圖1.jpg", "rb") as f:
# 附件指定cid后,郵件正文可通過該cid來引用該圖片
msg.add_attachment(f.read(), maintype="image", subtype="jepg", filename="test1.jpg", cid=first_id)
with open("圖2.jpg", "rb") as f:
msg.add_attachment(f.read(), maintype="image", subtype="jepg", filename="test2.jpg")
# with open("圖3.gif", "rb") as f:
# msg.add_attachement(f.read(), maintype="image", subtype="gif", filename="test.jpg")
conn.sendmail(fromaddr, [toaddr], msg.as_string())
conn.quit()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持云海天教程。
總結
以上是生活随笔為你收集整理的smtplib python教程_python使用smtplib模块发送邮件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ios删除分割线_iOS应用开发中UIT
- 下一篇: android frida 检测_fri