導航:首頁 > 編程語言 > python程序里執行發送郵件

python程序里執行發送郵件

發布時間:2022-09-04 09:48:11

python中如何實現發送郵件及附件功能的具體詳解

思路如下:
1. 構造MIMEMultipart對象做為根容器
2. 構造MIMEText對象做為郵件顯示內容並附加到根容器
3. 構造MIMEBase對象做為文件附件內容並附加到根容器
a. 讀入文件內容並格式化
b. 設置附件頭
4. 設置根容器屬性
5. 得到格式化後的完整文本
6. 用smtp發送郵件

② python 怎麼實現郵件發送

一般最好有個smtp伺服器,比如說你在163注冊個郵箱,這樣可以用smtplib通過這個郵箱來發送。以下是示例: #-*- coding:utf8 -*- import smtplib import email import mimetypes from email.MIMEMultipart import MIMEMultipart from email.mime....

③ 如何使用python發送各類郵件

以下代碼調試通過:

#coding:utf-8
importsmtplib
fromemail.mime.textimportMIMEText
fromemail.headerimportHeader

sender='[email protected]'
receiver='[email protected]'
subject='pythonemailtest'
smtpserver='smtp.139.com'
username='[email protected]'
password='xxxxxxxx'

msg=MIMEText('你好lucia這是你的第一封python發出的郵件','text','utf-8')
#中文需參數『utf-8',單位元組字元不需要
msg['Subject']=Header(subject,'utf-8')

smtp=smtplib.SMTP()
smtp.connect('smtp.139.com')
smtp.login(username,password)
smtp.sendmail(sender,receiver,msg.as_string())
smtp.quit()

運行效果:

④ 如何使用Python發送帶的郵件

.headerimportHeaderfromemail.mime.textimportMIMETextfromemail.utilsimportparseaddr,formataddrdefsend_email(from_addr,to_addr,subject,password):
msg=MIMEText("郵件正文",'html','utf-8')
msg['From']=u'<%s>'%from_addr
msg['To']=u'<%s>'%to_addr
msg['Subject']=subject

smtp=smtplib.SMTP_SSL('smtp.163.com',465)
smtp.set_debuglevel(1)
smtp.ehlo("smtp.163.com")
smtp.login(from_addr,password)
smtp.sendmail(from_addr,[to_addr],msg.as_string())if__name__=="__main__":
#這里的密碼是開啟smtp服務時輸入的客戶端登錄授權碼,並不是郵箱密碼
#現在很多郵箱都需要先開啟smtp才能這樣發送郵件
send_email(u"from_addr",u"to_addr",u"主題",u"password")

⑤ 如何使用python發郵件

直接貼點代碼,感受下

#!/usr/bin/python

#-*-coding:UTF-8-*-importsmtplib

fromemail.mime.textimportMIMEText

fromemail.headerimportHeadersender='XXXXX'
receivers=['[email protected]']#接收郵件,可設置為你的QQ郵箱或者其他郵箱#三個參數:第一個為文本內容,第二個plain設置文本格式,第三個utf-8設置編碼

message=MIMEText('Python郵件發送測試...','plain','utf-8')

message['From']=Header("測試",'utf-8')

message['To']=Header("測試",'utf-8')subject='PythonSMTP郵件測試'

message['Subject']=Header(subject,'utf-8')

try:

smtpObj=smtplib.SMTP('localhost')

smtpObj.sendmail(sender,receivers,message.as_string())

print"郵件發送成功"

exceptsmtplib.SMTPException:

print"Error:無法發送郵件"

⑥ 我用python發郵件。出現以下問題,求解答

1、准備兩個郵箱帳號,一個是常用的(接收端),另一個可以注冊網易163郵箱或者foxmail郵箱也可(發送端),本次我使用兩個QQ郵箱進行演示。

2、在郵箱的設置

3、賬戶中開啟SMTP功能,如下圖:

8、如果能成功收到郵件的話就說明完成了。

⑦ 如何用python自動發送郵件

注意如果使用qq的smtp轉發功能的話,需要在設置頁面中將該功能打開,然後設定密碼,改密碼就是賦值給下文password中的。

開啟smtp轉發功能文檔


[python]view plain

#fromemail.MIMETextimportMIMEText#

fromemail.MIMETextimportMIMEText

fromemail.HeaderimportHeader

msg=MIMEText('hello,sendbypython','plain','utf-8');

from_addr="*****@qq.com"#

password="******"#password

to_addr="****@qq.com"#targetemailaddress

smtp_server="smtp.qq.com"#smtpseverdomainforqqissmtp.qq.com

importsmtplib

server=smtplib.SMTP(smtp_server,25);

server.set_debuglevel(1)

server.login(from_addr,password);

server.sendmail(from_addr,[to_addr],msg.as_string())

server.quit()



上面這個是沒有主題的,有主題的話建議採用下面這個代碼

下面是連續發送有主題的文件10封


