Sul*_*lli 5 javascript chromeless
我想使用特定的 css 路径获取 DOM 中的所有元素:
var elements = await chromeless.evaluate(() => document.querySelectorAll('div a'))
console.log(elements[0].innerHTML)
console.log(elements[1].innerHTML)
Run Code Online (Sandbox Code Playgroud)
但这段代码在第一行给了我错误“对象引用链太长”
这段代码可以工作:
var element = await chromeless.evaluate(() => document.querySelectorAll('div a')[0].innerHTML)
console.log(element)
Run Code Online (Sandbox Code Playgroud)
我可能会使用一个循环来检索它们,但我不知道我的 DOM 中有多少元素有这个 css,所以我不知道要循环多少次。
获取所有所需元素的正确语法是什么?
小智 2
const elements = await chromeless.evaluateHandle(() => {
const allOccurances = [...document.querySelectorAll("div a")];
const data = allOccurances.map((node) => node.innerHTML);
return data;
});
const response = await elements.jsonValue();
console.log(response);
Run Code Online (Sandbox Code Playgroud)
我们可以通过根据 puppeteer 文档创建页面来使用页面,而不是无边框https://pptr.dev/#?product=Puppeteer&version=v13.1.3&show=api-class-page
| 归档时间: |
|
| 查看次数: |
4082 次 |
| 最近记录: |