Power Query抓取各省高考分数线的方法
网址分析的过程之前讲过好多遍了,就不罗嗦了,我们来看分析的结果:
有三个变量,
- 页面:基本上只有一页,青海是两页
- 省区代码:比较乱,没有什么规律
- 年份:提供2014-2019数据查询
先随意抓取一页:
抓取后我们多试几种格式,看看数据的规律性,这个网页的数据,当我们用TXT格式时,看起来很像JSON格式的数据,我们试着解析一下:
果然可以使用JSON解析,展开后就是我们想要的结果:
试探的过程很顺利,接下来就是制作自定义抓取函数:
在这个试探抓取的查询上右键>创建函数:
然后进到高级编辑器中修改这个函数:
添加参数:
- p:页码
- id:省区代码
- y:年份
并把这个三个参数带入到网址中用&符号连接起来:
然后是省区代码的准备:
一共31行:这个我没找到简便方法,直接手工录入吧,在网址检查那里逐页的找到代码输入:
接下来可以开始抓取了:
如果只抓取2019年的数据,就在这个省区代码表中添加列引用自定义函数就可以了:
注意要把id这列变成文本列,才可以正常抓取。
然后展开表:
这里抓取的都是各省的第一页,我们通过网页查看,发现只有青海是两页,我们再单独引用一次函数抓取青海的第二页:
然后追加合并后的结果就是我们需要的数据了,加载后就可以制作数据可视化:
赞 (0)