我想每天在后台使用python API预加载(刷新)tableau公共工作簿(工作表),以便将数据(实时连接)加载到tableau中作为缓存,以便用户更快地打开它(因为某些工作簿加载很多时间) ),下面是我的代码,结果是无法刷新工作簿,我的代码有问题吗?有什么办法可以实现我的目标?
import tableauserverclient as TSC
tableau_auth = TSC.TableauAuth('username','password')
server = TSC.Server('http://my.server',use_server_version=True)
with server.auth.sign_in(tableau_auth):
all_workbooks_items,pagination_item = server.workbooks.get()
for workbook in all_workbooks_items:
if 1:
try:
response = server.workbooks.refresh(workbook.id)
print("\nThe data of workbook {0} is refreshed.".format(workbook.name))
except Exception as e:
response = e
else:
response = "Refresh was not requested"
print(workbook.name,str(response).replace(" ","").strip());
,结果如下:
mytestworkbook1 403104:禁止 工作簿'fs45d21f-6526-41c8-a5de-83f98cd40128'不包含任何摘录,也无法刷新。
mytestworkbook2 403104:禁止 工作簿'fs4f09a3-e435-4c1a-ad4a-2069faa47281f'不包含任何摘录,也无法刷新。
mytestworkbook3 403104:禁止 工作簿'wr66f064-f0dc-4c77-bd87-be249f06fk27'不包含任何摘录,也无法刷新。