【发布时间】:2019-04-03 10:32:03
【问题描述】:
有没有更短的等待复杂选择器的方法?
await page.evaluate(() => {
return new Promise(resolve => {
var aid = setInterval(function(){
let block = $('div[class="asset"]:contains("Assets Folder")');
if(block.length){
clearInterval(aid);
block.click();
resolve();
}
}, 100);
})
});
page.waitFor() 抛出错误:
错误:评估失败:DOMException:无法在“文档”上执行“querySelector”:“div[class="asset"]:contains("Assets Folder")' 不是有效的选择器。
【问题讨论】:
-
如果我没记错的话,
:contains()选择器只适用于 jQuery。见this question -
好的,所以也许有更短的解决方法,没有
evaluate + promise + setinterval链?
标签: javascript node.js css-selectors google-chrome-devtools puppeteer