pycharm爬取合肥市2022年5月1日-2023年5月1日天气的完整代码
时间: 2024-06-08 12:08:58 浏览: 111
以下是使用 Python 和 PyCharm 爬取合肥市2022年5月1日-2023年5月1日天气的完整代码:
```python
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 设置请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.72 Safari/537.36'
}
# 构造 URL
start_date = '2022-05-01'
end_date = '2023-05-01'
url = f'https://tianqi.2345.com/lishi/{start_date}/101220101.shtml'
# 发送请求,获取响应
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
# 解析数据
table = soup.find('table', class_='t1')
dates = []
weathers = []
temperatures = []
for tr in table.find_all('tr')[1:]:
tds = tr.find_all('td')
date = tds[0].text.strip()
weather = tds[1].text.strip()
temperature = tds[2].text.strip()
dates.append(date)
weathers.append(weather)
temperatures.append(temperature)
# 存储数据
data = {'date': dates, 'weather': weathers, 'temperature': temperatures}
df = pd.DataFrame(data)
df.to_csv('hefei_weather.csv', index=False)
```
该代码会爬取合肥市从2022年5月1日到2023年5月1日的天气数据,并将结果保存在名为 `hefei_weather.csv` 的 CSV 文件中。你可以根据自己的需要修改日期范围和文件名。注意,这个网站有反爬机制,如果请求过于频繁可能会被封 IP。因此建议加上一些延时或者使用代理 IP。
阅读全文