有时我们需要从网站获取一些数据,传统方法是通过复制粘贴,直接粘到 Excel 里。不过由于网页结构不同,并非所有的复制都能有效。有时即便成功了,得到的也是“死数据”,一旦后期有更新,就要不断重复上述操作。能否制作一个随网站自动同步的 Excel 表呢?答案是肯定的,这就是 Excel 里的 Power Query 功能。
1. 打开网页下图这个网页,是中国地震台网的官方页面(
http://news.ceic.ac.cn/)。每当有地震发生时,就会自动更新到这里。既然我们要抓取它,就要首先打开这个网页。
▲首先打开要抓取的网页
2. 确定抓取范围打开 Excel,点击“数据”→“获取数据”→“自其他源”,将要抓取的网址粘贴进来。此时 Power Query 会自动对网页进行分析,然后将分析结果显示在选框内。以本文为例,Power Query 共分析出两组表格,点击找到我们所需的那个,然后再点击“转换数据”。片刻后,Power Query 就会自动完成导入。
▲建立查询,确定抓取范围
3. 数据清洗导入完成后,就可以通过 Power Query 进行数据清洗了。所谓“清洗”说白了就是一个预筛选过程,我们可以在这里挑选自己所需的记录,或者对不需要的列进行删除与排序操作。其中右键负责删除数据列,面板中的“保留行”用来筛选自己所需的记录。清洗完成后,点击左上角的“关闭并上载”即可上传 Excel。
▲数据“预清洗”