python爬去历史天气数据
时间: 2023-08-11 12:31:52 浏览: 96
要爬取历史天气数据,可以使用 Python 的 requests 库和 BeautifulSoup 库来实现。以下是一个简单的示例代码,可以获取某个城市在某个时间段内的天气数据:
```python
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'}
# 城市名称和时间段,可以根据需求修改
city = '北京'
start_date = '20210101'
end_date = '20210131'
# 构造请求URL
url = f'http://lishi.tianqi.com/{city}/{start_date}-{end_date}.html'
# 发送HTTP请求
res = requests.get(url, headers=headers)
# 解析HTML页面
soup = BeautifulSoup(res.text, 'html.parser')
# 获取天气数据表格
table = soup.find('div', {'class': 'tqtongji2'}).find('table')
# 解析表格数据
rows = table.find_all('tr')
for row in rows[1:]:
data = row.find_all('td')
date = data[0].text.strip()
weather = data[1].text.strip()
temperature = data[2].text.strip()
wind_direction = data[3].text.strip()
wind_power = data[4].text.strip()
print(date, weather, temperature, wind_direction, wind_power)
```
这段代码会爬取北京市在2021年1月1日至2021年1月31日的历史天气数据,并打印出每一天的天气情况。你可以根据需要修改城市、时间段等参数。
阅读全文