You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python获取Tableau工作簿的最后提取时间

获取Tableau工作簿自身的最后提取刷新时间

要获取工作簿本身的最后提取刷新时间(而非关联数据源的),可以通过以下几种方式实现:

方法1:利用Tableau元数据API查询

使用GraphQL查询工作簿的extracts字段,直接获取其自身的提取刷新时间:

query WorkbookExtractDetails {
  workbooks(filter: {name: "目标工作簿名称"}) {
    name
    luid
    projectName
    createdAt
    updatedAt
    extracts {
      lastRefreshTime
    }
  }
}

返回结果中,workbooks.extracts.lastRefreshTime就是工作簿自身的最后提取刷新时间,和上游/嵌入式数据源的刷新时间完全区分。

方法2:直接查询Tableau Server后台数据库

如果有权限访问Tableau Server的PostgreSQL元数据库,执行以下SQL查询:

SELECT 
  w.name AS workbook_name,
  w.luid,
  p.name AS project_name,
  w.created_at,
  w.updated_at,
  COALESCE(e.last_refresh_time, '无提取') AS workbook_extract_last_refresh
FROM workbooks w
INNER JOIN projects p ON w.project_id = p.id
LEFT JOIN extracts e ON w.id = e.workbook_id
WHERE w.name = '目标工作簿名称';

这里通过关联workbooks和extracts表,直接拿到工作簿对应的提取刷新记录,避免和数据源的提取时间混淆。

更新后的JSON结构

可以在现有返回结构中为workbooks新增extractLastRefreshTime字段,用来存储工作簿自身的提取刷新时间:

{
  "workbooks": {
    "name": "",
    "luid": "",
    "project name": "",
    "CreatedAt": "",
    "updatedAt": "",
    "extractLastRefreshTime": ""
  },
  "UpstreamDatasources": {
    "name": "",
    "extractLastRefreshTime": ""
  },
  "embedded data sources": {
    "name": "",
    "extractLastRefreshTime": ""
  }
}

内容的提问来源于stack exchange,提问作者Pankaj M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 10:20:03