首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >再来无限刷新,永不掉线的那种。

再来无限刷新,永不掉线的那种。

作者头像
陈学谦
发布2021-11-23 11:01:06
5440
发布2021-11-23 11:01:06
举报
文章被收录于专栏:学谦数据运营学谦数据运营

先来看一张萍萍无奇的图:

没错,是我手动点的。

Are you sure?

你是秀儿吗。

Yes, I'm sure!

正是在下!

上古链接

如果雇一个人7d×24h每10秒刷新一次Power BI,我需要每月支付他多少钱?

如果雇一个人7d×24h每10秒刷新一次Power BI,我需要每月支付他多少钱?【2】

用Python任意刷新Power BI国际版

以上的文章部分方法还是可以使用的,比如selenium自动操控Firefox或者Chrome,但是token的获取因为Chrome升级而无法开展。

我们知道调用API可以实现刷新的目的,但是和一般的定时刷新一样,一个账号一天只能刷新8次,这肯定是不够的。而且,要实现API刷新,必须得是管理员账号,或者管理员账号开通了权限。一来,设置麻烦,二来,大部分人的账号并不是管理员账号。

正文开始

最近发现了一个新的方法。和API生成token的原理差不多,只要能获取登录时的cookie,就可以不断生成token。token过期后就重新生成一个。

而cookie也是会过期的,这个怎么办呢?

经过长期探究,我们发现,cookie1在将要过期时,浏览器会返回一个新的cookie2,以替代之前的cookie1。

这样,我们就可以继续使用cookie2来获取token,达到了可以一直刷新的目的。

该方法经过目前的测试,已经用一个cookie连续刷新powerbi报告一周时间,也就是一周时间无任何操作,完全自动powerbi报告每2-3秒刷新一次。

任何时候打开报告,数据永远是最新的,这对于诸多需要实时同步的报告来说,简直是完美的解决方案。

然而,要实现24小时不间断的刷新,需要电脑一直开机,或者将代码布置在服务器中,这是之前一直的思路。最近接触github actions,尝试着将代码直接挂在上面运行,就不需要电脑开机了,实现了最后一步。

只是因为不同的powerbi账号对应的服务器不同,操作会麻烦些。

像世纪互联的是:

Host: wabi-mc-sha-redirect.analysis.chinacloudapi.cn

使用的一个A1P账号是:

Host: wabi-us-north-central-b-redirect.analysis.windows.net

申请的一个开发者账号又是:

Host: wabi-east-asia-b-primary-redirect.analysis.windows.net

等等,不一而足

而不同的host又需要对应着不同的链接和请求头。

不过,这些都已经搞定,只要提前确认好就ok了。

现开放给有需要的朋友们测试使用,需要提供测试者登录工作区的cookie,以及待刷新的报告的ID,即如下的两张图内容:

理论上,获取这两个内容,只能够起到刷新报告的作用,不会有任何下载、修改、获取信息等目的的实现。至少我是没搞明白,哈哈。如果可以的话,我估计会用python去发布powerbi报告的。

搞起来吧!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PowerBI生命管理大师学谦 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档