document.querySelectorAll('.summary').innerText;
这在我的伪造者页面的公开功能“ docTest”中的以下代码段中引发错误,说“ document.querySelector不是函数”我想将特定的节点传递给每种方法,然后将结果传递给评估。
与document.getElemenetbyId相同
const puppeteer = require('puppeteer');
//var querySelectorAll = require('query-selector');
let docTest = (document) => {
var summary = document.querySelectorAll(.summary).innerText;
console.log(summary);
return summary;
}
let scrape = async () => {
const browser = await puppeteer.launch({
headless: false
});
const page = await browser.newPage();
await page.goto('http://localhost.com:80/static.html');
await page.waitFor(5000)
await page.exposeFunction('docTest', docTest);
var result = await page.evaluate(() => {
var resultworking = document.querySelector("tr");
console.log(resultworking);
var summary = docTest(document);
console.log(resultworking);
return summary;
});
console.log(result);
await page.waitFor(7000);
browser.close();
return {
result
}
};
scrape().then((value) => {
console.log(value); // Success!
});
await page.exposeFunction('docTest', docTest);
var result = await page.evaluate(async () => {
var summary = await docTest(document);
console.log(summary);
return summary;
});
相关问题:
exposeFunction() does not work after goto()
Why can't I access 'window' in an exposeFunction() function with Puppeteer?
- How to use evaluateOnNewDocument and exposeFunction?
- exposeFunction remains in memory?
- https://github.com/puppeteer/puppeteer/blob/master/docs/api.md#pageexposefunctionname-puppeteerfunction
- Puppeteer: pass variable in .evaluate()
- Puppeteer evaluate function
- allow to pass a parameterized funciton as a string to page.evaluate
- Functions bound with page.exposeFunction() produce unhandled promise rejections
- How to pass a function in Puppeteers .evaluate() method?
- How can I dynamically inject functions to evaluate using Puppeteer?