Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

264
Views
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 answers
Answer question

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!