excel抓取网页动态数据(PowerQueryBarChart抓取部分的工作要分成(组图))

优采云 发布时间: 2021-12-25 21:04

  excel抓取网页动态数据(PowerQueryBarChart抓取部分的工作要分成(组图))

  昨天我看到 Animated Bar Chart Race 需要数据来进行更好的展示。有网友想抓取上市公司的财报进行股票分析。我前几天也试过了。它应该能够捕获主要的财务数据。, 大多数金融网站提供上市公司的实时股票信息和财务数据。数据采集​​就是对网站所能提供的数据进行分析,然后采取相应的方法进行采集。

  Power Query 爬网

  Power Query爬取部分的工作应该分为三个步骤:

  第一步:网站分析

  这部分主要是寻找网站数据的位置和数据排列的规律。谷歌浏览器用来做网站分析,Power Query用来做单个网页的爬行测试。

  有必要抢股票代码。综合报价网站提供沪深股市所有股票代码。这里显示了 151 页,每页 24 行数据。页码为 0-150。特定的 URL 由 Google 浏览器检查并右键单击。可以在网络上查看。

  

  然后是具体的财务数据。打开任意一家公司的页面,中间的财务分析下会有相应的财务数据。这里我只需要主要的财务数据。真正的 URL 是通过股票代码访问的。

  

  第二步:自定义fetch函数

  1、 首先是抓取股票代码列表的自定义函数:

  事实上,定制部分非常简单。首先,我们需要正常从网页上建立一个查询,然后通过一步一步的操作找到这个页面最后的24个股票代码:在这个例子中,股票代码隐藏在一个JSON格式的数据中。, 要通过 JSON 解析。

  

  然后右键单击此查询> 创建函数

  

  会有一个没有参数的提示。要跳过提示,请命名函数:

  

  直接打开高级编辑器,进行修改,在空括号中输入p作为该函数的参数,在url中找到&page=0&,将0替换为“&p&”。更换后的样子是这样的:

  &page="&p&"&

  

  这样,这个自定义函数就写好了。有一点需要注意。这里,p 是文本。如果在使用时创建了0-150的列表,请记得在使用该功能之前将其转换为文本。

  2、 捕获特定数据的自定义函数:

  还需要先抓取一页数据,包中间的处理步骤:不想多行,直接给出逆透视图。

  

  同理,右击创建函数,修改参数。这在两个修改的地方可以清楚地看到。

  

  第 3 步:抓取数据

  首先创建一个列表,将其转换为表格,将其设置为文本,并使用第一个获取股票代码的函数生成一个股票代码列表:

  

  然后按以下顺序排序:

  

  然后调用抓取数据的函数来获取数据:

  

  展开以获得所需的结果:

  

  至此,捕获数据的工作已经准备就绪,但是捕获是一个漫长的过程。我用8核16G内存近2小时捕获了300万行数据。

  

  40 分钟 150 万行

  

  *敏*感*词*条形图竞赛

  这个比较简单。这是要写入的测量值。财务数据基本上是当期的累计值。一年有四个季度。如果一年是跨度,就需要看年报数据,所以写一个测量值,把一年4份报表中日期最晚的报表对应的数据拿出来就行了。

  

  然后就是要注意修改年份的非汇总:

  

  最后放个录音效果:

  

  有关 Power Query 网页抓取的详细信息,请观看:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线