91av免费观看_日韩视频在线免费看_日本xxxx色视频在线观看免费_伊人222综合网图片_国产二区三区在线_91麻豆麻豆

IT之道-艾銻知道

您當前位置: 主頁 > 資訊動態 > IT知識庫 >

如何用Python實現電子郵件的自動化-艾銻分享


2020-05-26 18:38 作者:艾銻無限 瀏覽量:

如何用Python實現電子郵件的自動化-艾銻分享

在本文中,我們將概述如何編寫一個Python腳本,該腳本可以下載一組特定的公共數據,然后將其上傳到電子郵件中,并將其發送給任何需要的人。
前言
用Python自動化日常任務很容易。通過api和庫的結合,您可以輕松地設置系統來抓取網站、發送電子郵件、管理數據和分析。
在本文中,我們將概述如何編寫一個Python腳本,該腳本可以下載一組特定的公共數據,然后將其上傳到電子郵件中,并將其發送給任何需要的人。
這將使您熟悉使用Pytho求庫和Gmail API。因此,如果您希望將來使用Python自動處理電子郵件,這是一個很好的學習起點。

用Python下載文件
對于第一步,我們將需要使用HTTP請求實際下載數據文件。
在本例中,我們將要下載的文件甚至在下面的鏈接中有一個簡單的端點。因此,您不需要使用Selenium這樣的庫來嘗試單擊下載按鈕。通常,如果有一個URL,那么使用鏈接下載就非常容易。
https://data.medicaid.gov/api/views/u72p-j37s/rows.json?accessType=DOWNLOAD

這個文件提供關于醫療補助和個人登記的信息。這對醫療保健提供者來說是有價值的,他們可以將其與內部數據聯系起來,幫助更好地了解他們的市場。
為了下載它,我們將使用函數requests.get()。這將允許我們使用HTTP請求將數據拉到我們指定的URL。
例如,你可以看看下面的腳本:
  1. # Part 1: Fetch the data.? 
  2.  
  3. # Get the webpage, store it in a Response object and assign the text 
  4. # About: https://requests.readthedocs.io/en/master/api/#requests.Response? 
  5.  
  6. # This URL contains the .csv download of
  7. # 'https://catalog.data.gov/dataset/' \ 
  8. #  'share-of-medicaid-enrollees-in-managed-care' 
  9. # used to send to the destination e-mail. 
  10.  
  11. csvFileURL = 'https://data.medicaid.gov/api/' \  'views/u72p-j37s/rows
  12. csv?accessType=DOWNLOAD'csvFileRequest = requests.get(csvFileURL)csvFile = csvFileRequest.content 
它短小精悍,并將返回CSV作為您現在設置為變量的請求的一部分。我們稍后在創建電子郵件時將使用這個。但是接下來,我們需要設置Gmail API的憑據。

設置您的Gmail API
谷歌使您非常容易地設置api。您可以轉到谷歌API控制臺。從這里,您可以選擇ENABLE API和服務,然后搜索Gmail API。
API控制臺如下圖所示。
IMG_256
你可以輸入Gmail,它應該是唯一出現的。
IMG_257
然后您可以選擇Gmail API,它旁邊會有一個ENABLE按鈕。
IMG_258
一旦您在Gmail API上單擊ENABLE,您就可以下載您的憑證或者使用API密鑰和密鑰。
我們的代碼將使用JSON下載,但如果您愿意,可以將其轉換為pickle。
 
有了這些設置,我們現在可以開始建立你的功能設置,然后自動發送你的電子郵件。

使用Gmail API 發送郵件
現在我們已經找到了一種獲取數據的方法,我們需要弄清楚如何發送電子郵件。
為了做到這一點,我們將使用電子郵件庫。這個庫可以讓我們設置電子郵件的各個部分:發件人、收件人、主題等。
我們在電子郵件中使用MIMEBase類來實現這一點,這使得設置正確的數據點變得很容易,并且為將來使用的Gmail API提供了一個簡單的類。
使用MIMEBase類真的很簡單,因為你可以創建一個新的類,然后引用很多需要的組件,比如:
  1. message[‘from’] = test@gmail.com 
