Ana*_*ujo 5 python selenium xpath css-selectors webdriverwait
我正在尝试在网页中查找特定元素。它必须是 value 中文本内的特定数字...在这种情况下,我需要通过数字 565657 查找元素(请参阅下面的外部 HTML)
我已经通过 xpath: 尝试过("//*[contains(text(),'565657')]"),但("//input[@value='565657']")它不起作用。
有人可以帮忙吗?提前致谢!
当您从网页上的元素复制时,原始 XPATH 只是“ //*[@id="checkbox15"]”,我需要找到一种方法来查找下面提到的数字。
要通过 value 属性(即565657)定位元素,您可以使用以下定位器策略之一:
使用css_selector:
element = driver.find_element(By.CSS_SELECTOR, "input[value*='565657']")
Run Code Online (Sandbox Code Playgroud)
使用xpath:
element = driver.find_element(By.XPATH, "//input[contains(@vlaue, '565657')]")
Run Code Online (Sandbox Code Playgroud)
为了理想地定位,您需要为visibility_of_element_ located()引发WebDriverWait,并且您可以使用以下任一定位器策略:
使用CSS_SELECTOR:
element = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "input[value*='565657']")))
Run Code Online (Sandbox Code Playgroud)
使用XPATH:
element = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//input[contains(@vlaue, '565657')]")))
Run Code Online (Sandbox Code Playgroud)
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6334 次 |
| 最近记录: |