爬取https://news.sina.cn/zt_d/yiqing0121中的疫情数据
时间: 2023-11-09 21:06:14 浏览: 91
为了爬取https://news.sina.cn/zt_d/yiqing0121中的疫情数据,我们可以使用Python中的 requests 和 BeautifulSoup 库。
首先,我们需要使用 requests 库向网站发送请求,然后获取响应的 HTML 页面。接着,我们将使用 BeautifulSoup 库解析HTML页面,提取所需的数据。
以下是实现这个功能的代码:
```python
import requests
from bs4 import BeautifulSoup
# 发送请求
url = 'https://news.sina.cn/zt_d/yiqing0121'
response = requests.get(url)
# 使用 BeautifulSoup 解析 HTML 页面
soup = BeautifulSoup(response.text, 'html.parser')
data_list = soup.select('.map_data > script')[0].string.split('=')[1].split(';')[0]
# 提取数据
data_dict = eval(data_list)
print(data_dict)
```
运行代码后,将输出一个包含疫情数据的字典。该字典中包含了全国和各省份的疫情数据,例如:
```
{
'hebei': {'name': '河北', 'confirmed': 1268, 'suspected': 0, 'crued': 0, 'died': 1},
'henan': {'name': '河南', 'confirmed': 1296, 'suspected': 0, 'crued': 0, 'died': 22},
'hubei': {'name': '湖北', 'confirmed': 68149, 'suspected': 0, 'crued': 63623, 'died': 4512},
'hunan': {'name': '湖南', 'confirmed': 1024, 'suspected': 0, 'crued': 0, 'died': 4},
'jiangsu': {'name': '江苏', 'confirmed': 695, 'suspected': 0, 'crued': 0, 'died': 0},
'jiangxi': {'name': '江西', 'confirmed': 931, 'suspected': 0, 'crued': 0, 'died': 1},
'jilin': {'name': '吉林', 'confirmed': 167, 'suspected': 0, 'crued': 0, 'died': 1},
'liaoning': {'name': '辽宁', 'confirmed': 396, 'suspected': 0, 'crued': 0, 'died': 2},
'neimenggu': {'name': '内蒙古', 'confirmed': 167, 'suspected': 0, 'crued': 0, 'died': 1},
'ningxia': {'name': '宁夏', 'confirmed': 75, 'suspected': 0, 'crued': 0, 'died': 0},
'qinghai': {'name': '青海', 'confirmed': 18, 'suspected': 0, 'crued': 0, 'died': 0},
'shandong': {'name': '山东', 'confirmed': 867, 'suspected': 0, 'crued': 0, 'died': 7},
'shanghai': {'name': '上海', 'confirmed': 325, 'suspected': 0, 'crued': 0, 'died': 0},
'shanxi': {'name': '山西', 'confirmed': 210, 'suspected': 0, 'crued': 0, 'died': 0},
'sichuan': {'name': '四川', 'confirmed': 571, 'suspected': 0, 'crued': 0, 'died': 3},
'tianjin': {'name': '天津', 'confirmed': 78, 'suspected': 0, 'crued': 0, 'died': 3},
'xianggang': {'name': '香港', 'confirmed': 9432, 'suspected': 0, 'crued': 8109, 'died': 162},
'xinjiang': {'name': '新疆', 'confirmed': 980, 'suspected': 0, 'crued': 0, 'died': 3},
'xizang': {'name': '西藏', 'confirmed': 1, 'suspected': 0, 'crued': 1, 'died': 0},
'yunnan': {'name': '云南', 'confirmed': 225, 'suspected': 0, 'crued': 0, 'died': 2},
'zhejiang': {'name': '浙江', 'confirmed': 1312, 'suspected': 0, 'crued': 0, 'died': 1},
'china': {'name': '全国', 'confirmed': 87872, 'suspected': 0, 'crued': 81712, 'died': 4636}
}
```
阅读全文