10分钟教你用Python打造天气机器人+关键字自动回复+定时发送

简介: 10分钟教你用Python打造天气机器人+关键字自动回复+定时发送

前言

Hello,各位小伙伴。自上次我们介绍了Python实现天气预报的功能以后,那个小程序还有诸多不完善的地方,今天,我们再次来完善一下我们的小程序。比如我们想给机器人发“天气”等关键字,它就自动获取天气发送给我们,或者准点准时给我们发送天气预报等消息。


先来看看效果

注:欲下载本文代码文件,请移步留言区。

后台登录效果:

微信图片_20220421153203.jpg


微信关键字回复:

微信图片_20220421153206.jpg


怎样,心动吗?废话不多说,开始干活吧。


注:欲下载本文代码文件,请移步留言区。

Part1

关键字回复

前面我们已经实现了天气的获取和发送,现在来利用itchat的几个功能,实现关键词的提取和发送相关信息吧。


在这里呢,我们需要写一个函数装饰一下itchat.msg_register([TEXT])这个函数,表示收到消息以后,额外执行一些我们期望执行的操作。(不了解修饰器的同学自己再回去补一下基础)。

1# 如果对方发的是文字,则我们给对方回复以下的东西
2@itchat.msg_register([TEXT])
3def text_reply(msg):
4    match = re.search('天气',msg['Text'])
5    if match:
6        city = msg['Text'][msg['Text'].find("+")+1:]
7        weather_main(msg['FromUserName'], city)


这部分操作也很简单,首先获取我们收到的文本消息,然后在里面找找看有没有我们想要的关键词,比如“天气”等,最后,将天气后面的城市给提取出来,获取必要的信息后,将发信人,城市传给上节课写好的weather_main()函数里面,实现消息发送。当然,上节课的weather_main()也要做相应修改,不过改动不大,大家看最后代码即可。


注:欲下载本文代码文件,请移步留言区。

Part2

定时发送

然后再来看看定时发送的功能吧。这个功能就比较简单了,一个sleep函数睡到底就行。主要是设置隔多长时间给想关的人发送天气预报。

1def timer(n):
2    '''''
3    每n秒执行一次
4    '''
5    while True:
6        weather_main("要发送的人备注", "城市")  # 此处为要执行的任务
7        time.sleep(n)


比较简单吧。

如果大家对文中所叙内容还有疑问或想要交流心得建议,欢迎移步留言区!

相关文章
|
22天前
|
存储 数据挖掘 数据库
【Python】python天气数据抓取与数据分析(源码+论文)【独一无二】
【Python】python天气数据抓取与数据分析(源码+论文)【独一无二】
|
27天前
|
Python
Python实现简易天气查询系统
Python实现简易天气查询系统
28 4
|
3月前
|
人工智能 自然语言处理 机器人
探索人工智能:使用Python构建一个简单的聊天机器人
探索人工智能:使用Python构建一个简单的聊天机器人
205 0
|
3月前
|
传感器 机器人 定位技术
Python 机器人学习手册:6~10
Python 机器人学习手册:6~10
40 0
|
3月前
|
传感器 Ubuntu 机器人
Python 机器人学习手册:1~5
Python 机器人学习手册:1~5
179 0
|
7天前
|
运维 数据可视化 Python
PYTHON中用PROPHET模型对天气时间序列进行预测与异常检测
PYTHON中用PROPHET模型对天气时间序列进行预测与异常检测
21 1
|
8天前
|
数据格式 Python
python对NOAA天气数据格式转换
python对NOAA天气数据格式转换
12 0
|
22天前
|
JSON 网络协议 前端开发
【UR六轴机械臂源码】python脱离示教器控制UR机械臂实时采集机器人位姿(优傲机器人)
【UR六轴机械臂源码】python脱离示教器控制UR机械臂实时采集机器人位姿(优傲机器人)
|
27天前
|
自然语言处理 机器人 Python
Python实现简易聊天机器人
Python实现简易聊天机器人
14 2
|
1月前
|
存储 数据可视化 API
Python项目开发:Flask基于Python的天气数据可视化平台
Python项目开发:Flask基于Python的天气数据可视化平台
48 0

热门文章

最新文章