您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 黔南分类信息网,免费分类信息发布

Power Query 自定义函数抓取上市公司财务数据,Power BI动态演示

2019/7/16 4:24:49发布813次查看
昨天看了那个animated bar chart race需要有数据才能做更好的演示,有网友想要抓取上市公司财报,来做股票分析,前些天也试了一下,应该是能够抓取主要的财务数据,大部分的财经网站都提供股票实时信息与上市公司财务数据,数据抓取本来就是要针对网站所能提供的数据来进行分析,然后采取相对应的方法来抓取。
power query抓取power query抓取部分的工作要分成三步:
第一步:网站分析第二步:自定义函数第三步:抓取数据第一步:网站分析
这个部分主要是找到网站数据所在的位置以及数据排列的规律,要使用谷歌浏览器来做网址分析,同时使用power query来做单个网页的抓取测试。
抓取股票代码是必须的,一般行情网站提供沪深股市的全部股票代码,这里显示一共有151页每页24行数据,页码是从0-150,具体的url通过谷歌浏览器,右键检查中的network中可以查看到。
再有就是具体的财务数据,打开任意一个公司的页面,中间的财务分析下就有对应的财务数据,这里我只需要主要财务数据,真实的url中都是通过股票代码来访问的。
第二步:自定义抓取函数
1、首先是抓取股票代码列表的的自定函数:
其实自定义部分挺简单的,先要正常的建立一个从web的查询,然后通过一步一步的操作找到最终的这个页面上的24个股票代码:这个例子中股票代码隐藏在一个json格式的数据中,要通过json解析出来。
然后在这个查询上右键>创建函数
会出来一个没有参数的提示,略过提示,就是给函数起名字:
直接打开高级编辑器,进行修改,在空的括号中输入p做为这个函数的参数,在url中找到&page=0&把0用“&p&”替换掉,替换之后是这个样子的:
&page=&p&&
这样这个自定义函数就写好了,有一个要注意的地方,这里的p是文本,在使用时如果建立0-150的列表之后,记得转换成文本之后再使用函数。
2、抓取具体数据的自定义函数:
同样要先 抓取一页数据的查询,包裹中间的处理步骤:我是不拍行数多,直接给逆透视了。
同样右键创建函数,修改参数,这个可以很清楚的看到,修改的两处。
第三步:抓取数据
先建立一个列表转换成表,设置成文本,引用第一个获取股票代码的函数生成股票代码列表:
然后排下序:
再调用抓取数据的函数来取得数据:
展开得到需要的结果:
到这里抓取数据的工作就准备好了,抓取却是个漫长的过程,我这8核16g内存抓了将近2个小时,300万行的数据。
150万行用时40分钟
animated bar chart race这个就比较简单了,这里有个度量值要写,财务数据中基本都是当期的累计值,一年4个季度,如果一年为跨度来看,就要看年报数据,所以写个度量值取出一年4次报表中日期最新的那份报表对应的数据就可以了。
再有就是注意修改年份的不汇总:
最后放上一段录制的效果:
更多关于power query 网络抓取的介绍请观看:

黔南分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录