【问题标题】:Google sheets error: Resource at url contents exceeded maximum sizeGoogle 表格错误:网址内容中的资源超出了最大大小
【发布时间】:2017-07-08 18:20:37
【问题描述】:

我的 IMPORTXML 函数有时可以工作,但有时不能。如果他们不这样做,我会收到以下错误:

url 内容中的资源超过了最大大小。

我尝试下载该网站,然后在我拥有的域中仅托管 HTML。当我这样做时,我可以使用 IMPORTXML 导入,但我的数据显然不会自动更新。

有没有办法通过强制 IMPORTXML 函数只查看 HTML 来克服这个问题?

【问题讨论】:

    标签: google-apps-script google-sheets google-sheets-formula


    【解决方案1】:

    我建议使用从技术上获取所有内容的自定义函数。如果它真的是大量的内容,那么将(.*) 包裹在你想要的真实内容周围的内容中......例如<head>(.*)<\/head>(只是为了举例)

    function importWebsite(url) {
      var found, html, content = '';
      var response = UrlFetchApp.fetch(url);
      if (response) {
        html = response.getContentText();
        if (html) content = html.match(/^(.*)/gi)[0];
      }
      return content;
    }
    

    【讨论】:

    • 当我使用此代码时,它只导入 。我尝试使用if (html) content = html.match(/^(.*)/gi)[0]; 部分,但似乎无法让它工作。当我完全摆脱 .match 部分时,我收到一条错误消息,指出它不能超过 50000 个字符。当我像这样更改正则表达式'if (html) content = html.match(/^
      (.*)
      /gi)[0];'时,单元格是空白的,它不会拉在任何数据中。有什么建议吗?
    • 等我回来后我会进行测试,但请注意您需要转义 </section> 部分中的反斜杠,应该看起来像 <\/section>
    • 刚试过content = html.match(/^<section>(.*)<\/section>/gi);,但它仍然只是拉一个空白单元格。
    • 作为参考,这里是我试图从中提取数据的 URL:rotogrinders.com/lineups/…
    • 离开^
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-09
    • 2023-03-08
    • 1970-01-01
    • 2011-08-31
    相关资源
    最近更新 更多