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 相关文章推荐
一个基于flask的web应用诞生(1)
Apr 11 Python
浅谈python和C语言混编的几种方式(推荐)
Sep 27 Python
在python中pandas的series合并方法
Nov 12 Python
python web自制框架之接受url传递过来的参数实例
Dec 17 Python
python中对数据进行各种排序的方法
Jul 02 Python
Python线程指南分享
Nov 19 Python
pytorch 图像预处理之减去均值,除以方差的实例
Jan 02 Python
基于opencv实现简单画板功能
Aug 02 Python
用python实现一个简单计算器(完整DEMO)
Oct 14 Python
Manjaro、pip、conda更换国内源的方法
Nov 17 Python
selenium.webdriver中add_argument方法常用参数表
Apr 08 Python
python实现socket简单通信的示例代码
Apr 13 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 curl 登录163邮箱并抓取邮箱好友列表的代码(经测试)
2011/04/07 PHP
无法载入 mcrypt 扩展,请检查 PHP 配置终极解决方案
2011/07/18 PHP
spl_autoload_register与autoload的区别详解
2013/06/03 PHP
用PHP实现弹出消息提示框的两种方法
2013/12/17 PHP
php-msf源码详解
2017/12/25 PHP
PHP 访问数据库配置通用方法(json)
2018/05/20 PHP
jquery $.ajax各个事件执行顺序
2010/10/15 Javascript
利用js 进行输入框自动匹配字符的小例子
2013/06/29 Javascript
javascript Array 数组常用方法
2015/04/05 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
jQuery Checkbox 全选 反选的简单实例
2016/11/29 Javascript
jQuery 实时保存页面动态添加的数据的示例
2017/08/14 jQuery
nodejs使用redis作为缓存介质实现的封装缓存类示例
2018/02/07 NodeJs
vue-router相关基础知识及工作原理
2018/03/16 Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
2018/06/25 Javascript
webpack多入口多出口的实现方法
2018/08/17 Javascript
vue视频播放插件vue-video-player的具体使用方法
2019/11/08 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
[02:31]《DAC最前线》之选手酒店现场花絮
2015/01/30 DOTA
Python选择排序、冒泡排序、合并排序代码实例
2015/04/10 Python
Python实现多线程抓取妹子图
2015/08/08 Python
Queue 实现生产者消费者模型(实例讲解)
2017/11/13 Python
Python3 循环语句(for、while、break、range等)
2017/11/20 Python
Python操作MySQL数据库的方法
2018/06/20 Python
Python 模拟动态产生字母验证码图片功能
2019/12/24 Python
浅谈pytorch池化maxpool2D注意事项
2020/02/18 Python
python生成任意频率正弦波方式
2020/02/25 Python
Python中pass的作用与使用教程
2020/11/13 Python
纯CSS3实现扇形动画菜单(简化版)实例源码
2017/01/17 HTML / CSS
Under Armour西班牙官网:美国知名的高端功能性运动品牌
2018/12/12 全球购物
乔迁宴答谢词
2014/01/21 职场文书
煤矿开采专业求职信
2014/07/08 职场文书
2014年仓库工作总结
2014/11/20 职场文书
2015年政治教研组工作总结
2015/07/22 职场文书
毕业班工作总结
2015/08/10 职场文书
忘记Grafana不要紧2种Grafana重置admin密码方法详细步骤
2022/04/07 Servers