是否有办法用 Python Selenium 通过属性查找元素?
我们可以通过 Selenium webdriver 根据属性查找元素。有许多方法可以做到这一点。我们可以使用诸如 css 和 xpath 之类的定位符,它们使用属性及其值来识别元素。
对于 css 选择器,要使用的表达式是 tagname[attribute='value']。xpath 有两种类型——绝对和相对。要使用的 xpath 表达式是 //tagname[@attribute='value'],表达式中的 tagname 是可选的。如果省略,则 xpath 表达式应为 //*[@attribute='value']。
我们考虑一个具有 input tagname 的元素。它将用 xpath 定位符和 id 属性(//input[@id='txtSearchText'])进行识别。
示例
from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") driver.implicitly_wait(0.5) driver.get("https://tutorialspoint.com/tutor_connect/index.php") #identify element with attribute id l= driver.find_element_by_xpath("//input[@id='txtSearchText']") l.send_keys("Tutorialspoint") #get_attribute() to get value of input box print("Enter text is: " + l.get_attribute('value')) driver.close()
输出
广告