1. Html網頁結構介紹-網頁到底如何傳送資料?爬蟲必學
2. 資料傳遞:Get與Post差異,網路封包傳送的差異
3. Html爬蟲Get教學-抓下Yahoo股票資訊,程式交易的第一步
4. Html爬蟲Get實戰-全台最大美食平台FoodPanda爬蟲,把熊貓抓回家
5. 資料分析實戰,熊貓FoodPanda熱門美食系列|看出地區最火料理種類
6. Json爬蟲教學-Google趨勢搜尋|掌握最火關鍵字
7. Json爬蟲實戰-24小時電商PChome爬蟲|雖然我不是個數學家但這聽起來很不錯吧
8. Html爬蟲Post教學-台灣股市資訊|網韭菜們的救星
9. Html爬蟲Post實戰-全球美食平台UberEat爬蟲
10. Pandas爬蟲教學-Yahoo股市爬蟲|不想再盯盤
11. Pandas爬蟲實戰-爬下全台各地區氣象預報歷史資料
12. 資料分析實戰-天氣預報圖像化|一張圖巧妙躲過雨季
å¨åé¢ç課ãPythonå¯Gmailåºç¤ï¼æå樣å¼æå¸ï½æåç²é«ãé¡è²ééå¯ä»¥æ¹ãéPythonç¨å¼ç¢¼ããå¾ï¼æ¨å¯è½ææ³åï¼é£é件æªæ¡çé¨åå¢ï¼ç確ï¼å¨ä¼æ¥ä¸mail é¤äºæ¿ä¾åè¨æ¯æºéå¤ï¼ä¹æ常被æ¿ä¾å³éä¸äºè¼çºæ£å¼çæ件ï¼å æ¤æ¬å 課ç¨å°±ä¾ææ¨å¦ä½å³éwordæªãPDFæªãåçæªãCSVæªã
é裡æåå¿
é 使ç¨email.mime
å¥ä»¶ï¼ä¸¦ä¸éè¦å©ç¨smtplib
å¥ä»¶é²è¡SMTPåå®çå¯éï¼å æ¤éè¦å
å°ææå¥ä»¶è¼å
¥ã
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.application import MIMEApplication
import smtplib
from pathlib import Path
é¦å ï¼æåå¨å¯ä¿¡çæåï¼ä¹æ¯è¦æå¯ä»¶è ä¿¡ç®±ãæ¶ä»¶è ä¿¡ç®±ãæ¨é¡ççï¼éäºæåå¯ä»¥è«Pythonç¨å¼å¹«æåèªåå¸¶å ¥ï¼ä½æåéæ¯å¿ é è¦çµ¦Pythonéäºè³æä»åæè½å¹«æåå¡«å ¥ï¼å æ¤é裡å è¡è¨å®å¯ä¿¡ç¸éåæ¸ã
sendFrom = "å¯ä»¶è
ä¿¡ç®±"
senderPassword = "å¯ä»¶è
å¯ç¢¼"
content = MIMEMultipart() #建ç«MIMEMultipartç©ä»¶
content["subject"] = "輸å
¥æ¨æ³è¦çéµä»¶æ¨é¡" #éµä»¶æ¨é¡
content["from"] = sendFrom #å¯ä»¶è
content["to"] = "æ¶ä»¶è
ä¿¡ç®±" #æ¶ä»¶è
content.attach(MIMEText("Ivanç測試å¯ä¿¡ï¼å¯ä¿¡è女ä½åï½ï½")) #éµä»¶å
§å®¹
å¯éåçå¿ é è¦ä½¿ç¨MIMEImage() æ¹æ³æå®åçï¼èåçéè¦æ¾å¨å·¥ä½ç®éä¸ï¼è¥ä¸ç¥éSpyder 編輯å¨å¦ä½è¨å®å·¥ä½ç®éç話ï¼å¯ä»¥åè課ç¨ã Spyder使ç¨æå¸ãã
content.attach(MIMEImage(Path("å¤é½.jpg").read_bytes())) # éµä»¶åçå
§å®¹</code></pre>
é¦å 使ç¨MIMEApplication() æ¹æ³æå®PDFæªæ¡ï¼ä¸¦ä¸éè¦å©ç¨add_header() æ¹æ³æå®è©²æªæ¡çºattachment(é件)ï¼æå¾å©ç¨attach() æ¹æ³å°æ´å æªæ¡éå å¨ä¿¡ä»¶ä¸ã
#å¯éPDFæªæ¡
fileName = 'test.pdf'
pdfload = MIMEApplication(open(fileName,'rb').read())
pdfload.add_header('Content-Disposition',
'attachment',
filename=fileName)
content.attach(pdfload)
使ç¨MIMEApplication() æ¹æ³æå®wordæªæ¡ï¼ä¸¦ä¸éè¦å©ç¨add_header() æ¹æ³æå®è©²æªæ¡çºattachment(é件)ï¼æå¾å©ç¨attach() æ¹æ³å°æ´å æªæ¡éå å¨ä¿¡ä»¶ä¸ã
#å¯éWordæªæ¡
fileName = 'test.docx'
pdfload = MIMEApplication(open(fileName,'rb').read())
pdfload.add_header('Content-Disposition',
'attachment',
filename=fileName)
content.attach(pdfload)
使ç¨MIMEApplication() æ¹æ³æå®CSVæªæ¡ï¼ä¸¦ä¸éè¦å©ç¨add_header() æ¹æ³æå®è©²æªæ¡çºattachment(é件)ï¼æå¾å©ç¨attach() æ¹æ³å°æ´å æªæ¡éå å¨ä¿¡ä»¶ä¸ã
#å¯écsvæªæ¡
fileName = '顧客è¨å®.csv'
pdfload = MIMEApplication(open(fileName,'rb').read())
pdfload.add_header('Content-Disposition', # å
§å®¹é
ç½®
'attachment', # é件
filename=fileName)
content.attach(pdfload)
å¨ä¿¡ä»¶å §å®¹ç¢ºå®å¾ï¼å·è¡ä»¥ä¸ç¨å¼ç¢¼ï¼å°±æè¨é信件äºã
with smtplib.SMTP(host="smtp.gmail.com", port="587") as smtp: # è¨å®SMTP伺æå¨
try:
smtp.ehlo() # é©èSMTP伺æå¨
smtp.starttls() # 建ç«å å¯å³è¼¸
smtp.login( sendFrom, senderPassword) # ç»å
¥å¯ä»¶è
gmail
smtp.send_message(content) # å¯ééµä»¶
print("æåå³é")
except Exception as e:
print("Error message: ", e)
作者:楊超霆 行銷搬進大程式 創辦人