python使用itchat模块给心爱的人每天发天气预报


Posted in Python onNovember 25, 2019

本文实例为大家分享了python给心爱的人每天发天气预报的具体代码,供大家参考,具体内容如下

下面的代码实现了用了之前获取天气的代码,然后用itchat模块

给指定的人发送消息

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

import requests
import json
import itchat
from threading import Timer

global CITY_NAME
CITY_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 result


def 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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python性能提升之延迟初始化
Dec 04 Python
Python正则表达式教程之三:贪婪/非贪婪特性
Mar 02 Python
python 第三方库的安装及pip的使用详解
May 11 Python
Python3标准库总结
Feb 19 Python
详解Python3除法之真除法、截断除法和下取整对比
May 23 Python
python绘制无向图度分布曲线示例
Nov 22 Python
python实现局域网内实时通信代码
Dec 22 Python
使用 Python 在京东上抢口罩的思路详解
Feb 27 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
Jun 30 Python
Linux安装Python3如何和系统自带的Python2并存
Jul 23 Python
python程序实现BTC(比特币)挖矿的完整代码
Jan 20 Python
PyTorch 如何设置随机数种子使结果可复现
May 12 Python
python pygame实现挡板弹球游戏
Nov 25 #Python
numpy 返回函数的上三角矩阵实例
Nov 25 #Python
如何基于Python获取图片的物理尺寸
Nov 25 #Python
Python:slice与indices的用法
Nov 25 #Python
python科学计算之narray对象用法
Nov 25 #Python
python运用pygame库实现双人弹球小游戏
Nov 25 #Python
python科学计算之scipy——optimize用法
Nov 25 #Python
You might like
如何写php守护进程(Daemon)
2015/12/30 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
php的RSA加密解密算法原理与用法分析
2020/01/23 PHP
JavaScript 入门·JavaScript 具有全范围的运算符
2007/10/01 Javascript
用console.table()调试javascript
2014/09/04 Javascript
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
详解JavaScript的Date对象(制作简易钟表)
2020/04/07 Javascript
[原创]Bootstrap 中下拉菜单修改成鼠标悬停直接显示
2016/04/14 Javascript
JavaScript中的boolean布尔值使用学习及相关技巧讲解
2016/05/26 Javascript
分享JS代码实现鼠标放在输入框上输入框和图片同时更换样式
2016/09/01 Javascript
JS条形码(一维码)插件JsBarcode用法详解【编码类型、参数、属性】
2017/04/19 Javascript
完美解决浏览器跨域的几种方法(汇总)
2017/05/08 Javascript
web前端vue实现插值文本和输出原始html
2018/01/19 Javascript
Angular 向组件传递模板的两种方法
2018/02/23 Javascript
详解在HTTPS 项目中使用百度地图 API
2019/04/26 Javascript
使用localStorage替代cookie做本地存储
2019/09/25 Javascript
vue 实现锚点功能操作
2020/08/10 Javascript
[48:21]林俊杰圣堂刺客超神杀戮秀
2014/10/29 DOTA
[45:18]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第一场
2018/04/04 DOTA
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
[01:02:00]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第三场 1月24日
2021/03/11 DOTA
Python 3中的yield from语法详解
2017/01/18 Python
利用Python中的pandas库对cdn日志进行分析详解
2017/03/07 Python
python 获取指定文件夹下所有文件名称并写入列表的实例
2018/04/23 Python
python递归实现快速排序
2018/08/18 Python
基于python指定包的安装路径方法
2018/10/27 Python
Python 实现输入任意多个数,并计算其平均值的例子
2019/07/16 Python
python多线程同步之文件读写控制
2021/02/25 Python
手工制作的意大利礼服鞋:Ace Marks
2018/12/15 全球购物
门店业绩提升方案
2014/06/08 职场文书
乌镇导游词
2015/02/02 职场文书
实习护士自荐信
2015/03/25 职场文书
拾金不昧表扬信怎么写
2015/05/04 职场文书
zabbix监控mysql的实例方法
2021/06/02 MySQL
教你怎么用Python selenium操作浏览器对象的基础API
2021/06/23 Python
Redis高并发缓存架构性能优化
2022/05/15 Redis