Selenium 通过 XPath 查找元素

问题描述 投票:0回答:1

我有三个具有相同按钮类跨度类名称的元素。我想使用 xpath 来选择第二个跨度类,但我总是出错。

我用过:

browser.find_element(By.XPATH, "/html/body/div[1]/div/div[3]/main/div[3]/div[2]/div[2]/div/div/section[2]/div[2]/form/div[9]/button/span[1]").click()

但是我收到错误。我也尝试了以下方法,但收到相同的错误消息。

result = browser.find_elements(By.XPATH, "//button[@class='_1h5on2Eq5J']")[2].click()

browser.switch_to.frame(result)

results = browser.find_element(By.XPATH, "/html/body/div[1]/div/div[3]/main/div[3]/div[2]/div[2]/div/div/section[2]/div[2]/form/div[9]/button/span[1]")

下面是 html 的摘录。我的兴趣是找到第二个元素。

enter image description here

python html selenium-webdriver xpath webdriver
1个回答
2
投票

您可以使用 xpath 查找包含子字符串的文本。

这是您想要的“展开”按钮选择器:

"//button//span[contains(., 'Expand')]"
© www.soinside.com 2019 - 2024. All rights reserved.