繁体   English   中英

Selenium WebDriver失败,出现NoSuchElementException

[英]Selenium WebDriver fails with NoSuchElementException

我得到下面提到的错误。 请告知我是否无法提供该元素的正确路径。

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//form[@id="extended-nav-search"]/input[1]"}

这是我完整的代码。

from selenium import webdriver
import time
my_driver = webdriver.Chrome("C:\\chromedriver_win32\\chromedriver.exe")
my_driver.get("https://www.linkedin.com/uas/login")
my_driver.maximize_window()
email = my_driver.find_element_by_xpath('//*[@id="session_key-login"]')
email.send_keys('abc@gmail.com')
time.sleep(2)
password = my_driver.find_element_by_xpath('//*[@id="session_password-login"]')
password.send_keys('XXXXXX')
time.sleep(2)
login = my_driver.find_element_by_xpath('//*[@id="btn-primary"]')
login.click()
time.sleep(2)
search = my_driver.find_element_by_xpath('//form[@id="extended-nav-search"]/input[1]')
search.send_keys("python programmer")
button = my_driver.find_element_by_xpath('//*[@id="nav-search-controls-wormhole"]/button')
button.click()

上面的代码在代码的第15行中有错误

当您要查找的元素具有ID时,您实际上应该使用find_element_by_id 要将键发送到搜索输入,您需要找到子元素“输入”,然后可以使用xpath。 您也可以通过从selenium.webdriver.common.keys发送Keys.ENTER来进行搜索。 总而言之:

from selenium.webdriver.common.keys import Keys
#
# ...
#
search = my_driver.find_element_by_id("extended-nav-search")
search = search.find_element_by_xpath("//input")
search.send_keys("python programmer")
search.send_keys(Keys.ENTER)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM