实战爬虫:利用python中itchat模块给心爱的人每天发天气预报
发布日期:2021-06-30 15:43:05 浏览次数:2 分类:技术文章

本文共 1728 字,大约阅读时间需要 5 分钟。

最近项目搞得实在头大,好几天没正八经的给家里打电话,跟女朋友聊聊天.

昨天一狠心把项目抛在一边,玩了一会python,搜了搜关于微信的模块.

不得不说python的库确实丰富.

下面的代码实现了用了之前获取天气的代码,然后用itchat模块
给指定的人发送消息

代码比较简单,改一下CITY_NAME和name个发送语句直接就可以用

import requestsimport jsonimport itchatfrom threading import Timerglobal CITY_NAMECITY_NAME = "北京"headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36'}def find_weather(): # 获取天气 weather_url = 'http://wthrcdn.etouch.cn/weather_mini?city={}'.format(CITY_NAME) city_response = requests.get(weather_url, headers=headers) return json.loads(city_response.text)def reform_fl(str_fl): new_str = str_fl.split("[")[2].split("]")[0] if new_str.startswith("<"): result = new_str.split("<")[1] else: result = new_str return resultdef send_news(str): itchat.auto_login() # 弹出一张图片二维码,扫描登录网页微信 person= itchat.search_friends(name='一只可爱的小奶猫') # 选择给谁发送,name是他的备注 mylover = person[0]["UserName"] itchat.send(str, toUserName=mylover) Timer(86400, send_news).start() # 每隔86400秒发送一次,每天发一次if __name__ == "__main__": weather_info = find_weather() forecast_weather = weather_info.get('data').get('forecast') ganmao = weather_info.get('data').get('ganmao') str_1 = '今天是:' + forecast_weather[0].get('date') + '\n' \ + '最高温度:' + forecast_weather[0].get('high') + '\n' \ + '最低温度:' + forecast_weather[0].get('low') + '\n' \ + '风向:' + forecast_weather[0].get('fengxiang') + '\n' \ + '风力:' + reform_fl(forecast_weather[0].get('fengli')) + '\n' \ + '天气状况:' + forecast_weather[0].get('type') + '\n' str_2 = "早安亲爱滴:%s\n%s最近%s" % (str_1,CITY_NAME, ganmao) send_news(str_2)

转载地址:https://kaisarh.blog.csdn.net/article/details/103211032 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Cesium:显示一个3D地球
下一篇:实战Python:详解利用Python和Pygame实现飞机大战

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月14日 03时28分14秒