所有文章 > API开发 > 如何用Power BI批量调用API数据?
如何用Power BI批量调用API数据?

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

前面介绍如何用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星球

#你可能也喜欢这些API文章!