利用Python实现爬取山东省2022年AOI指数、PM2.5指数、PM10指数、一氧化碳含量指数、二氧化硫含量指数、二氧化氮含量指数和臭氧含量指数,将各个指标爬取得到的数据制作成一个csv格式的文件,请写出相应的代码
时间: 2023-07-10 17:30:26 浏览: 83
首先,需要安装requests和beautifulsoup4这两个Python库。可以使用以下命令进行安装:
```
pip install requests
pip install beautifulsoup4
```
然后,可以使用以下代码实现爬取数据并保存为csv文件:
```python
import csv
import requests
from bs4 import BeautifulSoup
# 构造请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 爬取数据
url = 'http://www.pm25.in/shandong'
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
# 获取指数数据
data_list = []
for tr in soup.find_all('tr')[1:]:
tds = tr.find_all('td')
aoi = tds[0].text
pm25 = tds[1].text
pm10 = tds[2].text
co = tds[3].text
so2 = tds[4].text
no2 = tds[5].text
o3 = tds[6].text
data_list.append([aoi, pm25, pm10, co, so2, no2, o3])
# 保存为csv文件
with open('shandong.csv', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerow(['AOI指数', 'PM2.5指数', 'PM10指数', '一氧化碳含量指数', '二氧化硫含量指数', '二氧化氮含量指数', '臭氧含量指数'])
writer.writerows(data_list)
```
这段代码会爬取山东省2022年的空气质量指数数据,并将数据保存为csv格式的文件。需要注意的是,这段代码中使用了请求头来模拟浏览器发送请求,提高爬取数据的成功率。
阅读全文