如何用Power BI批量调用API数据?

教育   2024-10-19 11:53   河南  

前面介绍如何用PowerBI通过API接口获取数据的方法:

Power BI如何通过API获取数据?

它只介绍了单次调取,其实调用API的一大优势在于高效批量操作,一次性获取大量数据,降低时间成本,提升整体工作效率。

PowerBI也可以实现批量调取,仍然以上篇文章的案例为例,来看看如何一次性获取多只股票的历史交易数据,下面是具体操作步骤。


1、先获取一只股票的数据

按上面文章介绍的例子,比如先调取

贵州茅台2024年9月的交易记录,网址构造如下:

https://tsanghi.com/api/fin/stock/XSHG/daily?token={你的token}&ticker=600519&start_date=2024-09-01&end_date=2024-09-30


按前面介绍的方法通过web导入并整理后的效果是这样的:

这样就做好了一只股票的数据查询。


2、将单只股票的查询封装成自定义函数。


右键该查询,创建函数,


然后会弹出窗口,提示未找到参数,可以不用理会,直接点击“创建”。


函数名称可以任意命名,比如命名为"股票历史数据"。

然后打开编辑栏:

将“源”这个步骤以及前面的字符:

= () => let

    源 = Json.Document(Web.Contents("https://tsanghi.com/api/fin/stock/XSHG/daily?token=你的token&ticker=600519&&start_date=2024-09-01&end_date=2024-09-30"))


改成:

= (exchange_code,ticker,start_date,end_date) => 

let 源 = Json.Document(Web.Contents("https://tsanghi.com/api/fin/stock/"&exchange_code&"/daily?token=你的token&ticker="&ticker&"&&start_date="&start_date&"&end_date="&end_date))

也就是将网址中的交易所代码、股票代码、开始日期、结束日期参数化,并用&将它们合并成一个完整的网址。

这样就制作完成了自定义函数。


3、调用自定义函数,批量获取数据

你想调用哪些股票的交易数据,先做好一个表,比如:

由于我们在自定义函数中没有指定参数类型,默认都是文本,所以这个列表中的每列字段类型也都改成文本型。

点击调用自定义函数:


在弹出的窗口中,"功能查询"选择上面建好的自定义函数,并在每个参数中选择相应的列:


然后表中就新增了一列:


展开即可得到这个列表中每只股票的交易数据,这样就实现了多只股票的一次性批量获取。

其实这个方法和我们之前介绍用自定义函数批量合并excel的思路是一致的:PowerQuery批量合并Excel,原来这个方法更好用


本文的分享仅用于学习交流,数据的获取和使用请确保符合法律法规和网站使用规范。





PowerBI星球的最新版内容合辑,值得你收藏学习:
「PowerBI星球」内容合集


如果你想深入学习Power BI,欢迎加入PowerBI星球学习社群,获取更多学习资源,和6k+ 深度学习者一起精进~

PowerBI星球
海量干货,帮你轻松上手 Power BI
 最新文章