前言
現在正是卡塔爾世界杯激戰正酣的時候,每天都有各種各樣的新聞,而且,不同的球隊,隨著比賽的行程,關注的熱度也會發生翻天覆地的變化,
今天我們就來獲取卡塔爾世界的球隊熱搜榜,并制作自動發送郵件腳本,把這些資料發送到你的郵箱里,

開發環境
- python 3.8
- pycharm 2021.2
- requests
- SMTP
代碼分為兩個部分
- 獲取熱搜榜
- 如何發送郵件
對于本篇文章有疑問的同學可以加【資料白嫖、解答交流群:753182387】
代碼實作
獲取卡塔爾世界的球隊熱搜榜
發送請求
url = 'https://motion.baidu.com/api/kv?aid=fifa_bigdata&data=https://www.cnblogs.com/qshhl/archive/2022/12/10/{%22olympic_trend%22:{%22dataId%22:239,%22param%22:{%22pageSize%22:30,%22page%22:1}}}' response = requests.get(url) # <Response [200]>: 請求成功 json_data = https://www.cnblogs.com/qshhl/archive/2022/12/10/response.json()
獲取資料
list = json_data['data']['olympic_trend']['data']['listData']['list'] for i in range(0, 30): index = list[i]['index'] name = list[i]['name'] num = list[i]['num'] logo = list[i]['logo'] query = list[i]['query'] print(index, name, num, logo, query)

實作自動發送郵件
自動化發送郵件SMTP介紹
- SMTP中文名為簡單郵件傳輸協議,是一種提供可靠且有效的電子郵件傳輸的協議,可以傳輸系統之間的郵件資訊,
- SMTP是建立在FTP檔案傳輸服務上的一種郵件服務,主要用于系統之間的郵件資訊傳遞,并提供有關來信的通知,
- SMTP獨立于特定的傳輸子系統,且只需要可靠有序的資料流信道支持,SMTP的重要特性之一是其能跨越網路傳輸郵件,即“SMTP郵件中繼”,
- 使用SMTP,可實作相同網路處理行程之間的郵件傳輸,也可通過中繼器或網關實作某處理行程與其他網路之間的郵件傳輸,
開啟SMTP服務
登錄郵箱,點擊設定,點擊賬戶

將POP3/SMTP服務點擊為已開啟狀態;按照步驟生成授權碼,授權碼一般為16位,

按照以上步驟,SMTP服務很簡單就開啟好了,
發送郵件代碼
def sendEmail(title, content, received_mail) # 郵箱屬性配置 # 郵箱服務端 mailserver = 'smtp.qq.com' # 發件人-此郵箱是我隨便寫的 userName_SendMail = '[email protected]' # 郵箱發件授權碼-為發件人郵箱根據第四步生成的授權碼 userName_AuthCode = 'abcdefghijklmnop' # 定義郵件的接收者-我隨便寫的,若收件人較多,可用串列表示 received_mail =[received_mail] # 郵件中發送附件 # 附件配置郵箱 email = MIMEText(content, 'plain', 'utf-8') email['Subject'] = title # 定義郵件主題 email['From'] = userName_SendMail # 發件人 email['To'] = ','.join(received_mail) # 收件人(可以添加多個,若只有一個收件人,可直接寫郵箱號) # 發送郵件 smtp = smtplib.SMTP_SSL(mailserver,port=465) # QQ郵箱的埠號是465,其他郵箱的埠號可自行百度,非QQ郵箱,一般使用SMTP即可,不需要有SSL smtp.login(userName_SendMail, userName_AuthCode) smtp.sendmail(userName_SendMail, ','.join(received_mail), email.as_string()) smtp.quit() print('666')

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/539696.html
標籤:其他
上一篇:flask藍圖與專案一般結構
下一篇:flask操作資料庫
