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

使用=IMPORTXML拉取Trackmania玩家数据时遇"Imported content is empty"错误

问题分析与解决方案

问题根源

你用IMPORTXML提取数据失败,核心原因是trackmania.io是JavaScript驱动的单页应用(SPA):页面初始加载的静态HTML中并没有奖杯点数(Trophy points)数据,这些内容是页面加载完成后通过异步请求动态渲染出来的。而IMPORTXML只能抓取页面的初始静态源码,无法获取JavaScript动态生成的内容,因此返回#N/A提示“Imported content is empty”。

解决方法:使用Google Apps Script调用官方API

trackmania.io提供了公开的玩家数据API,我们可以用Google Apps Script编写自定义函数直接获取数据,步骤如下:

  1. 打开你的Google Sheets,点击顶部菜单栏的「扩展程序」→「Apps Script」
  2. 删除编辑器中的默认代码,粘贴以下脚本:
function getTrophyPoints(playerId) {
  // 调用trackmania官方玩家数据API
  const apiUrl = `https://trackmania.io/api/player/${playerId}`;
  const response = UrlFetchApp.fetch(apiUrl);
  const playerData = JSON.parse(response.getContentText());
  
  // 返回奖杯点数
  return playerData.trophyPoints;
}
  1. 点击编辑器顶部的保存按钮,给脚本命名(比如TrackmaniaPlayerData)
  2. 回到Google Sheets,在任意单元格中输入以下公式并回车:
=getTrophyPoints("acf21a42-f517-42cc-a1b2-e8e7693da4ca")
  1. 首次运行会弹出权限授权提示,按照指引完成授权即可正常获取数据

注意事项

  • API有请求频率限制,避免短时间内大量调用
  • 如果后续API结构变更,可能需要调整脚本中获取trophyPoints的字段路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 17:54:30