📌  相关文章
📜  如何在 selenium 中按文本选择元素 (1)

📅  最后修改于: 2023-12-03 14:52:34.390000             🧑  作者: Mango

如何在 Selenium 中按文本选择元素

在 Selenium 中,有不同的方法选择 Web 页面上的元素。其中一种方法是通过元素的文本来选择元素。这种方法非常有用,因为在 Web 页面中通常有很多具有相同标记和属性的元素,但其文本不同。

以下是在 Selenium 中按文本选择元素的一些方法:

1. 通过 Xpath

通过 Xpath 表达式,在 Selenium 中可以选择具有特定文本的元素。

示例代码:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

# 通过 Xpath 表达式选择元素
element = driver.find_element_by_xpath("//*[contains(text(), 'Example Domain')]")

这将返回第一个包含文本 “Example Domain” 的元素。可以使用类似的表达式来选择其他具有相同文本的元素。

2. 通过 CSS 选择器

通过 CSS 选择器,也可以在 Selenium 中选择具有特定文本的元素。

示例代码:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

# 通过 CSS 选择器选择元素
element = driver.find_element_by_css_selector(":contains('Example Domain')")

这样就可以选择所有包含文本 “Example Domain” 的元素。

3. 通过 link_text

在 Selenium 中,可以使用 link_text 方法选中具有特定文本的链接元素。

示例代码:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

# 通过 link_text 选择元素
element = driver.find_element_by_link_text("More information...")

这将返回指定链接文本 “More information…” 的元素。可以使用相同的方法选择其他具有不同链接文本的元素。

4. 通过 partial_link_text

同样地,可以使用 partial_link_text 方法在 Selenium 中选择链接元素。

示例代码:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

# 通过 partial_link_text 选择元素
element = driver.find_element_by_partial_link_text("More information")

这将选择所有链接文本中包含 “More information” 的元素。

总结:

以上是使用 Selenium 按文本选择元素的方法。可以根据实际情况选择最适合的方法。在使用 Xpath 和 CSS 选择器时,可以使用不同的表达式。如果要选择链接元素,可以使用 link_text 或 partial_link_text 方法。