夏季海浪沙滩是避暑首选,但如果不是常年在海边居住的朋友,对大海潮汐就不太了解,所以要来一次完美的海滨之旅,就要事先做好规划,了解要去的海边的抄袭规律。
数据抓取函数制作你去网上搜索要去的海滩的潮汐表,就会有很多答案,我喜欢这个网站,简单直接,稍微看了一下,这个网站的数据格式挺有意思的是方括号括起来的数据,用的是时间戳记录时间,要正确的显示时间,需要一个转换的公式,把时间戳转换成标准时间。
这种格式也好处理,毕竟很整齐,用“],["符号分列,然后逆透视,在替换掉不需要的符号就可以了:
接下来是时间转换:
解释一下这个公式:
([值.1]+8*3600)/24/3600+70*365+19
+8*3600:是时区调整,我们所在东八区,要加上8个小时,每个小时3600秒/24/3600:转换回日期数量级了+70*365+19=1970-1-1所以说时间戳就是现在的时间减去1970-1-1的时间差,用秒为数量级的一个表示方式。
公式的到的是小数,格式修改为日期时间就可以了:
以上步骤是我们单个网页抓取的过程,这个网址是可以直接用来抓取数据的,其中有两个关键数据:
http://www.c++haoxb.com/12/?day=2019-08-02
一个是12代表了港口,再有就是日期
我们把上面的单个抓取过程,做成一个函数,用两个参数来调用函数就可以了:
中间的很多步骤,不用去管,只要修改上面的参数及应用参数的位置就可以了。
还有一个问题是港口的编码怎么获取?我们回到网站港口选择页面,有港口列表,把这个页面用文本格式抓下来,简单的几步处理一下就能得到港口及编号的对照表。
我们来做两个测试:
多个港口同一天的潮汐数据抓取:用上面最后一步的结果,自定义列引用函数:
然后展开表格,删除不要的列,加载数据
做一个简单的切片器查询:
全国485个港口的8月2日的潮汐数据查询就做好了。
单个港口未来15天的潮汐查询我们要准备一个表格,日期列表,要转换成文本格式,调用函数:
展开表格,加载数据:
我们把所有这些天的数据放到一个一个图形中:
可以看出来营口鲅鱼圈8月2-4号是大潮,农历是七月初二到初四。
8月3日中午12:00潮水退至最低,如果从沈阳出发2个半小时到达鲅鱼圈,早上起来吃过早餐,出发,中午赶海,晚间回沈阳就可以了。
更多Power Query学习资料请订阅: