爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 12147|回复: 17

[其他] 爬取天气后报网站逐日历史天气数据

[复制链接]

新浪微博达人勋

发表于 2019-9-26 12:40:26 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 大花园 于 2019-9-26 13:59 编辑

       网上有几个网站都发布有历史天气数据,比如2345天气网,天气后报等都发布近几年的历史逐日天气这对一般性的研究数据还是有一些帮助。近期学习利用python进行数据处理,便利用python编写了一个从天气后报网站获取历史逐日天气的小程序,分享如下:
天气后报网站为:http://www.tianqihoubao.com/,打开后选择历史天气》北京》2019年1月则得到其1月份天气列表网址为:http://www.tianqihoubao.com/lishi/beijing/month/201801.html,如part1。

更改网址中的“beijing”和“201801”则分别得到不同地区的不同月份历史天气。因此可皮批量更改地点和时间批量得到历史数据。
基于这一方法,则利用python获取其历史天气数据。借鉴网上某大神基本思路并精简许多赘余,编写脚本见part2和part3.
最终的到结果如part4和part5。
处理完毕!
脚本有不足和可以精简的地方还请大神联系指正!
part3.JPG
part5.JPG
part4.JPG
part2.JPG
part1.JPG

获取历史气象资料数据.py

3.09 KB, 下载次数: 27, 下载积分: 金钱 -5

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-9-26 13:25:27 | 显示全部楼层
???附件呢
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-9-26 13:58:55 | 显示全部楼层

附件是图片,之前写错了,代码已上传附件
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-9-27 17:45:08 | 显示全部楼层
大花园 发表于 2019-9-26 13:58
附件是图片,之前写错了,代码已上传附件

3Q up,向你学习学习。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-9-29 15:20:18 | 显示全部楼层
厉害,
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2019-10-12 14:07:08 | 显示全部楼层
牛人啊,刚刚直接拿过来试了一下,能下啊。我看看自己能不能做些修改,有问题想您请教啊。
代买里面有     city=['beijing','tianjin','shijiazhuang']

但是最后结果只是出来天津的数据啊。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-10-12 14:11:40 | 显示全部楼层
没注意最后一行,找个问题解决了。
我在消化一下时间的问题。

初学Python,楼主别笑啊。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-10-12 16:40:53 | 显示全部楼层
2013年02月27日        - /阴        11℃ / 3℃        无持续风向 /无持续风向 ≤3级

楼主,好像遇到这种情况会出错。就是好像没数据的时候,比如上面的  “-”

提示是:
  File "D:/2017_Project/sound_data/get_historic_weather_data.py", line 53, in <lambda>
    df_data_result['天气状况二']=df_data.loc[:,'天气状况'].apply(lambda x: tianqi.findall(x)[1])

IndexError: list index out of range
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-10-15 22:03:20 | 显示全部楼层
独孤酒见 发表于 2019-10-12 16:40
2013年02月27日        - /阴        11℃ / 3℃        无持续风向 /无持续风向 ≤3级

楼主,好像遇到这种情况会出错。就是好 ...

程序中还真没考虑这个情况,我看的都是“多云/阴”这个格式。回头我再修改一下
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-10-16 10:44:06 | 显示全部楼层
大花园 发表于 2019-10-15 22:03
程序中还真没考虑这个情况,我看的都是“多云/阴”这个格式。回头我再修改一下

脚本里面生成的文件有两种各个,一种是“长”的格式,比如,historyweather-beijing-201909.xls,这个文件里面是写不进去的,脚本就会提示上个帖子的错误,运行就中断了。
但是奇怪的是“短”文件名,比如 ,weather-beijing-201909,这个是可以写进去的。但是因为前面的写不进去,脚本执行终端,还得找到断点所在的时间。

这个就是目前我用了之后发现的问题。您受累看看能不能完善下。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表