在 Selenium WebDriver (Python) 中识别具有特定文本的元素
在 Selenium WebDriver 中定位具有特定文本内容的元素可能会带来挑战,尤其是当处理 JavaScript 接口。一种常见的方法是利用 XPath 表达式,但它可能会出现区分大小写的限制。
为了克服这个问题,可以使用修改后的 XPath 表达式:
<code class="python">driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]")</code>
此表达式搜索其中的所有元素包含文本“My Button”的文档,无论大小写。
对于元素嵌套在其他元素中的情况,例如:
<code class="html"><div class="outer"><div class="inner">My Button</div></div></code>
确保目标element 是包含所需文本的最里面的元素。为此,您可以排除作为包含相同文本的其他元素的父元素的元素:
<code class="python">elements = driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]") for element in elements: if element.find_element_by_xpath('.//*[contains(text(), 'My Button')]'): continue else: # Perform actions on the current element</code>
以上是如何使用 Python 在 Selenium WebDriver 中查找具有特定文本的元素(不区分大小写)?的详细内容。更多信息请关注PHP中文网其他相关文章!