最近在看Python的Numpy,但没什么真实数据练手
中午吃饭的时候,看到天气晴朗许多,没有前几天雾霾严重是那么白蒙蒙的一片了
转念一想:深圳好久没下雨了
我似乎已经忘了,在深圳上一次下雨是什么时候
于是打开电脑搜索深圳天气,找到
深圳气象数据网
https://data.szmb.gov.cn/wdn/
看了最近的降雨量,确实是好久没有下雨了
可是是多久下一次雨呢?我点进了
气候资料 —— 深圳国家基本气象站历史数据
下载资料还要先注册,那我再看看别的吧,发现一个
历史趋势查询
还好这里面不需要登录也可以查看历史的天气数据资料
但是
有一行小红字提示!
温馨提示:1.数据为1981年至2010年的历史数据。2.小时数据时间段不能超过三天,日数据时间段不能超过72天。
也就是说:想看全部的降雨量数据还得一次次查,而且每次最多自能查询72天
这回激发了一次性获取全部天气数据的念头
使用的Chrome浏览器,按F12,进入调试模式
在HTML源代码中找到“查询”这个按钮的点击事件:
<input class="dbutton" value="查询" onclick="sure()" type="button">
发现在点击的时候是调用了这个sure()的函数
这个函数应该放在JavaScript脚本中,HTML的搜索没找到这个方法
想必是写在了其他的js文件中,于是搜索script标签:
<script type="text/javascript" src="/wdn/design/js/basicHistoryQuery.js"></script>
看到这个名字 basicHistoryQuery 想必八九不离十了
打开这个js文件一看,还挺清楚的看到了sure()方法
获取表单数据后直接进行了post请求
$.post(LOCAL_ROOT+"/countryBase/getHistoryCountryData.do ",{dataType:dataType,yaosu:yaosu,sdate:sdate,edate:edate},function(data){
马上打开postman,新建一个post请求
method:post
url:https://data.szmb.gov.cn/countryBase/getHistoryCountryData.do
body:
dataType:1
yaosu:rain
sdate:1981-01-01
edate:2010-12-31
成功一次请求回历史上全部降雨记录!
注意:我这里使用postman遇到一个问题害我卡壳了一下,选择body类型的时候要选
x-www-form-urlencoded
而不是直接的
form-data
成功一次请求回历史上全部降雨记录!
注意:我这里使用postman遇到一个问题害我卡壳了一下,选择body类型的时候要选
x-www-form-urlencoded
而不是直接的
form-data
这回能有些真实的数据源来进行一些简单的数据分析实验了
关键是不只有降雨量,看这个js文件中
if(yaosu=="temp"){
tuName="温度趋势图";
HighchartsConfig.series[0].type = 'line';
}else if(yaosu=="rain"){
tuName="降水趋势图";
HighchartsConfig.series[0].type = 'column';
}else if(yaosu=="rh"){
tuName="相对湿度趋势图";
HighchartsConfig.series[0].type = 'line';
}else if(yaosu=="wind"){
tuName="风速风向趋势图";
HighchartsConfig.series[0].type = 'line';
}else if(yaosu=="pressure"){
tuName="气压趋势图";
HighchartsConfig.series[0].type = 'line';
}else if(yaosu=="visibility"){
tuName="能见度趋势图";
HighchartsConfig.series[0].type = 'line';
}
你只要在post请求的时候设置yaosu参数即可获取这些数据
气温 temp
降水 rain
相对湿度 rh
风速风向 wind
气压 pressure
能见度 visibility
这些数据也够玩一玩了,之后我们可以使用python数据分析的方法去分析这些数据。
话说回来:深圳到底多久没下雨了?