baronm 发表于 2023-9-1 15:06

爬取生态环境中心每日核辐射检测

本帖最后由 baronm 于 2023-9-1 15:07 编辑

最近因为日本核污染水排海事件,导致咱依赖大海的相关生态遭到破坏,为了知道日本的核污染水啥时候波及到咱这,特意用Python简单写了个程序,以便咱们获取每日的辐射值
import datetime
import time

import requests
from lxml import etree

response = requests.get('https://data.rmtc.org.cn/gis/listtype0M.html')
html_parse = etree.HTML(response.text)
lis = html_parse.xpath('//*[@class="datali"]')
datas = []
for li in lis:
    hr_url = li.xpath('.//div[@class="divname"]/a/@href')
    hr_name = (li.xpath('.//div[@class="divname"]/a/text()').replace('\r', '')
               .replace('\n', '')
               .replace('\t', '').strip())
    city = hr_name.split('(')
    time.sleep(0.2)
    response = requests.get(f'https://data.rmtc.org.cn/gis/{hr_url}')
    html_children_parse = etree.HTML(response.text)
    children_lis = html_children_parse.xpath('//*[@class="datali"]')
    for cl in children_lis:
      hr_children_name = (cl.xpath('.//div[@class="divname"]/text()').replace('\r', '')
                            .replace('\n', '')
                            .replace('\t', '').strip())
      hr_children_val = cl.xpath('.//div[@class="divval"]/span[@class="label"]/text()')
      hr_children_time = cl.xpath('.//div[@class="divval"]/span[@class="showtime"]/text()')
      datas.append({'province': city.strip(), 'city': hr_children_name, 'val': hr_children_val, 'check_time': hr_children_time})
    time.sleep(0.2)

with open(f'data_{datetime.datetime.now().strftime("%Y%m%d")}.txt', 'wt', encoding='UTF-8') as f:
    for d in datas:
      f.write(f'城市:{d["province"]}-{d["city"]},辐射值:{d["val"]},检测时间:{d["check_time"]}\r\n')

范俊恺 发表于 2023-9-2 20:09

- -这个厉害了。

啊哈哈。。。。就是不知道怎么咋用

O2H2O 发表于 2023-9-2 12:06

谢谢分享,学习了!

baronm 发表于 2023-9-3 09:46

范俊恺 发表于 2023-9-2 20:09
- -这个厉害了。

啊哈哈。。。。就是不知道怎么咋用

哈哈哈,就是运行起来后,会在当前目录下生成一个文本,文本中的数据就是每日监测的辐射值了

lzaiz24 发表于 2023-9-4 10:20

啊不错的,学习了

TheSSS 发表于 2023-9-4 18:43

感谢分享!!可惜没我家乡的城市

baronm 发表于 2023-9-5 09:37

TheSSS 发表于 2023-9-4 18:43
感谢分享!!可惜没我家乡的城市

:lol目前官方没有放开所有城市,都是一些代表性的

Stephanie36 发表于 2023-9-7 10:55

谢谢分享啦 :lol

xlc0210 发表于 2023-9-9 09:23

感谢分享,学习了
页: [1]
查看完整版本: 爬取生态环境中心每日核辐射检测