Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

182
Vistas
¿Cómo copiar en profundidad una página de titiritero en javascript?

Estoy usando puppeteer para navegar por mi sitio web. Quiero esperar por una API que a veces se llama y otras no. Estoy usando

 await page.waitForResponse((response =>response.url().includes(myurl)), { timeout: 1000 });

a esperar esa api. Esto funciona bien cuando se llama a la API, pero cada vez que no se llama a la API, se bloquea y la página ya no es la misma. Por lo tanto, quiero hacer una copia profunda de la página para poder verificar la API a través de su copia e incluso si esa página se daña. Tendré otro que pueda usar.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Creo que no necesitas copiar tu página. Probablemente no sea muy fácil de hacer y parezca un poco exagerado. En cambio, evitar que la página se bloquee sería un enfoque más simple.

Prueba algo como esto:

 async function waitForApi(url, timeoutMs) { try { console.log('waiting ', timeoutMs+'ms for special API. url:', url); const opts = { timeout: timeoutMs || 1000 }; await page.waitForResponse(response => response.url().includes(url), opts); console.log('Special API was called!.'); return true; } catch(err) { console.log('Special Api was appearantly not called. (Or may be failed.. Error:', err); return false; } } // example call of waitForApi .. const myUrl = '...' const apiCalled = await waitForApi(myUrl, 1000) if(apiCalled) { // do stuff if you want to.. } else { // do stuff if you want to.. }

Esto ahora debería registrar si se llamó o no a la API y, cuando sea necesario, puede manejar los casos de manera diferente.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda