Кукловод получает стороннее печенье - PullRequest
0 голосов
/ 09 мая 2018

Как я могу получить сторонние куки с сайта используя puppeteer?

Для первой партии я знаю, что могу использовать await page.cookies()

1 Ответ

0 голосов
/ 11 мая 2018

Мне было интересно узнать ответ, поэтому я также нашел решение, оно работает для текущих версий Chromium 75.0.3765.0 и puppeteer 1.15.0 (обновлено 2 мая 2019 г.) .

Используя внутренний кукловод page._client, мы можем использовать Chrome DevTools Protocol напрямую:

(async() => {
  const browser = await puppeteer.launch({});
  const page = await browser.newPage();
  await page.goto('https://stackoverflow.com', {waitUntil : 'networkidle2' });

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

})();

В возвращенном объекте есть файлы cookie для google.com и imgur.com, которые мы не могли бы получить с помощью обычного JavaScript-браузера:

3d-party cookies!

...