2019-06-20 13:47:27 4156瀏覽
6月17日22分25分,四川省宜賓市長(zhǎng)寧縣發(fā)生了6.0級(jí)地震,成都高新減災(zāi)研究所與應(yīng)急管理部門聯(lián)合建設(shè)的大陸地震預(yù)警網(wǎng)成功預(yù)警本次地震,提前10秒向宜賓市預(yù)警,提前61秒向成都預(yù)警。
4.本次項(xiàng)目從中國(guó)地震臺(tái)網(wǎng)爬取地震信息,鏈接為:http://news.ceic.ac.cn/index.html?time={int(time.time())}。
import requests, time from lxml import etree from wxpy import * # 微信登陸 bot = Bot() # 查找好友 my_friend = bot.friends().search(u'stormwen')[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())}' # 請(qǐng)求數(shù)據(jù) 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()') # 如果日志為空,發(fā)送最新的一條地震信息 if rember == '': msg = f'北京時(shí)間:{res[1]},在緯度:{res[2]} ,經(jīng)度{res[3]} 處發(fā)生了{(lán)res[0]}級(jí)地震,震源深度{res[4]}千米,參考位置:{res[5]}(5分鐘更新一次)' # 發(fā)送信息 my_friend.send(msg) print('日志為空,msg:', msg) # 如果日志非空,就判斷是否是最新的,發(fā)送日志之后的所有新的數(shù)據(jù) else: i = res.index(rember) while i > 1: i -= 6 msg = f'北京時(shí)間:{res[i]},在緯度:{res[i+1]} ,經(jīng)度{res[i+2]} 處發(fā)生了{(lán)res[i-1]}級(jí)地震,震源深度{res[i+3]}千米,參考位置:{res[i+4]}(5分鐘更新一次)' # 發(fā)送信息 my_friend.send(msg) print('日志非空,msg:', msg) time.sleep(300) rember = res[1] # 更新日志(記錄最新發(fā)送的地震信息) with open('log.txt', 'w') as f: f.write(res[1]) except: time.sleep(60)
3.結(jié)果展示
【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】 【掃碼進(jìn)入Python全棧開發(fā)免費(fèi)公開課】
查看更多關(guān)于"Python開發(fā)資訊"的相關(guān)文章>