Python爬取世界杯热搜榜并制作脚本自动发送信息到邮箱的过程
作者:松鼠爱吃饼干 时间:2021-01-21 20:35:53
前言
现在正是卡塔尔世界杯激战正酣的时候,每天都有各种各样的新闻。而且,不同的球队,随着比赛的进程,关注的热度也会发生翻天覆地的变化。
今天我们就来获取卡塔尔世界的球队热搜榜,并制作自动发送邮件脚本,把这些数据发送到你的邮箱里。
开发环境
python 3.8
pycharm 2021.2
requests
SMTP
代码分为两个部分
获取热搜榜
如何发送邮件
代码实现
获取卡塔尔世界的球队热搜榜
发送请求
url = 'https://motion.baidu.com/api/kv?aid=fifa_bigdata&data={%22olympic_trend%22:{%22dataId%22:239,%22param%22:{%22pageSize%22:30,%22page%22:1}}}'
response = requests.get(url)
# <Response [200]>: 请求成功
json_data = 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 = 'XXXXXXXX@qq.com'
# 邮箱发件授权码-为发件人邮箱根据第四步生成的授权码
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.cnblogs.com/qshhl/p/16971861.html
标签:Python,爬取,世界杯,热搜榜,发送邮箱
0
投稿
猜你喜欢
flask循环导入的问题解决
2023-10-01 10:28:52
用Python实现一个简单的能够发送带附件的邮件程序的教程
2023-04-08 11:45:48
解决django接口无法通过ip进行访问的问题
2023-09-15 14:07:27
选择utf-8还是GB2312?
2009-06-19 13:05:00
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2021-02-08 22:41:59
python 实现在txt指定行追加文本的方法
2021-09-08 22:14:40
Python 中闭包与装饰器案例详解
2021-08-08 12:28:32
MySQL取出随机数据
2024-01-19 22:12:02
如何通过shell脚本自动生成vue文件详解
2024-05-22 10:28:35
js创建jsonArray传输至后台及后台全面解析
2024-05-03 15:57:47
教你一招完美解决vscode安装go插件失败问题
2024-05-09 09:47:20
Python动态加载模块的3种方法
2023-12-22 21:33:29
Python中ini配置文件读写的实现
2021-03-15 09:52:01
Python排序算法之堆排序算法
2023-01-17 02:00:55
pandas 实现将重复表格去重,并重新转换为表格的方法
2023-09-09 05:26:58
深入浅出Python中三个图像增强库的使用
2021-12-08 08:33:55
为python设置socket代理的方法
2021-09-23 16:25:34
python定时利用QQ邮件发送天气预报的实例
2021-10-14 00:45:16
JavaScript实现的反序列化json字符串操作示例
2024-04-10 10:46:01
python如何写try语句
2022-05-03 07:21:39