【问题标题】:Click in puppeteer not working inside ul tag在 ul 标签内单击 puppeteer 不起作用
【发布时间】:2021-09-11 07:43:08
【问题描述】:

以下是我正在使用 puppeteer 抓取的网页的 html 代码部分。 id 以数字开头。

<div class="inner-menu">
   <ul class="module" style="float: left">
      <li id="0" class="moduleclass"><a class="active" href="/eu/alt/dashboard.htm">Home</a></li>
      <li id="4" class="moduleclass"><a class="" href="/eu/stu/studentBasicProfile.htm">Student</a></li>
      <li id="6" class="moduleclass"><a class="" href="/eu/exm/viewStudentExamDefinition.htm">Exam</a></li>

      <li id="7" class="moduleclass">
         <a class="" href="/eu/res/semesterGradeCardListing.htm">Result</a>
      </li>

   </ul>
</div>

我需要点击 ID 为 7li。我尝试使用代码

await page.waitForSelector("#\\37 ");
await page.click("#\\37 ");

但它不起作用。

【问题讨论】:

  • "#\\37 " 背后的想法是什么?为什么不"#7"

标签: javascript node.js reactjs web puppeteer


【解决方案1】:

以数字开头的 ID 无效,这样的选择器会抛出错误。但是你可以试试 XPath:

const element = await page.waitForXPath('//*[@id="7"]');
await element.click();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-17
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多