excel抓取网页数据( 如何将网页中的数据刮到Excel中?(组图))

优采云 发布时间: 2022-04-11 15:01

  excel抓取网页数据(

如何将网页中的数据刮到Excel中?(组图))

  

  一个问题经常被讨论;“如何将网页中的数据抓取到 Excel 中?”

  使用 POWER QUERY 从网络获取数据

  使用 Power Query 从 Web 获取数据的能力非常方便。Power Query在大家不知道VBA的时候可以这样用,但是如果你知道VBA,其实还是很方便的,主要看大家的选择和喜好。

  从互联网捕获的数据也可以实时更新。在这种情况下,如果你有一些从网上抓取的完整数据集,那么加上经验公式,计算出一些从抓取的数据中得出的最终结果,比如 想法不错。我经常这样做。

  当前的 Power Query 限制只能以 HTML 格式的网表格式进行查询。一些网页使用 JavaScript 生成表格,本教程不涉及。

  我们以网易的股票为例:

  

  当然,如果你打开这个网页,你也会发现右上角会出现文件下载。您也可以选择下载文件并保存以进行数据分析,但这会有点麻烦。我们直接把这个网络数据表和我们的EXCEL建立链接,如果你有每天看股票的习惯,只要点击下方的更新按钮,就可以更新最新的股价情况。

  注意:在撰写本文时,上述 URL 提供了本示例中使用的数据,但此页面的布局和内容超出了我的控制范围,我们可以在链接后进行一些格式调整。

  如何使用 Power Query 从 Web 获取数据

  第 1 步:复制收录表格的网页的 URL。我在用

  第 2 步:Excel 2016 – 数据选项卡 > 来自网络

  

  Excel 2013及更早版本-“Power Query”选项卡>从Web导入,因为我目前使用的是2016,所以如果您使用的是之前的版本,请自行查找。

  注意:如果您在 excel 2010 或 2013 中看不到“Power Query”选项卡,您可以前往相关的网站下载。

  第 3 步:将 URL 粘贴到“来自网络”对话框中,然后单击“确定”:

  

  第 4 步:在“导航器”对话框(如下)中,左侧窗格提供网页中可用的表格列表。

  第一项“文档”收录页面的 HTML 代码,因此对我们没有任何用处,但其余表收录您可以通过 Power Query 获取的数据表。请记住,它只会显示使用 HTML 表格标签生成的表格。

  选择你要的表,类似下图,我们需要表1

  

  也可以进入WEB视图看看下面的对比,下表是否是你需要找的。

  

  技能:

  1.点击对话框右上角的全屏图标可以全屏查看导航对话框。

  2.如果要导入多个表,请选中左侧窗格中的“选择多个项目”框。

  第 5 步:选择要导入的表后,单击“转换数据”按钮。这将打开 Power Query 编辑器窗口,让您有机会在将数据加载到 Excel 或 Power Pivot 数据模型之前整理数据。

  

  清理数据后,可以将其加载到 Excel 或 Power Pivot 数据模型中。

  第 6 步:“主页”选项卡 >“关闭并加载到”:

  

  导入数据对话框将打开:

  

  提示:如果将其加载到数据模型中,请务必选择“仅创建连接”,这样您就不会复制文件中的数据,并直接在数据透视表等位置进行名称连接。

  第 7 步:刷新数据。要从网页获取更新,只需转到功能区的外部数据选项卡,然后单击全部刷新:

  

  或者,如果您有多个查询,您可以打开查询和连接窗格:

  

  Power Query网站限制

  正如我前面提到的,PowerQuery 非常擅长从 WEB 获取数据,它被格式化为 HTML 表格,而不是使用 JavaScript 生成的表格。通过检查网页源代码并查找 HTML 表格标记,您可以轻松判断表格是 HTML 还是 JavaScript。

  为此,在网页上的一些空白处右键单击>查看页面源(或类似的,取决于您使用的浏览器,我使用Windows 10系统附带的浏览器,而不是互联网的先前版本)探险家):

  

  CTRL + F 打开查找对话框。进入”

  

  如果找到HTML table标签,就确认power Query可以从页面中获取到一个表,但是不能保证就是你真正需要的那个表,因为页面上可能还有其他的表,所以可以使用我之前谈到的表进行选择。

  关于电源查询的更*敏*感*词*将在后面解释。

  Power Query 可以从无数地方获取数据,并具有大量用于排序和转换数据的工具。我之前已经介绍过一些,例如:

  合并 Excel 工作表

  从文件夹中获取文件

  当然,后面会有更多的介绍

  以上就是我们所说的使用power Query做网络爬取。当然,如果你的数据是从网络上爬出来的,VBA也是一个不错的方法。而且灵活性非常高,通过变量进行多次数据爬取。.

  视频:

  

  如果你有时觉得我的视频在记录或分类中找不到,可以转发到自己的朋友圈,供自己采集

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线