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

如何用Google Sheets的IMPORTXML导入指定网站表格?为何仅返回表头?

问题原因及解决方案

核心原因分析

  • 动态内容渲染限制:你目标网站的表格数据是通过JavaScript动态加载的(比如AJAX请求后端接口、前端框架渲染)。Google Sheets的IMPORTXML函数只能抓取页面初始加载的静态HTML源码,无法执行页面中的JavaScript,所以看不到JS渲染后的表格数据,只能拿到静态的表头。
  • 可能的反爬/访问限制:部分政府或机构网站会对非浏览器的请求做限制,Google Sheets的爬虫请求可能被识别,服务器仅返回基础的页面框架(表头)而非完整数据。

可行解决方案

  1. 使用Google Apps Script模拟动态抓取
    编写简单脚本,利用UrlFetchApp模拟浏览器请求,或直接解析页面的数据源接口:
    function fetchDynamicTableData() {
      const url = "https://dinem.magyp.gob.ar/dinem_fob.wp_fob_conslista.aspx?20230922,1338,178,1";
      const response = UrlFetchApp.fetch(url, {
        headers: {
          "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36"
        }
      });
      const html = response.getContentText();
      // 可通过浏览器开发者工具找到加载数据的XHR接口,直接调用接口获取原始数据
      // 后续将解析后的数据写入目标Sheet即可
      Logger.log(html);
    }
    
  2. 手动提取数据源接口
    打开浏览器开发者工具(F12),切换到Network面板刷新页面,找到加载表格数据的XHR/fetch请求,复制接口地址后,使用IMPORTDATA或自定义IMPORTJSON函数直接抓取接口返回的JSON/CSV数据。
  3. 检查页面iframe嵌套
    查看页面源码,确认表格是否嵌套在<iframe>标签内,如果是,将IMPORTXML的目标URL替换为iframe的src地址后重新尝试抓取。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 22:02:37