我导入了密钥,但由于某种原因,它没有被识别。这是我的代码,
from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome("..\Library\chromedriver.exe")
driver.set_page_load_timeout(10)
driver.get("http://google.com")
driver.find_elements_by_name("q").sendKeys("Test")
driver.find_elements_by_name("btnK").click()
time.sleep(4)
driver.quit()发布于 2018-08-14 12:52:46
您正在使用返回元素列表且与send_keys()函数不兼容的find_elements_by_name()。您必须改用find_element_by_name()。
正确的一行应该是
driver.find_element_by_name("q").send_keys("Test")
driver.find_element_by_name("btnK").click()希望这能有所帮助!
发布于 2018-08-14 15:11:34
FindElement和FindElements方法之间的区别。
您可以使用此命令访问网页上的任何单个元素。它返回指定定位器的第一个匹配元素的对象。当它找不到元素时,它抛出一个NoSuchElementException异常。它的语法如下。
username = driver.find_element_by_name('username')它返回与指定定位器匹配的所有元素的完整列表。如果元素不存在或在页面上不可用,则返回值将是一个空列表。它的语法如下。
searchresults_text = driver.find_elements(By.XPATH, 'Locator value')是的,@SmashGuy是正确的
driver.find_element_by_name("q").send_keys("Hello Google")https://stackoverflow.com/questions/51833805
复制相似问题