python使用SMTP發(fā)送qq或sina郵件
更新時間:2017年10月21日 15:37:50 作者:Jacck
這篇文章主要為大家詳細介紹了python使用SMTP發(fā)送qq或sina郵件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
python使用qq郵箱(個人郵箱)發(fā)送郵件需開啟qq郵箱的SMTP服務
在設置中開啟pop3/SMTP服務,返回的密碼就是之后代碼中登錄使用賬戶密碼(在完整代碼中標識了出來)
之后出現(xiàn)如下錯誤
復制代碼 代碼如下:
smtplib.SMTPAuthenticationError: (530, 'Error: A secure connection is requiered(such as ssl). More information at http://service.mail.qq.com/cgi-bin/help?id=28')
錯誤說要開ssl發(fā)送郵件
在原來的代碼上添加上如下三行代碼即可
smtpObj.ehlo() smtpObj.starttls() smtpObj.ehlo()
完整代碼如下
import smtplib from email.mime.text import MIMEText from email.header import Header # 第三方 SMTP 服務 mail_host = "smtp.qq.com" # 設置服務器,qq的SMTP服務host mail_user = "xxx@qq.com" # 用戶名(須修改) mail_pass = "xxxxxxxxxxxxxxxx" # 此處為在qq開啟SMTP服務時返回的密碼 (須修改) sender = 'xxx@qq.com' # 同用戶名 (須修改) receivers = ['xxx@qq.com'] # 接收郵件,可設置為你的QQ郵箱或者其他郵箱 message = MIMEText('...', 'plain', 'utf-8') message['From'] = Header("第一封python測試郵件", 'utf-8') message['To'] = Header("測試", 'utf-8') try: subject = 'Python SMTP 郵件測試' message['Subject'] = Header(subject, 'utf-8') smtpObj = smtplib.SMTP() smtpObj.connect(mail_host, 25) # 25 為 SMTP 端口號 smtpObj.ehlo() smtpObj.starttls() smtpObj.ehlo() smtpObj.login(mail_user, mail_pass) smtpObj.sendmail(sender, receivers, message.as_string()) print "郵件發(fā)送成功" except smtplib.SMTPException : print "Error: 無法發(fā)送郵件"
在使用sina郵箱開啟SMPT服務后使用python發(fā)送信息卡在了如下錯誤#不是很理解
smtplib.SMTPDataError: (553, 'Envolope sender mismatch with header from..')
成功的例子是
import smtplib server = "smtp.sina.com" fromaddr= "xxx@sina.com" #須修改 toaddr = "xxx@qq.com" #須修改 msg = """ to:%s from:%s Hello,I am smtp server """ %(toaddr,fromaddr) s = smtplib.SMTP(server) s.set_debuglevel(1) s.login("xxx@sina.com","xxx") #須修改 s.sendmail(fromaddr,toaddr,msg)
報錯的例子是
import smtplib from email.mime.text import MIMEText from email.header import Header server = "smtp.sina.com" fromaddr= "xxx@sina.com" toaddr = "xxx@qq.com" message = MIMEText('...', 'plain', 'utf-8') message['From'] = Header(fromaddr, 'utf-8') message['To'] = Header("toaddr", 'utf-8') subject = 'Python SMTP 郵件測試' message['Subject'] = Header(subject, 'utf-8') s = smtplib.SMTP(server) s.set_debuglevel(1) s.login("xxx@sina.com","xxx") s.sendmail(fromaddr,toaddr,message)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- python發(fā)送郵件的實例代碼(支持html、圖片、附件)
- python中使用smtplib和email模塊發(fā)送郵件實例
- Python實現(xiàn)SMTP發(fā)送郵件詳細教程
- Python實現(xiàn)給qq郵箱發(fā)送郵件的方法
- python同時給兩個收件人發(fā)送郵件的方法
- 二種python發(fā)送郵件實例講解(python發(fā)郵件附件可以使用email模塊實現(xiàn))
- python發(fā)送郵件示例(支持中文郵件標題)
- python發(fā)送郵件接收郵件示例分享
- 基于python發(fā)送郵件的亂碼問題的解決辦法
- python監(jiān)控網站運行異常并發(fā)送郵件的方法
相關文章
python 實現(xiàn)網易郵箱郵件閱讀和刪除的輔助小腳本
這篇文章主要介紹了python 如何實現(xiàn)網易郵箱郵件閱讀和刪除輔助的小腳本,幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下2021-03-03python安裝和pycharm環(huán)境搭建設置方法
這篇文章主要介紹了python安裝和pycharm環(huán)境搭建和設置方法,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下 ,2020-05-05Python 開發(fā)工具通過 agent 代理使用的方法
這篇文章主要介紹了Python 開發(fā)工具通過 agent 代理使用的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09