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

85
Vistas
Encuentre divs específicos en la página y elimínelos antes de tomar una captura de pantalla con el titiritero

Tengo un script de nodo/titiritero que visita una página, encuentra un div específico con una clase y toma una captura de pantalla del div. Sin embargo, hay elementos/nodos en la página que me gustaría eliminar antes de capturar la captura de pantalla, ya que interfieren con la imagen, pero parece que no puedo encontrar la documentación sobre cómo hacerlo.

Esto es lo que tengo hasta ahora, pero no puedo averiguar cuándo o cómo eliminar un div determinado con una clase específica .ce45 , por ejemplo:

 await page.setViewport({ width: 1368, height: 768 }); await page.waitForSelector(`.${url.id.toLowerCase()}`).then(() => console.log('scraped', url.id.toLowerCase())); const component = await page.$(`.${url.id.toLowerCase()}`); const bounding_box = await component.boundingBox(); await component.screenshot({ path: `./${url.id.toLowerCase()}.png`, clip: { x: bounding_box.x, y: bounding_box.y, width: Math.min(bounding_box.width, page.viewport().width), height: Math.min(bounding_box.height, page.viewport().height), } });

Yo he tratado:

 await page.evaluate((sel) => { let div_selector_to_remove = ['.ce45', '.d20', '.cc27']; for(sel of div_selector_to_remove){ document.querySelector(`${sel}`).remove(); } });

pero aparece el error Cannot read properties of null (reading 'remove')

about 4 years ago · Santiago Gelvez
1 Respuestas
Responde la pregunta

0

La forma en que lo tiene solo eliminará el primero para cada selector (y arrojará un error cuando no esté allí).

Probar:

 page.$$eval('.ce45,.d20,.cc27', els => els.map(el => el.remove()))
about 4 years ago · Santiago Gelvez 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