@dim12ka

Как добавить цикл в часть кода?

Есть такая часть кода, которая берет ссылку из первого столбца, обрабатывает ее и в ячейку 3 вставляет результат. Вопрос как сделать так чтобы автоматически обработать все ссылки автоматически? Как понимаю нужно сделать цикл, который будет брать значение из первой колонки и вставлять соседнюю колонку результат.

function scraper() {
  
  const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Лист24');
  const urlDomain = ss.getRange(1, 1).getValue();
  
  let url = urlDomain;
  
  let response = UrlFetchApp.fetch(url);
  ss.getRange(1, 2).setValue(response.getResponseCode());
  
  let html = response.getContentText();
  
  let block = getBlock(html, 'div', html.indexOf('class="thumbPhotos"'))[0];
  ss.getRange(1, 3).setValue(block.slice(0, 1000));
  
  let link = getAttrName(block, 'data-src',0);
  ss.getRange(1, 4).setValue(link);
  
}
  • Вопрос задан
  • 19 просмотров
Решения вопроса 1
@dim12ka Автор вопроса
сделал сам! Если у вас будут замечание к сделано, с радостью их приму.

function scraper() {
  
  const ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Лист24');
  var lastRange = ss.getLastRow();

  
  for(i=1;i<lastRange;i++) {
    var urlDomain = ss.getRange(i, 1).getValue();
    let url = urlDomain;
    let response = UrlFetchApp.fetch(url);
    ss.getRange(i, 2).setValue(response.getResponseCode());
    
    let html = response.getContentText();
    
    let block = getBlock(html, 'div', html.indexOf('class="thumbPhotos"'))[0];
    ss.getRange(i, 3).setValue(block.slice(0, 1000));
    
    let link = getAttrName(block, 'data-src',0);
    ss.getRange(i, 4).setValue(link);
  }
  
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы