因论文实验需求,需要历史天气数据作为输入参数之一,因此特使用Python编写网络爬虫,爬取数据均来自历史天气网的历史天气。
依赖包
- bs4:解析HTML或XML
- requests:发送Http请求
- xlwt:读写Excel文件
- MySQLdb: 连接mysql数据库
Python代码
|
|
使用说明
该代码可以实现爬取全国历史天气数据的爬取, 空间尺度可以精确到区级,包含了每日天气状况、最高最低气温、风向、风力数据。时间跨度从2011年1月(部分地区数据开始时间稍晚)至今。
代码运行时可以选择数据存储到数据库或者是Excel:
当选择数据库时,应输入数据库的连接信息,包括主机地址、数据库端口、用户名、密码和数据库名:
程序首先会自动创建一个名为history_weather
的表,然后自动爬取所有城市所有年月的天气数据,存储到该表中:
结果:
当选择存储到Excel时,程序首先会让用户选择即将获取的城市,输入一个城市名,程序将先检测是否有该城市数据
存在该城市数据,则要求用户输入保存路径,如果不输入(直接回车),则输入Excel文件将直接保存到c:/weather
中。
如果用户想需要获取所有城市的数据,则在输入城市名时输入all
结果: