Кукловод: получить локальное хранилище с сайта - PullRequest
0 голосов
/ 17 апреля 2019

Мне нужно взять с Puppeteer все данные, которые сохраняет веб-сайт: куки и localStorage (например, после входа в систему).Я прочитал всю документацию Puppeteer, но ничего не могу найти о localStorage.

enter image description here

Я могу получить куки, но я не знаю, как получить localStorage.Например:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch()
  const page = await browser.newPage()
  await page.goto('https://www.twitter.com/')

  //
  // code for login
  //

  const returnedCookie = await page.cookies();  
  console.log(returnedCookie)
  // const localStorage = ??
  // console.log(localStorage)

  await browser.close()
})()

1 Ответ

1 голос
/ 17 апреля 2019

Я нашел путь:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch()
  const page = await browser.newPage()
  await page.goto('https://www.twitter.com/')

  //
  // code for login
  //

  const returnedCookie = await page.cookies();  
  console.log(returnedCookie)

  await page.waitFor( 10000 );
  const localStorageData = await page.evaluate(() => {
    let json = {};
    for (let i = 0; i < localStorage.length; i++) {
      const key = localStorage.key(i);
      json[key] = localStorage.getItem(key);
    }
    return json;
  });

  console.log(localStorageData)

  await browser.close()
})()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...