Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何与木偶演员在同一级别的div上循环_Node.js_Puppeteer - Fatal编程技术网

Node.js 如何与木偶演员在同一级别的div上循环

Node.js 如何与木偶演员在同一级别的div上循环,node.js,puppeteer,Node.js,Puppeteer,使用Puppeter刮取页面,我可以从具有相同类的div列表和嵌套的div列表中获取内容,即 <div class="parent"> <div class="child"></div> </div> <div class="parent"> <div class="child"></div> <div

使用Puppeter刮取页面,我可以从具有相同类的div列表和嵌套的div列表中获取内容,即

<div class="parent">
    <div class="child"></div>
</div>
<div class="parent">
    <div class="child"></div>
    <div class="child"></div>
</div>
<div class="parent">
    <div class="child"></div>
    ...
</div>
...
刮取lightbox html并运行

await page.pdf({
    path: dir + "/"+ filename, 
    format: 'A4' 
});

如果我理解正确,您可以尝试以下方法:

for(等待页面的常量父项。$$('.parent')){
for(等待父对象的常量子对象。$$('.child')){
等待子项。单击();
wait page.waitForSelector('.ReactModal');//可能检查这是否是同一个灯箱
等待page.pdf(/*…*/);
}
}

如果我理解正确,您可以尝试以下方法:

for(等待页面的常量父项。$$('.parent')){
for(等待父对象的常量子对象。$$('.child')){
等待子项。单击();
wait page.waitForSelector('.ReactModal');//可能检查这是否是同一个灯箱
等待page.pdf(/*…*/);
}
}

您也可以像这样在页面中运行javascript e.x wait page.evaluate({var childs=document.queryselectoral('.child');[].forEach.call(childs,函数(el){el.click();});});您也可以像这样在页面中运行javascript e.x wait page.evaluate(=>{var childs=document.queryselectoral('.child');[].forEach.call(childs,函数(el){el.click();});});
await page.waitForSelector('.ReactModal')
await page.pdf({
    path: dir + "/"+ filename, 
    format: 'A4' 
});