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

202
Visualizações
Formulario emergente visible, pero falta el código html en Titiritero

Actualmente estoy tratando de obtener información de un sitio web ( https://www.bauhaus.info/ ) y falla en el formulario emergente de cookies.

Este es mi código hasta ahora:

 (async () => { const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto('https://www.bauhaus.info'); await sleep(5000); const html = await page.content(); fs.writeFileSync("./page.html", html, "UTF-8"); page.pdf({ path: './bauhaus.pdf', format: 'a4' }); }); function sleep(ms) { return new Promise((resolve) => { setTimeout(resolve, ms); }); }

Hasta esto todo funciona bien. Pero no puedo aceptar el banner de cookies, porque no veo el html de este banner en titiritero. Pero en el pdf puedo ver el formulario.

ingrese la descripción de la imagen aquí mi navegador

ingrese la descripción de la imagen aquí Titiritero

¿Por qué no puedo ver esta ventana emergente en el código html? Búsqueda de bonificación: ¿hay alguna forma de reemplazar el método de suspensión con cualquier página. esperar sin saber qué método js activa la aparición del formulario de cookies?

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

0

Este elemento está en una raíz de sombra. Visite mi respuesta en Titiritero que no proporciona un código HTML preciso para la página con raíces ocultas para obtener información adicional sobre el DOM oculto.

Este código se sumerge en la raíz oculta, espera a que aparezca el botón y luego hace clic en él:

 const puppeteer = require("puppeteer"); // ^13.5.1 let browser; (async () => { browser = await puppeteer.launch({headless: false}); const [page] = await browser.pages(); const url = "https://www.bauhaus.info/"; await page.goto(url, {waitUntil: "domcontentloaded"}); const el = await page.waitForSelector("#usercentrics-root"); await page.waitForFunction(el => el.shadowRoot.querySelector(".sc-gsDKAQ.dejeIh"), {}, el ); await el.evaluate(el => el.shadowRoot.querySelector(".sc-gsDKAQ.dejeIh").click() ); await page.waitForTimeout(100000); // pause to show that it worked })() .catch(err => console.error(err)) .finally(() => browser?.close()) ;
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