您可以看到我們在下面設置這些參數的整個函數。
  1. Function required for Part 2: Send e-mail with Google API. 
  2. # a) Create the message 
  3.  
  4. def create_message(sender, to, subject, csv):   
  5. #message = MIMEMultipart()   
  6.     message = MIMEMultipart() 
  7.   message['from'] = sender 
  8.   message['to'] = to   
  9.   message['subject'] = subject 
  10.  
  11. # Send the time it was updated as the body of the e-mail   
  12. dt_object = datetime.utcnow() - timedelta(hours = 7)   
  13. msg = MIMEText('Hi! Your file was updated.' \    '\nTime of update: ' + dt_object.strftime('%m/%d/%Y, %I:%M:%S %p') \    + ' (Los Angeles Time)')?   
  14. message.attach(msg) 
  15.  
  16. # Attach the .csv file   
  17. record = MIMEBase('application', 'octet-stream')   
  18. # print(csv)   
  19. record.set_payload(csv)   
  20. encoders.encode_base64(record)   
  21. record.add_header('Content-Disposition', 'attachment', filename='medicare.csv')   
  22. message.attach(record) 
  23.  
  24. Return the message   
  25. raw = base64.urlsafe_b64encode(message.as_bytes())   
  26. raw = raw.decode()   
  27. return {'raw': raw} 
您將注意到在最后,我們使用了函數urlsafe_b64encode。這將把消息設置為字節。這將用于輕松地將電子郵件數據傳輸到Gmail API。所以它很容易傳遞。
現在是時候發送你的第一封自動郵件了。?現在您已經設置了Gmail API憑據,我們可以發送第一封電子郵件了。我們將使用使用Gmail API和憑據設置的服務變量。這如下面的函數send_message所示。
  1. #b) Send the message 
  2.  
  3. def send_message(service, user_id, message):   
  4.     try:    message = service.users().messages(). \    
  5.     send(userId=user_id, body=message).execute()     
  6.    print('Message Id: %s' % message['id'])     
  7.    return message   
  8.  except Exception as e:     
  9.   print('An error occurred: %s' % e)     
  10.   return None 
從這里開始,我們需要做的就是傳遞消息并執行。至此,我們已經發送了第一封電子郵件。
 

相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 好男人www影院在线观看 | 日批视频在线播放 | 中文字幕av无码专区第一页 | 亚洲日日精AV无码区A片 | 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 少妇搡BBBB搡 | 久久妇女高潮片免费观看 | 午夜福利在线永久视频 | 日日躁夜夜躁白天躁晚上 | 国产乱妇乱子视频在播放 | 欧美日韩一区中文字幕 | 人妻中文字幕无码系列 | 人妻少妇精品专区性色av | 无码人妻aⅴ一区二区三区蓬泽谣 | 嫩草影院在线观看网站 | 亚洲av无码乱码在线观看牲色 | 久久女人被添全过程A片 | 最好看的2018中文在线观看 | 日韩欧美在线看 | 无遮挡国产高潮视频免费观看 | 羞羞影院午夜男女爽爽影视 | jazzjazz国产精品 | 亚洲国产欧美国产综合久久 | 久久中文字幕人妻丝袜系列 | 大学生寝室白袜自慰gay网站 | 午夜成人看特AAAA片视频 | 一夲道av无码无卡免费 | 精品久久久久久无码人妻蜜桃 | 国产成人一卡2卡3卡4卡 | 大桥久未无码吹潮在线观看 | 办公室娇喘的短裙老师在线视频 | 欧美阿v高清资源不卡在线播放 | 少妇久久久久久久久久 | 日本卡一卡二卡乱码三卡四码 | 亚洲成a∧人片在线播放无码 | 亚洲色婷婷六月亚洲婷婷6月 | 欲求不满的寂寞人妻中文字幕 | 亚洲中日韩欧美高清在线 | 国产综合亚洲区在线观看 | xxxx麻豆| gogogo免费高清看中国 |