首页  >  文章  >  后端开发  >  如何使用 Selenium 单击具有复杂 HTML 结构的按钮?

如何使用 Selenium 单击具有复杂 HTML 结构的按钮?

Susan Sarandon
Susan Sarandon原创
2024-10-22 16:44:02475浏览

How to Click Buttons with Complex HTML Structures Using Selenium?

Selenium 单击具有复杂 HTML 结构的按钮

当尝试使用 Selenium 单击具有复杂 HTML 结构的按钮时,您可能会遇到NoSuchElementException。当按钮的 HTML 包含多个具有 onclick 属性的类或元素时,可能会发生这种情况。

要准确单击此类按钮,请按照以下步骤操作:

  1. 验证 HTML 结构: 检查元素以确认其 HTML 结构。确保目标按钮具有 onclick 属性。例如,提供的 HTML 包含两个带有 onclick 属性的按钮。
  2. 删除 CSS 选择器中的空格: 使用 CSS 选择器定位元素时,确保其中没有空格类名之间。更正以下选择器:

    <code class="python">driver.find_element_by_css_selector('.button .c_button .s_button').click()</code>

    收件人:

    <code class="python">driver.find_element_by_css_selector('.button.c_button.s_button').click()</code>
  3. 目标唯一元素: 重点识别按钮 HTML 中的唯一元素。在这种情况下,带有文本“Search”和“Reset”的 span 元素可以用作唯一标识符。
  4. 使用精确的 CSS 选择器: 构造针对特定元素的 CSS 选择器在按钮的 HTML 中。例如:

    • 要单击“搜索”按钮:

      <code class="python">driver.find_element_by_css_selector('.s_button span:contains("Search")').click()</code>
    • 要单击“重置”按钮:

      <code class="python">driver.find_element_by_css_selector('.s_button span:contains("Reset")').click()</code>

通过以下步骤,您可以使用 Selenium 准确点击具有复杂 HTML 结构的按钮。

以上是如何使用 Selenium 单击具有复杂 HTML 结构的按钮?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn