尝试使用Google表格和importxml()提取文本时遇到错误 问题和解决方法:自定义功能的示例脚本:结果:注意:参考文献:

我在Google表格中有一列链接。我想使用importxml

来判断页面是否产生错误消息

作为一个例子,这很好用

=importxml("https://en.wikipedia.org/wiki/List_of_postal_codes_of_Canada:_T","//td/b")

即它会寻找td,然后拉出b(加拿大的邮政编码)

但是查找错误消息的此代码不起作用:

=importxml("https://www.awwwards.com/error1/","//div/h1" )

我希望它拉出“ 您正在寻找的页面不存在。

...在此页面上https://www.awwwards.com/error1/

我得到一个Resource at URL not found error。我可能做错了什么?谢谢

尝试使用Google表格和importxml()提取文本时遇到错误
      
    问题和解决方法:自定义功能的示例脚本:结果:注意:参考文献:

ili21477 回答:尝试使用Google表格和importxml()提取文本时遇到错误 问题和解决方法:自定义功能的示例脚本:结果:注意:参考文献:

快速尝试并使用默认公式出错后

=IMPORTXML("https://www.awwwards.com/error1/","//*")

=IMPORTHTML("https://www.awwwards.com/error1/","table",1)

=IMPORTHTML("https://www.awwwards.com/error1/","list",1)

=IMPORTDATA("https://www.awwwards.com/error1/")

似乎无法通过任何方式(常规公式)在Google表格中抓取该网站

,
  • 您要从THE PAGE YOU WERE LOOKING FOR DOESN'T EXIST.的URL中检索https://www.awwwards.com/error1/的值。

如果我的理解正确,那么这个答案如何?请认为这只是几个可能的答案之一。

问题和解决方法:

我认为您的网址页面为Error 404 (Not Found)。因此,在这种情况下,将返回状态代码404。我以为这样,IMPORTXML之类的内置函数可能无法检索HTML数据。

作为一种解决方法,如何将自定义函数与UrlFetchApp一起使用?使用UrlFetchApp时,即使状态码为404,也可以检索HTML数据。

自定义功能的示例脚本:

请复制以下脚本并将其粘贴到电子表格的脚本编辑器中。并将=SAMPLE("https://www.awwwards.com/error1")放在电子表格的单元格中。这样,脚本将运行。

function SAMPLE(url) {
  return UrlFetchApp
    .fetch(url,{muteHttpExceptions: true})
    .getContentText()
    .match(/<h1>([\w\s\S]+)<\/h1>/)[1]
    .toUpperCase();
}

结果:

enter image description here

注意:

  • 此自定义函数用于https://www.awwwards.com/error1的URL。当您将其用于其他URL时,可能无法检索预期结果。请注意这一点。

参考文献:

如果这不是您想要的方向,我深表歉意。

本文链接:https://www.f2er.com/3026917.html

大家都在问