finebi(帆软)是一个BI工具,可以实现无代码的大屏展示,效果很棒。

通过python可以构建比较复杂的web 应用,所以二者结合,可以在python的web应用中嵌入炫酷的大屏。

有两种做法可以实现这个效果。

第一种:公共连接

第一种是创建仪表板的公共链接。然后将该连接嵌入到web应用中进行跳转。 

第二种:token方法

第二种是通过python获取finebi的token,从而可以获取所有API的应用。(例如查看目前所有的仪表板)

import requests
import re


def loads_jsonp(_jsonp):
    try:
        return json.loads(re.match(".*?({.*}).*",_jsonp,re.S).group(1))
    except:
        raise ValueError('Invalid Input')

username = 'xxx'
password = 'xxx'
url = f'http://xx.xx.xx.xx:port/webroot/decision/login/cross/domain?fine_username={username}&fine_password={password}&validity=-1'
r = requests.get(url)


token = loads_jsonp(r.text)['accessToken']
print(token)

有了该Token后,就可以解锁所有的API了。例如想查看某个仪表板,href link即为:

http://ip:37799/webroot/decision/v5/design/report/bee9214a49eb4da2b2b8a92f60424685/view?fine_auth_token=xxx

Logo

永洪科技,致力于打造全球领先的数据技术厂商,具备从数据应用方案咨询、BI、AIGC智能分析、数字孪生、数据资产、数据治理、数据实施的端到端大数据价值服务能力。

更多推荐