0

在 puppeteer 中使用以下事件时出现错误。

我尝试过使用 Xpath 和选择器的方法,无法通过脚本找到元素。然而,在代码片段执行期间,可以跟踪或可以在开发工具 > 元素选项卡中找到相同的选择器

方法一:选择器

await page.waitForSelector('#menu-item-\$PpyNavigation1564144649507\$ppyElements\$l1\$ppyElements\$l4 > a > span > span', {visible: true});
await page.hover('#menu-item-\$PpyNavigation1564144649507\$ppyElements\$l1\$ppyElements\$l4 > a > span > span');

错误信息:

events.js:116(节点:24684)UnhandledPromiseRejectionWarning:错误:评估失败:DOMException:无法在“文档”上执行“querySelector”:“#menu-item-$PpyNavigation1564144649507$ppyElements$l1$ppyElements$l4 > a > span > span' 不是有效的选择器。在谓词(eval at waitForPredicatePageFunction (:2:21), :6:20) at eval (eval at waitForPredicatePageFunction (:2:21), :25:7) at onRaf ( puppeteer_evaluation_script : 56:33) at pollRaf ( puppeteer_evaluation_script : 48:5)

4

1 回答 1

0

更新下面的元素,如下所示

之前:不工作

await page.waitForSelector('#menu-item-\$PpyNavigation1564144649507\$ppyElements\$l1\$ppyElements\$l4 > a > span > span', {visible: true});
await page.hover('#menu-item-\$PpyNavigation1564144649507\$ppyElements\$l1\$ppyElements\$l4 > a > span > span');

更新:工作

'await page.waitForSelector('li[id="menu-item-$PpyNavigation1564144649507$ppyElements$l1$ppyElements$l4"] > a > span > span', {visible: true});
 await page.hover('li[id="menu-item-$PpyNavigation1564144649507$ppyElements$l1$ppyElements$l4"] > a > span > span');

`'

于 2019-08-13T07:37:45.860 回答