XPATH的简单定位元素有多个该怎么办??通过find_elements来找到定位列表,得到的list根据后方的中括号来取值,如下
driver.find_elements(By.XPATH, "//input[@id='su']")[0].click()
当然你也可以用JavaScript来进行定位点击。
例如在百度首页,搜索一下,在控制台进行以下命令。
$x("//input[@id='su']")[0].click()
当XPATH定位到多个标签时,可以选择运行第几个标签,注意是从0开始的。
而用selenium执行webdriver时必须精准定位,若用此方法就可以避免定位繁琐的尴尬,当然算是执行js命令,写在代码里面就方便多了。
driver.execute_script("var q = $x(\"//input[@id='su']\")[0].click()")
# 单斜杠为转义符