python获取地震信息 微信实时推送


Posted in Python onJune 18, 2019

本文实例为大家分享了python获取地震信息微信实时推送的具体代码,供大家参考,具体内容如下

import requests,time
from lxml import etree
from wxpy import *
 
# 微信登陆
bot = Bot()
# 查找好友
group = bot.groups().search('珍爱生命 远离lisp')[0] #写自己的讨论组名称
 
with open('log.txt', 'r') as f:
 rember = f.readline()
 
headers = {
  'User-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36',
  'cookie':'Hm_lvt_e0025cd5d352165f8a646ccea5beb27d=1543211803; Hm_lpvt_e0025cd5d352165f8a646ccea5beb27d=1543211803',
 }
 
while True:
 try:
  url = f'http://news.ceic.ac.cn/index.html?time={int(time.time())}'
  # 请求数据
  res = requests.get(url,headers = headers).text.encode('ISO-8859-1').decode('utf8')
  html_ele = etree.HTML(res)
  #返回列表
  res = html_ele.xpath('//*[@id="news"]//td//text()')
 
  # 如果日志为空,发送最新的一条地震信息
  if rember == '':
   msg = f'北京时间:{res[1]},在纬度:{res[2]} ,经度{res[3]} 处发生了{res[0]}级地震,震源深度{res[4]}千米,参考位置:{res[5]}(5分钟更新一次)'
   # 发送信息
   group.send(msg)
   print('日志为空,msg:', msg)
 
  # 如果日志非空,就判断是否是最新的,发送日志之后的所有新的数据
  else:
   i = res.index(rember)
   while i > 1:
    i -= 6
    msg = f'北京时间:{res[i]},在纬度:{res[i+1]} ,经度{res[i+2]} 处发生了{res[i-1]}级地震,震源深度{res[i+3]}千米,参考位置:{res[i+4]}(5分钟更新一次)'
    # 发送信息
    group.send(msg)
    print('日志非空,msg:',msg)
 
  time.sleep(300)
  rember = res[1]
  # 更新日志(记录最新发送的地震信息)
  with open('log.txt', 'w') as f:
   f.write(res[1])
 except:
  time.sleep(60)

# 运行后10秒左右会有弹框显示二维码,扫描后即登陆自己的账号,并选择匹配的讨论组名称进行发送.

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

Python 相关文章推荐
python正则表达式match和search用法实例
Mar 26 Python
Python检测QQ在线状态的方法
May 09 Python
Python提取Linux内核源代码的目录结构实现方法
Jun 24 Python
Python日期时间对象转换为字符串的实例
Jun 22 Python
python批量修改文件夹及其子文件夹下的文件内容
Mar 15 Python
python3实现字符串操作的实例代码
Apr 16 Python
PyQt5实现从主窗口打开子窗口的方法
Jun 19 Python
基于Python实现大文件分割和命名脚本过程解析
Sep 29 Python
django 实现celery动态设置周期任务执行时间
Nov 19 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
Mar 09 Python
详解Python IO口多路复用
Jun 17 Python
python实现文件+参数发送request的实例代码
Jan 05 Python
python实现月食效果实例代码
Jun 18 #Python
详解Python3中setuptools、Pip安装教程
Jun 18 #Python
Python生成指定数量的优惠码实操内容
Jun 18 #Python
python实现文件的备份流程详解
Jun 18 #Python
python绘制地震散点图
Jun 18 #Python
python f-string式格式化听语音流程讲解
Jun 18 #Python
python实现雪花飘落效果实例讲解
Jun 18 #Python
You might like
解析PHP可变函数的经典用法
2013/06/20 PHP
php中apc缓存使用示例
2013/12/25 PHP
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
JavaScript表单常用验证集合
2008/01/16 Javascript
验证控件与Button的OnClientClick事件详细解析
2013/12/04 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
bootstrap输入框组代码分享
2016/06/07 Javascript
JS工作中的小贴士之”闭包“与事件委托的”阻止冒泡“
2016/06/16 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(下)
2018/04/18 Javascript
详解Vue2.0配置mint-ui踩过的那些坑
2018/04/23 Javascript
nodejs 十六进制字符串型数据与btye型数据相互转换
2018/07/30 NodeJs
利用Webpack实现小程序多项目管理的方法
2019/02/25 Javascript
基于Web Audio API实现音频可视化效果
2020/06/12 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
[36:20]KG vs SECRET 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
python操作日期和时间的方法
2014/03/11 Python
简单介绍Python中的try和finally和with方法
2015/05/05 Python
Python实现的建造者模式示例
2018/08/06 Python
Python实现注册、登录小程序功能
2018/09/21 Python
在IPython中执行Python程序文件的示例
2018/11/01 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?
2019/05/07 Python
python3获取文件中url内容并下载代码实例
2019/12/27 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
2020/01/10 Python
python 使用事件对象asyncio.Event来同步协程的操作
2020/05/04 Python
Python 分布式缓存之Reids数据类型操作详解
2020/06/24 Python
详解Sticky Footer 绝对底部的两种套路
2017/11/03 HTML / CSS
美国最大的网络男装服装品牌:Bonobos
2017/05/25 全球购物
如何在Shell脚本中使用函数
2015/09/06 面试题
园长自我鉴定
2013/10/06 职场文书
文明村镇申报材料
2014/05/06 职场文书
因工资原因离职的辞职信范文
2015/05/12 职场文书
风雨哈佛路观后感
2015/06/03 职场文书
爱护公物主题班会
2015/08/17 职场文书
教你怎么用Python监控愉客行车程
2021/04/29 Python
python读取mat文件生成h5文件的实现
2022/07/15 Python