【问题标题】:Google Puppeteer not fetching all third-party cookiesGoogle Puppeteer 未获取所有第三方 cookie
【发布时间】:2019-04-11 10:44:53
【问题描述】:
Network.getAllCookies

# 返回所有浏览器 cookie。根据后端支持,将在 cookie 字段中返回详细的 cookie 信息。

RETURN OBJECT
cookies

array Cookie
Array of cookie objects.

Chrome Dev tool Guide

    (async() => {
      const browser = await puppeteer.launch({});
      const page = await browser.newPage();
      await page.goto('https://stack.com', {waitUntil : 'networkidle2' });
      // tried params like this as well
      // {waitUntil: 'load', timeout: 0}
      // {waitUntil: 'networkidle0', timeout: 0}
      // {waitUntil: 'domContentLoaded', timeout: 0}

      // Here we can get all of the cookies
      console.log(await page._client.send('Network.getAllCookies'));

    })();

不返回所有 cookie - 是否有任何其他函数可以获取站点中第三方脚本设置的 cookie。?

【问题讨论】:

  • 我看不出有任何理由(我可能错了)为什么你认为这是可能的,因为 3'rd 方 cookie 只能由他们自己的域读取
  • @RoyiNamir 在 cookiemetrix 中提交此 URL 时,它获得 3 个 cookie - 但 puppeteer 返回空 :(
  • 我刚试过你的代码,它工作。它向我展示了域的第三方 cookie。您代码中的域没有为我设置任何第三方 cookie。
  • @ThomasDondorf 真正的网站有 coudflare cookie ( _cfduid ),因为该网站请求到 ipapi 网站。傀儡师听不懂:(

标签: javascript cookies puppeteer headless-browser cookieserve


【解决方案1】:

如果您使用的是 macOS,您可以使用 NPM 包 chrome-cookies-secure 从硬盘中提取它们。 (https://www.npmjs.com/package/chrome-cookies-secure)

我在另一个帖子 (https://stackoverflow.com/a/55630524/10732370) 上的相关回答。

【讨论】:

    猜你喜欢
    • 2020-06-05
    • 1970-01-01
    • 2020-10-13
    • 2022-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多