• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

246
Vistas
Use las cookies de inicio de sesión de Google para abrir una página ya iniciada (titiritero)

Lo que quiero es obtener una cookie y reutilizarla cada vez que quiera abrir una instancia de titiritero ya registrada. Intenté esto, pero no funcionó:

Función que obtendría cookies:

 async function writeCookies(page, cookiesPath) { const client = await page.target().createCDPSession(); // This gets all cookies from all URLs, not just the current URL const cookies = (await client.send("Network.getAllCookies"))["cookies"]; console.log(cookies) console.log("Saving", cookies.length, "cookies"); // fs.writeFileSync(cookiesPath, JSON.stringify(cookies)); console.log(cookiesPath) console.log(cookies) // await fs.writeJSON(cookiesPath, cookies); }

Cómo lo implementé:

 const page = await browser.newPage(); time = new Date() await page.goto("https://accounts.google.com/ServiceLogin/identifier?service=mail&passive=true&rm=false&continue=https%3A%2F%2Fmail.google.com%2Fmail%2F&ss=1&scc=1&ltmpl=default&ltmplcache=2&emr=1&osid=1&flowName=GlifWebSignIn&flowEntry=AddSession") await page.$eval('#identifierId', (el) => (el.value = "test@gmail.com")); await page.click("#identifierNext > div > button > div.VfPpkd-RLmnJb"); await page.waitForSelector('#password > div.aCsJod.oJeWuf > div > div.Xb9hP > input', { visible: true }); await page.$eval('#password > div.aCsJod.oJeWuf > div > div.Xb9hP > input', (el) => (el.value = "Tester")); await page.waitForSelector('#passwordNext > div > button > div.VfPpkd-RLmnJb', { visible: true }); await sleep(1000) await page.click("#passwordNext > div > button > div.VfPpkd-RLmnJb"); writeCookies(page,"./WebHook.js")

Cómo enviaría las cookies:

 await page.setExtraHTTPHeaders({cookies :`${cookies}`})

También probé de esta manera:

 async function restoreCookies(page, cookiesPath) { try { // const cookies = await fs.readJSON(cookiesPath); let buf = fs.readFileSync(cookiesPath); let cookies = JSON.parse(buf); console.log("Loading", cookies.length, "cookies into browser"); await page.setCookie(...cookies); } catch (err) { console.log("restore cookie error", err); } }

Tal vez estoy recuperando las cookies incorrectas.

about 3 years ago · Santiago Trujillo
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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda