Power BI Report Server REST API 实战

本文是D-BI之Power BI REST API系列第四篇,主要讲解利用Postman工具和Python两种方式访问PBIRS REST API

前述

微软Power BI团队在发布面向Power BI Service的REST API的同时,也发布了针对于其本地版本的Power BI Report Server (PBIRS) 的REST API, 利用它,我们可以用编程的方式在报表服务器创建,删除.PBIX,.RDL以及.XLSX等文件,执行Power BI报表刷新,检查关联数据源连接状态以及查看数据集,数据源详细信息等等,下文将首先使用Postman工具(一种API测试工具)进行API测试,然后使用Python替代Postman完成对应操作。

(关于Power BI Service版本的REST API使用方法已在此前文章有详细讲述,链接见文末)

实战

面向PBIRS的REST API的详细文档位于SwaggerHub网站,该文档
提供了丰富说明,包括:

  • CacheRefreshPlans
  • CatalogItems
  • DataSets
  • DataSources
  • ExcelWorkbooks
  • Extensions
  • FavoriteItems
  • Folders
  • Kpis
  • LinkedReports
  • Me
  • MobileReports
  • PowerBIReports
  • Reports
  • Resources
  • Session
  • Subscriptions
  • System

下文将以获取Power BI报表详细信息为例讲解其调用方法。

一. 使用Postman

首先,登录Postman网站创建新项目. PBIRS API的请求URL格式为:

<PBIRS Web门户URL>/api/v2.0/<API命令>
#注意是Web门户URL,而非Web服务URL

根据文档,可知要获取Power BI报表数据集的请求URL的API命令为“/PowerBIReports”。了解这些后,只需按下图步骤操作即可:

在这里插入图片描述
此处需注意在Username部分,考虑到安全因素,可以使用变量避免敏感信息上传服务器,有关在Postman使用变量,参阅此文档

完成后直接点击发送,这样我们就成功获取到了Power BI报表的详细信息,如下:

在这里插入图片描述

二. 使用Python

使用Python调用PBIRS API,过程略不同,原理相通。首先安装必要运行库:

pip install requests-ntlm2

编辑脚本如下:

import requests
import os
from requests_ntlm2 import HttpNtlmAuth

username = <在此输入PBIRS账户>
password = <在此输入PBIRS密码>
baseurl = 'http://localhost/Reports2016/api/v2.0/'
queryurl = 'PowerBIReports'

header = {
    'username':username,
    'password':password,
    'Workstation':<在此输入Hostname>
}

auth=HttpNtlmAuth(username,password)

result = requests.get(os.path.join(baseurl,queryurl),auth=auth)
print(result.text)

运行脚本后,成功返回结果:

在这里插入图片描述
至此,我们成功地使用编程方式调用PBIRS API。

总结

根据上文可知,PBIRS API的使用并不复杂,虽然国外相关资料不多,甚至在国内相关资料也几乎空白,但这并不代表PBIRS API没有用处,相反,它的能力被许多人忽视,且还有许多尚待挖掘之处。

更多

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DAVIS-BI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值