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

URLFetchApp获取URL状态码时部分URL卡顿,求超时跳过方案

问题:处理URL状态码时的卡顿与超时跳过需求

我正在遍历电子表格中的URL列表,获取响应状态码以便团队及时发现404错误。大部分URL都能正常处理,但部分URL无任何返回,导致循环卡顿。

我有两个疑问:

  • 有人推测这可能是这些URL的Cookie问题,但我不知道该如何处理。
  • 有没有办法在几秒后跳过无返回的URL?我知道URLFetchApp没有超时选项,有没有适用于此场景的JavaScript技巧?

现有代码

获取状态码的函数:

function getStatusCode(url) {
     var options = {
       'muteHttpExceptions': true,
       'followRedirects': false
     }
     var url_trimmed = url.trim(); // 去除可能存在的空格
     var response = URLFetchApp.fetch(url_trimmed, options);
     return response.getResponseCode();
} 

调用函数的循环代码:

var finalOutput = [];
var counter = 0; // 仅用于日志记录
var code = '';
var startRange = 2;
for (c = 0; c < 10; c++) {
     var range = sheet.getRange(startRange,3,10,2);
     var urls = range.getValues();
     for (u = 0; u < urls.length; u++) {
       code = getStatusCode(urls[u][0]);
       finalOutput.push(urls[u][0],code); 
       counter++;
     } 
}
range.setValues(finalOutput);
counter = 0;
startRange += 10; // 切换到下一组10行
finalOutput = []; // 重置数组

导致卡顿的示例URL

  • https://www.npr.org/programs/ted-radio-hour/694278104/bias-and-perception
  • https://www.mckinsey.com/business-functions/strategy-and-corporate-finance/our-insights/how-to-master-the-seven-step-problem-solving-process?cid=other-eml-ttn-mip-mck&hlkid=95d3bf6d8de34e0d92d75ccfa877f204&hctky=2563923&hdpid=7d90901a-d6e3-4c0d-8a7c-609a2217ae8c

注:npr.org的链接似乎总会引发该问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 17:27:16