从各个网站爬取数据,一直是程序猿的专属,业余的至少也得学个Python什么的,但是小必今天告诉你,Excel也能进行网站数据的抓取。下面小必从大经济论坛中的最新精彩贴子为例,跟大家一起学习如何抓取网站中多页数据:
网址:https://bbs.pinggu.org/z_index.php?type=3&page=1
上面截图的是最新精华帖的第一页,但是要抓取的是前15页的内容:
首先观察每一页的网址的变化:
第1页:https://bbs.pinggu.org/z_index.php?type=3&page=1
第2页:https://bbs.pinggu.org/z_index.php?type=3&page=2
第3页:https://bbs.pinggu.org/z_index.php?type=3&page=3
从上面的网址中可以看出,每页的ID就是网址的最后一个数字,那么根据这个规律,接下来使用Excel来抓取以上的相关的内容。具体步骤如下:
Step-01:新建一个空白的工作表,单击【数据】-【新建查询】-【从其他源】-【自网站】,如下图所示:
Step-02:在新弹出的对话框中选择【高级】,在扩展的对话框中的【URL】部分输入网址除页码ID之外的内容,在第二个框里输入页码ID为1,单击【确定】,如下图所示:
Step-03:在新弹出的对话框中选择“table0”查询,然后单击【编辑】,如下图所示:
Step-04:在新弹出的对话框中,删除第一列无用的列,然后选中第4列,单点【转换】-【拆分列】-【按分隔符】,在弹出的对话框中选择【最左侧的分隔符】-【特殊符拆分】-【换行】-【确定】,再选中第5列,然后同样的操作进行拆分,然后修改字段名称。如下图所示:
Step-05:单击【视图】-【高级编译器】,在let前面输入“(n as number) as table =>”,然后单击【确定】(构建自定义函数),如下图所示:
Step-06:在下面的参数框里任意的数字就可以查询到任意页码的内容,但是不能抓取多页。如果要一次性抓取多个页码,请看下一个步骤。如下图所示:
Step-07:新建一个新的空查询,即右键单击【新建查询】-【其他源】-【空查询】,然后在弹出的界面中,在编辑栏里输入公式:=,回车键后生成1至15的列表,最后单击【到表】。如下图所示:
Step-08:单击【添加列】-【调用自定义函数】-【功能查询】里选择上面步骤的Table0,最后单击确定。如下图所示:
Step-09:单击扩展按钮,扩展表。如下图所示:
Step-10:得到抓取的相关数据,到此完成抓取,修改列名,关闭并上载。如下图所示:
抓取结果如下图:
领取专属 10元无门槛券
私享最新 技术干货