Selenium运行报错无法从selenium.webdriver.common.keys导入keys如何解决?
报错原因
ImportError: cannot import name 'keys' from 'selenium.webdriver.common.keys'
该错误由标识符大小写不匹配导致:Python对变量、类名等标识符大小写敏感,selenium.webdriver.common.keys模块对外暴露的按键常量类名为首字母大写的Keys,你代码中使用全小写的keys进行导入,无法匹配到对应类,因此触发导入失败。
修复方案
- 第一步:修改导入语句,将小写
keys替换为大写开头的Keys
# 错误写法 # from selenium.webdriver.common.keys import keys # 正确写法 from selenium.webdriver.common.keys import Keys
- 第二步:同步修改代码中调用ENTER按键的行,把小写
keys.ENTER改为Keys.ENTER
# 错误写法 # search.send_keys(keys.ENTER) # 正确写法 search.send_keys(Keys.ENTER)
修正后完整可运行代码
from selenium import webdriver from selenium.webdriver.common.keys import Keys chrome_driver_path="C:\Developement\chromedriver.exe" driver = webdriver.Chrome(executable_path= chrome_driver_path) driver.get("https://en.wikipedia.org/wiki/Main_Page") article_count = driver.find_element_by_css_selector("#articlecount a") # article_count.click() all_portals = driver.find_element_by_link_text("All portals") # all_portals.click() search = driver.find_element_by_name("search") search.send_keys("corona virus") search.send_keys(Keys.ENTER)
内容的提问来源于stack exchange,提问作者Demon
相关产品推荐
相关产品推荐

