kur*_*tko 12 javascript local-storage node.js web-scraping puppeteer
我需要使用 Puppeteer 获取网站保存的所有数据:cookies 和 localStorage(例如登录后)。我已阅读所有 Puppeteer 文档,但找不到有关 localStorage 的任何信息。
我可以获取 cookie,但我不知道如何获取 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()
})()
Run Code Online (Sandbox Code Playgroud)
kur*_*tko 10
我找到了方法:
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()
})()
Run Code Online (Sandbox Code Playgroud)
Gui*_*oli 10
对我有用的更简单的方法
const localStorage = await page.evaluate(() => Object.assign({}, window.localStorage));
| 归档时间: |
|
| 查看次数: |
6287 次 |
| 最近记录: |