日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python邮件发送哪个好_python发邮件(一)

發布時間:2023/12/2 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python邮件发送哪个好_python发邮件(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

復習模塊

如果我們要發送郵件,就需要用到smtplib模塊的以下方法:

1、import smtplib ? ? ??#引入smtplib模塊

2、server = smtplib.SMTP()? ? ?#server為變量,通過SMTP指定一個服務器,這樣才能把郵件送到另一個服務器,SMTP為類

3、server.connect(host, port)? #connect指定服務器,host指定連接的郵箱服務器,可以指定服務器的域名,搜索“xx郵箱服務器地址”,就可以找到,port是端口,SMTP默認端口為25,常用:QQ郵箱若有_SSL加密,端口為465

4、server.login(username, password) ? #login是登陸的意思,參數為登陸的郵箱(也為發件的郵箱),和授權碼(郵箱設置SMTP會顯示)

5、server.sendmail(from_addr, to_addr, msg.as_string())? #sendmail為發送郵件,from_addr = username 發件人,to_addr為收件人,msg為發送的內容,? .as_string()是將發送的信息變為字符串類型

6、server.quit() ? ?#quit為退出服務器

郵件內容 要用到email模塊:

email 模塊:也就是用來寫郵件內容的模塊。這個內容可以是純文本、HTML內容、圖片、附件等多種形式。

每種形式對應的導入方式:

from email.mime.text import MIMEText? ?# MIMEText(msg,type,chartset) 三個參數:文本內容,文本類型和文本編碼。

from email.mime.image import MIMEImage

from email.mime.multipart import MIMEMultipart

el:

import?smtplib

from?email.mime.text?import?MIMEText

#引用模塊smtplib,email

username?=?'49*******@qq.com'

password?=?input('請輸入授權碼')

from_addr?=?username

to_addrs?=?'*********@qq.com'

msg?=?MIMEText('第一波看看成不成功~哈哈哈哈','plain','utf-8')

#定義變量

server?=?smtplib.SMTP()

#如果端口是用SSL加密,server?=?smtplib.SMTP_SSL()。其中server是變量名

server.connect('smtp.qq.com',25)

#如果出現編碼錯誤UnicodeDecodeError,你可以這樣寫:server.connect('smtp.qq.com',?465,'utf-8')

server.login(username,?password)

#登錄郵箱,輸入賬號、授權碼

server.sendmail(from_addr,?to_addrs,?msg.as_string())

#發送郵件,發件人=登錄郵箱,收件人,內容

server.quit()

#退出服務器

報錯及解決:

1.ValueError: server_hostname cannot be an empty string or start with a leading dot.

# 改動這句代碼

server = smtplib.SMTP_SSL()

# 在括號內加入host參數

server = smtplib.SMTP_SSL(smtp_server)

2.smtplib.SMTPException: No suitable authentication method found

解決方案是:在登錄(login)之前調用starttls()方法就可以了。也就是在代碼中加入這樣一行:

server.starttls()

增加郵件頭:

from email.header import Header? #從email包引入Header()方法。Header()是用來構建郵件頭的。

msg['From'] = Header(from_addr)#發件人郵箱地址

msg['To'] = Header(to_addr)#收件人郵箱地址

msg['Subject'] = Header('python test') #主題python test

el:

import?smtplib

from?email.mime.text?import?MIMEText

from?email.header?import?Header

#引用模塊

username?=?'4*********0@qq.com'

password?=?input('請輸入授權碼')

from_addr?=?username

to_addrs?=?'********@qq.com'

text?=?'''哈哈?研究了半天終于會用python發郵件了~開心QVQ

繼續學~越來越感興趣了~

來個經典名言:

好好學,學到了都是你的

溜了溜了~'''

msg?=?MIMEText(text,'plain','utf-8')

#定義變量

msg['From']?=?Header('JinAncan')

msg['To']?=?Header('A')

msg['Subject']?=?Header('小試牛刀')

#郵件頭信息

server?=?smtplib.SMTP()

#如果端口是用SSL加密,server?=?smtplib.SMTP_SSL()。其中server是變量名

server.connect('smtp.qq.com',25)

#如果出現編碼錯誤UnicodeDecodeError,你可以這樣寫:server.connect('smtp.qq.com',?465,'utf-8')

server.login(username,?password)

#登錄郵箱,輸入賬號、授權碼

server.sendmail(from_addr,?to_addrs,?msg.as_string())

#發送郵件,發件人=登錄郵箱,收件人,內容

server.quit()

#退出服務器

總結

以上是生活随笔為你收集整理的python邮件发送哪个好_python发邮件(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。