我将所有数据(372行urls)从列(首先)从google获取到对象中。但是,当我迭代对象以将每个项(Url)与指定的文本匹配时,它只返回20条记录(11条来自if部分,9条来自其他部分)。
这是我的密码
function sheetApp() {
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var Avals = ss.getRange('A2:A').getValues();
var Alast = Avals.filter(String).length;
var range = ss.getRange(2, 1, Alast, 1);
var ranges = range.getValues();
var arr_backlinks = [];
var found_backlinks = [];
var not_found_backlinks = [];
var error_backlinks = [];
for (let index = 0; index < ranges.length; index++) {
backlinks = ranges[index];
arr_backlinks.push(backlinks);
}
var parameters = {
method: 'get',
headers: { Authorization: 'Bearer ' + 'yyy' },
contentType: 'application/json',
muteHttpExceptions: true,
};
try {
for (let ww = 0; ww < arr_backlinks.length; ww++) {
var actual_backlink = arr_backlinks[ww];
var page = UrlFetchApp.fetch(
actual_backlink,
parameters
).getContentText();
if (page.indexOf('https://coachfoundation.com/') >= 0) {
found_backlinks.push(actual_backlink + ' Found');
Logger.log(actual_backlink + 'Found');
} else {
Logger.log(actual_backlink + 'Not Found');
not_found_backlinks.push(actual_backlink + ' Not Found');
}
}
} catch (err) {
Logger.log(actual_backlink + 'Error');
error_backlinks.push(actual_backlink + ' Error');
}
}执行日志:
9:27:42 PM Notice Execution started
9:28:10 PM Info Found backlinks : 11
9:28:10 PM Info Not found backlinks: 9
9:28:10 PM Info Websites not opened : 1
9:28:11 PM Notice Execution completed我尝试过通过多种方式进行调试,但没有起作用。如何获得所有372个urls的已找到和未找到的分类?有解决办法吗?
发布于 2022-10-13 18:43:50
try {
for (let ww = 0; ww < arr_backlinks.length; ww++) { }
} catch (err) {}循环在try块内。在块中抛出的任何错误都将结束代码。将try...catch移动到循环中,并在catch块中添加continue以继续循环,而不考虑在fetch中引发的任何错误
for (let ww = 0; ww < arr_backlinks.length; ww++) {
try {/*fetch and check*/} catch (err) {/*do stuff*/continue;}
}https://stackoverflow.com/questions/74056883
复制相似问题