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

257
Vistas
Cómo poner cookies en una variable y volver a usarla: TITIRITERO

Estoy tratando de insertar TODAS las cookies del navegador en una variable y luego usarlas nuevamente más tarde.

Mi intento:

 const puppeteer = require('puppeteer') const fs = require('fs').promises; (async () => { const browser = await puppeteer.launch({ headless: false, executablePath: 'C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe', const page = await browser.newPage(); await page.goto('https://www.google.com/');

A continuación, está mi código para obtener cookies y funciona, pero ahora muestra un mensaje de error.

 const client = await page.target().createCDPSession(); const all_browser_cookies = (await client.send('Network.getAllCookies')).cookies; const current_url_cookies = await page.cookies(); var third_party_cookies = all_browser_cookies.filter(cookie => cookie.domain !== current_url_cookies[0].domain);

y debajo está la segunda página (que usará cookies)

 (async () => { const browser2 = await puppeteer.launch({ }); const url = 'https://www.google.com/'; const page2 = await browser2.newPage(); try{ await page2.setCookie(...third_party_cookies); await page2.goto(url); }catch(e){ console.log(e); } await browser2.close() })(); })();

hasta ayer funciona, pero hoy me esta apareciendo este mensaje de error:

 Error: Protocol error (Network.setCookies): Invalid parameters Failed to deserialize params.cookies.expires - BINDINGS: double value expected at position 662891

¿Alguien sabe qué es?

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

0

Ok, la solución está aquí: https://github.com/puppeteer/puppeteer/issues/7029

Está guardando una serie de cookies y page.setCookie solo funciona con una cookie. Tienes que iterar a través de tu matriz así:

 for (let i = 0; i < third_party_cookies.length; i++) { await page2.setCookie(third_party_cookies[i]); }
about 4 years ago · Juan Pablo Isaza Denunciar

0

La sugerencia de @julio-codesal está bien, pero de acuerdo con la documentación del titiritero, está bien usar page.setCookie con una matriz, siempre que la desestructura, por ejemplo:

 await page.setCookie(...arr)

fuente: https://devdocs.io/puppeteer/index#pagesetcookiecookies

No estoy exactamente seguro de qué es, pero el error que tiene el OP es otra cosa.

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