[python]view plain

fromemail.HeaderimportHeader

fromemail.MIMETextimportMIMEText

fromemailimportencoders

fromemail.utilsimportparseaddr,formataddr

importsmtplib

def_format_addr(s):

name,addr=parseaddr(s)

returnformataddr((Header(name,'utf-8').encode(),addr))

from_addr="*****@qq.com"#

password="******"#password

to_addr="****@qq.com"#targetemailaddress

smtp_server="smtp.qq.com"#smtpseverdomainforqqissmtp.qq.com

fornuminrange(1,11):

msg=MIMEText('hello,sendbyTom','plain','utf-8');

msg['From']=_format_addr('Tom<%s>'%from_addr)

msg['To']=_format_addr('addministrator<%s>'%to_addr)

msg['Subject']=Header('ThegreetingfromTom','utf-8').encode()

server=smtplib.SMTP(smtp_server,25)

server.set_debuglevel(1)

server.login(from_addr,password)

#server.sendmail(from_addr,[to_addr],msg.as_string())

server.sendmail(from_addr,[to_addr],msg.as_string())

server.quit()

⑧ 用Python發送郵件,可以群發,帶有多個附件

'''''
函數說明:Send_email_text()函數實現發送帶有附件的郵件,可以群發,附件格式包括:xlsx,pdf,txt,jpg,mp3等
參數說明:
1.subject:郵件主題
2.content:郵件正文
3.filepath:附件的地址,輸入格式為["","",...]
4.receive_email:收件人地址,輸入格式為["","",...]
'''
defSend_email_text(subject,content,filepath,receive_email):
importsmtplib
fromemail.mime.multipartimportMIMEMultipart
fromemail.mime.textimportMIMEText
fromemail.mime.
sender="發送方郵箱"
passwd="填入發送方密碼"
receivers=receive_email#收件人郵箱

msgRoot=MIMEMultipart()
msgRoot['Subject']=subject
msgRoot['From']=sender

iflen(receivers)>1:
msgRoot['To']=','.join(receivers)#群發郵件
else:
msgRoot['To']=receivers[0]

part=MIMEText(content)
msgRoot.attach(part)

##添加附件部分
forpathinfilepath:
if".jpg"inpath:
#jpg類型附件
jpg_name=path.split("\")[-1]
part=MIMEApplication(open(path,'rb').read())
part.add_header('Content-Disposition','attachment',filename=jpg_name)
msgRoot.attach(part)

if".pdf"inpath:
#pdf類型附件
pdf_name=path.split("\")[-1]
part=MIMEApplication(open(path,'rb').read())
part.add_header('Content-Disposition','attachment',filename=pdf_name)
msgRoot.attach(part)

if".xlsx"inpath:
#xlsx類型附件
xlsx_name=path.split("\")[-1]
part=MIMEApplication(open(path,'rb').read())
part.add_header('Content-Disposition','attachment',filename=xlsx_name)
msgRoot.attach(part)

if".txt"inpath:
#txt類型附件
txt_name=path.split("\")[-1]
part=MIMEApplication(open(path,'rb').read())
part.add_header('Content-Disposition','attachment',filename=txt_name)
msgRoot.attach(part)

if".mp3"inpath:
#mp3類型附件
mp3_name=path.split("\")[-1]
part=MIMEApplication(open(path,'rb').read())
part.add_header('Content-Disposition','attachment',filename=mp3_name)
msgRoot.attach(part)

try:
s=smtplib.SMTP()
s.connect("smtp.mail.aliyun.com")#這里我使用的是阿里雲郵箱,也可以使用163郵箱:smtp.163.com
s.login(sender,passwd)
s.sendmail(sender,receivers,msgRoot.as_string())
print("郵件發送成功")
exceptsmtplib.SMTPExceptionase:
print("Error,發送失敗")
finally:
s.quit()

閱讀全文

與python程序里執行發送郵件相關的資料

熱點內容
程序員放棄後會怎樣 瀏覽:182
河北模具編程 瀏覽:187
adb查找命令 瀏覽:321
安卓手機視頻文件夾怎麼打開 瀏覽:309
平板加密手機後怎麼關閉 瀏覽:567
流媒體伺服器應該注意什麼 瀏覽:536
d8命令編譯 瀏覽:964
壓縮包解壓需要多少空間 瀏覽:145
如何查找app屬性 瀏覽:388
android人臉識別技術 瀏覽:322
pc104編程 瀏覽:335
二維碼反編譯破解推廣 瀏覽:682
修改伺服器的mac地址 瀏覽:528
好玩的編程軟體 瀏覽:899
編程語言創始人有錢嗎 瀏覽:804
短視頻app怎麼獲客 瀏覽:15
查看雲伺服器的應用 瀏覽:436
javadump工具 瀏覽:565
程序員16g 瀏覽:445
程序員沒有辦法成為top怎麼辦 瀏覽:218