page.evaluate() - 文档未定义
page.evaluate() - document is not defined
我尝试使用 Puppeteer 获取网站文档,但不知何故 page.evaluate 无法按照我的想法工作。
let browser = await puppeteer.launch({headless:true});
let page = await browser.newPage();
await page.setViewport({
width: 1920,
height: 1080
})
await page.goto('https://www.tradingview.com/chart/');
const doc = await page.evaluate(() => {
return document;
});
console.log(doc)
当我打印 doc 时,它打印出 undefined
不幸的是,page.evaluate()
can only transfer serializable values (roughly, the values JSON can handle). As document
returns a DOM element that is not serializable (it contains methods and circular references), it is replaced with undefined
. You need to return either serializable value (for example, document.body.innerText
) or use something like page.evaluateHandle()
and JSHandle
API。
我尝试使用 Puppeteer 获取网站文档,但不知何故 page.evaluate 无法按照我的想法工作。
let browser = await puppeteer.launch({headless:true});
let page = await browser.newPage();
await page.setViewport({
width: 1920,
height: 1080
})
await page.goto('https://www.tradingview.com/chart/');
const doc = await page.evaluate(() => {
return document;
});
console.log(doc)
当我打印 doc 时,它打印出 undefined
不幸的是,page.evaluate()
can only transfer serializable values (roughly, the values JSON can handle). As document
returns a DOM element that is not serializable (it contains methods and circular references), it is replaced with undefined
. You need to return either serializable value (for example, document.body.innerText
) or use something like page.evaluateHandle()
and JSHandle
API。