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

133
Vistas
Abra la ventana del navegador y busque etiquetas

Construyo algo que puede ejecutar en una consola de navegador que busca enlaces en el sitio y devuelve una serie de enlaces. Después de eso, quiero revisar cada enlace, abrir la página de enlaces y buscar todas las etiquetas y obtener la fuente.

Las páginas tienen el mismo dominio y solo la parte al final es diferente. Pero cuando intento ejecutar mi código, abre la primera ventana. Devuelve undefined y cierra la ventana. Después de eso, aparece este error: VM79:32 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'getVideoSources') at <anonymous>:32:51

La parte donde obtengo los enlaces funciona perfectamente y devuelve una lista de enlaces. Ahora la parte que me causa problemas es donde trato de abrir cada enlace.

 async function grabLinks(links) { const videoList = []; for (const link of links) { console.log("New link!") // Go trough each link and get the video sources const sources = await getVideoSources(link); videoList.push(...sources); } console.log(videoList); showLinks(videoList) } function getVideoSources(link) { return new Promise((resolve, reject) => { console.log("Opening Window"); const openedWindow = window.open(link, "_blank"); openedWindow.focus(); openedWindow.addEventListener("DOMContentLoaded", () => { try { const videoElements = openedWindow.document.querySelectorAll("div video"); var source = videoElements[0].getVideoSources; console.log(source) resolve(source); } catch (e) { reject(e); } finally { openedWindow.close(); console.log("Closing Window"); } }); }); }

¿Cómo haría para solucionar este problema? ¿Debo agregar un tiempo de espera de 5 segundos y dejar que la página se cargue por completo o qué es exactamente lo que sale mal aquí?

about 4 years ago · Juan Pablo Isaza
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