Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

153
Visualizações
Cómo extraer datos de páginas adicionales a través de la paginación

Devolví correctamente la primera página de datos y tengo la cantidad de páginas de datos adicionales que existen en la llamada a la API.

Este es el código que he intentado extraer de las páginas adicionales de datos.

 try { const response = UrlFetchApp.fetch(root + endpoint, params); const responseCode = response.getResponseCode(); const returnedResults = response.getContentText(); const jsonResults = JSON.parse(returnedResults) //console.log(responseCode) // *** return 200 //console.log(returnedResults) // *** return successful //console.log(jsonResults) //*** return successful Object.keys(jsonResults).forEach(function (key){ console.log(jsonResults[key]); /* { count_per_page: 20, total_count: 12261, current_page: 1, total_pages: 614, _links: { next: { href: '/v2/organizations?page=2' } } } */ }); } catch (e) { console.log('Error: ' + e); } const data = []; let hasmoreitems = true; while (hasmoreitems) { hasmoreitems = jsonResults.pagination.current_page < jsonResults.pagination.total_pages; data.forEach(entry => { const name = entry['name']; const email = entry['email']; const mission = entry['mission_statement']; const address = entry['address'].country; data.push([ name, email, mission, address]); }); // send data to spreadsheet const sheet = SpreadsheetApp.openById('1fM-soJt8rJeIHYZ2vVKyoX9J-LohElqvGB2syhlRk00').getSheets()[1]; sheet.getRange(sheet.getLastRow()+1, 1, data.length,data[0].length).setValues(data); }

Una respuesta de muestra para la paginación se vería así;

"paginación": { "count_per_page": 20, "total_count": 1, "current_page": 1, "total_pages": 2, "_links": { "next": { "href": "/v2/organizations?page =2" } } }

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Es difícil sin saber cómo es tu respuesta real, pero creo que esto hará lo que quieres:

 let endpoint = "/v2/organizations?page=1"; let all_data = []; while (endpoint) { let response = UrlFetchApp.fetch(root + endpoint, params); let data = JSON.parse(response.getContentText()); endpoint = data._links.next.href; data.forEach((entry) => { all_data.push([ entry.name, entry.email, entry.mission_statement, entry.address.country, ]); }); }
about 4 years ago · Juan Pablo Isaza Relatório

0

Después de examinar la estructura del objeto, me di cuenta de los diferentes niveles de las teclas. A continuación se muestra el código de trabajo. Espero que ayude.

 let all_data = []; while (endpoint) { let response = UrlFetchApp.fetch(root + endpoint, params); let data = JSON.parse(response.getContentText()); let orgs = data.organizations Object.keys(data).forEach(function (key) { console.log(data[key]); }); endpoint = data.pagination._links.next.href; orgs.forEach((entry) => { all_data.push([ entry.name, entry.email, entry.mission_statement, entry.address.country, ]); //console.log(all_data) }); }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda