import requests
import pandas as pd
from requests.auth import HTTPBasicAuth
# Azure DevOps Configuration
organization = "xxx"
project = "xxx"
personal_access_token = "xxx"
# API to list Analytics Views
url = f"https://analytics.dev.azure.com/{organization}/{project}/_apis/analytics/views?api-version=7.1-preview.1"
auth = HTTPBasicAuth("", personal_access_token)
# Make API request
response = requests.get(url, auth=auth)
if response.status_code == 200:
data = response.json()
df = pd.DataFrame(data["value"])
print(df[["id", "name", "description"]]) # Show relevant columns
else:
print(f"Error fetching views: {response.status_code} {response.text}")
问题:
获得视图ID后,我尝试使用以下方式获取数据:
view_id = "a26xxxxx-xxxx-xxx-xxxx-xxxxxxxx94b0" # Example View ID
url = f"https://dev.azure.com/{organization}/{project}/_apis/analytics/views/{view_id}/data?api-version=7.1-preview.1"
response = requests.get(url, auth=auth)
if response.status_code == 200:
data = response.json()
df = pd.DataFrame(data["value"])
print(df.head())
else:
print(f"Error fetching data from view: {response.status_code} {response.text}")
eviveID是正确的(从列表API验证),但请求失败。
Error fetching data from view: 404
The controller for path '/xxx/_apis/analytics/views/a26xxxxx-xxxx-xxx-xxxx-xxxxxxxx94b0/data' was not found or does not implement IController.
我尝试调试什么
在浏览器中检查API - /分析 /视图端点正确 列出视图,但直接/分析/视图/{view_id}/数据返回404.
verified权限 - 我可以完全访问分析视图,并且可以 将它们加载到Power Bi。检查视图是私有的 - 我尝试了 从/分析/视图/私人视图中获取,但错误 剩下使用ODATA进行尝试 - ODATA API返回默认值 数据集但不列出私有/自定义视图。
我需要帮助
它建议您构建ODATA查询以从分析服务中获取所需的数据。这涉及手动创建查询以复制分析视图的过滤器和标准。