如何将响应代码提取到Google电子表格中

时间:2011-12-15 15:10:34

标签: google-apps-script google-sheets

我有一个URL列表,我想查看响应代码。有谁知道我在Google文档中如何做到这一点?我有16000个网址,所以这是一个很大的问题。

任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:6)

没有内置公式函数来执行此操作,但您可以在Google Apps Script中编写一个。这是一个你可以适应你的目的的例子。

function HTTPResponse( uri )
{
  var response_code ;
  try {
    response_code = UrlFetchApp .fetch( uri ) .getResponseCode() .toString() ;
  }
  catch( error ) {
    response_code = error .toString() .match( / returned code (\d\d\d)\./ )[1] ;
  }
  finally {
    return response_code ;
  }
}

定义了此功能后,您可以从单元格中调用它:

A1: 'http://www.google.com/
A2: = HTTPResponse( A1 )

UrlFetchApp.fetch()中的错误使字符串匹配成为必要。在讨论主题 UrlFetchApp.fetch - get response code on exception? 中承诺修复,但我发现它没有被提供。解决方法取决于异常消息的文本。这似乎不可靠,并且取决于区域设置。

Google的文章 Troubleshooting and Debugging Scripts 警告Google Apps脚本会对各种操作施加配额。您可能会发现将同时限制16,000个并发HTTP请求。本文将具有特殊需求的用户引用到Google Apps Script Help Forum