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中的内置函数getattr()介绍及示例
Jul 20 Python
python中执行shell命令的几个方法小结
Sep 18 Python
Python编写屏幕截图程序方法
Feb 18 Python
python检测远程服务器tcp端口的方法
Mar 14 Python
Python实现的爬虫功能代码
Jun 24 Python
详解python里使用正则表达式的分组命名方式
Oct 24 Python
python3.5+tesseract+adb实现西瓜视频或头脑王者辅助答题
Jan 17 Python
python中for循环把字符串或者字典添加到列表的方法
Jul 20 Python
tensorflow 实现自定义梯度反向传播代码
Feb 10 Python
tensorflow之tf.record实现存浮点数数组
Feb 17 Python
基于python实现可视化生成二维码工具
Jul 08 Python
python调用私有属性的方法总结
Jul 24 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 中执行排序与 MySQL 中排序
2009/04/21 PHP
Javascript注入技巧
2007/06/22 Javascript
jQuery ui 1.7更新小结
2009/08/15 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
javascript实现画不相交的圆
2015/04/07 Javascript
JS实现网页上随滚动条滚动的层效果代码
2015/11/04 Javascript
jQuery EasyUi实战教程之布局篇
2016/01/26 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
2016/05/10 Javascript
js实现千分符和保留几位小数的简单实例
2016/08/01 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
bootstrap中使用google prettify让代码高亮的方法
2016/10/21 Javascript
Bootstrap CSS组件之按钮组(btn-group)
2016/12/17 Javascript
vue父子组件的数据传递示例
2017/03/07 Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
2017/03/29 Javascript
微信小程序实现动态改变view标签宽度和高度的方法【附demo源码下载】
2017/12/05 Javascript
在vant 中使用cell组件 定义图标该图片和位置操作
2020/11/02 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
[01:11]辉夜杯战队访谈宣传片—CDEC.Y
2015/12/26 DOTA
使用 Python 获取 Linux 系统信息的代码
2014/07/13 Python
使用Python的PEAK来适配协议的教程
2015/04/14 Python
分享一下Python 开发者节省时间的10个方法
2015/10/02 Python
Python数据类型详解(二)列表
2016/05/08 Python
详解Python异常处理中的Finally else的功能
2017/12/29 Python
python3+pyqt5+itchat微信定时发送消息的方法
2019/02/20 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
Python自定义sorted排序实现方法详解
2020/09/18 Python
详解Python中如何将数据存储为json格式的文件
2020/11/18 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
2021/02/04 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
Html5+JS实现手机摇一摇功能
2015/04/24 HTML / CSS
中层竞聘演讲稿
2014/01/09 职场文书
军校大学生个人的自我评价
2014/02/17 职场文书
竞聘书模板
2014/03/31 职场文书
【海涛DOTA】D-cup邀请赛NV.cn vs DT.Love
2022/04/01 DOTA
解决Git推送错误non-fast-forward的方法
2022/06/25 Servers