天天看點

python郵件發送和圖檔

​ 上班時間幹别的事情是不太好的,如果被别人看到的話會很大程度上影響個人的前進的步伐。但是如果工作做的差不多了,那麼閑着也是閑着。反正cpu資源浪費一天就是一天的折舊,那還不如多學點東西。我們之前的過程都需要點選運作,然後出來一個圖。這種方式目标太大,容易被人發現。那麼我們做個定時任務。然後把圖檔不顯示,而是儲存為圖檔。營運結束之後将圖檔放到郵件裡,然後發送到手機。相對短信需要花費金錢來說,郵件最好了。

​通過摸索實踐,作者實作了發送郵件的功能。

import time

from PIL import ImageGrab

import smtplib

from email.mime.image import MIMEImage

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from email.header import Header

endDate=time.strftime('%Y-%m-%d',time.localtime(time.time()))

# img = ImageGrab.grab()

# img.save('E:\\12.png')

my_sender = '[email protected]' # 發件人郵箱賬号

my_pass = 'tmugmde3333ad' # 發件人郵箱密碼

my_user = '[email protected]' # 收件人郵箱賬号,我這邊發送給自己

sender = “[email protected]

receivers = ['[email protected]'] # 接收郵件,可設定為你的QQ郵箱或者其他郵箱

msgRoot = MIMEMultipart('related')

msgRoot['From'] = Header(str(endDate)+" 大盤趨勢", 'utf-8')

msgRoot['To'] = Header("測試", 'utf-8')

subject = str(endDate)+' 趨勢'

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

msgAlternative = MIMEMultipart('alternative')

msgRoot.attach(msgAlternative)

mail_msg = """

<p>大盤趨勢</p>

<p>圖檔示範:</p>

<p><img src="cid:image1"></p>

"""

msgAlternative.attach(MIMEText(mail_msg, 'html', 'utf-8'))

# 指定圖檔為目前目錄

fp = open('E:\\12.png', 'rb')

msgImage = MIMEImage(fp.read())

fp.close()

# 定義圖檔 ID,在 HTML 文本中引用

msgImage.add_header('Content-ID', '<image1>')

msgRoot.attach(msgImage)

try:

smtpObj = smtplib.SMTP()

smtpObj.connect('smtp.qq.com', 25) # 25 為 SMTP 端口号

smtpObj.login(my_user,my_pass)

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

print("郵件發送成功")

except smtplib.SMTPException:

print("Error: 無法發送郵件")

python郵件發送和圖檔
python郵件發送和圖檔

對于定時任務來說太簡單了,網上資料一大推還不帶坑的那種。ply儲存圖檔也是。