【发布时间】:2017-12-09 10:16:03
【问题描述】:
我正在使用 selenium webdriver.Chrome 为我的测试环境创建具有特定功能的 webdriver。
class MyDriver(webdriver.Chrome):
def __init__(self, executable_path="chromedriver", port=0,
chrome_options=None, service_args=None,
desired_capabilities=None, service_log_path=None):
super().__init__(executable_path, port, chrome_options, service_args,
desired_capabilities, service_log_path)
# vdisplay = Xvfb()
# vdisplay.start()
部分测试包括使用element.send_keys(value) 发送密钥,
测试运行良好,直到几天前它开始崩溃并显示以下消息:
"selenium.common.exceptions.WebDriverException:消息:未知错误:键码转换需要 X 显示,考虑使用 Xvfb (会话信息:chrome=59.0.3071.115) (驱动信息:chromedriver=2.27.440175 (9bc1d90b8bfa4dd181fbbf769a5eb5e575574320),platform=Linux 4.10.0-22-generic x86_64)"
我反复搜索和研究我不明白错误...
我正在使用:
- Python 3.6
- 硒
- PyCharm
- chromedriver linux_64bit 2.27.440175
我发现的唯一有用的链接是chromium 在https://bugs.chromium.org/p/chromedriver/issues/detail?id=1772 打开的错误,但我不熟悉那里的工具...
我想知道是否有人有发送密钥或修复此错误的解决方案我已尝试删除 chrome 并将其降级...它没有帮助!
任何帮助将不胜感激!
谢谢
【问题讨论】:
-
找到解决方案了吗?
-
不,我没有...我刚刚删除了我的 chrome-driver 并下载了一个新的...它必须工作的时间...这个项目在 Jenkins 上运行所以我只是添加Xvfb 让它在没有显示的情况下运行
-
@traw1234 我已经发布了一个答案希望它可以帮助你...
-
“需要编辑”表示:任何人都可以通过改进格式和修复小故障来解决问题。但是,每当提出问题的 OP 需要添加更多信息时,您都应该寻找一个有效的关闭理由。如果您认为“我可以通过编辑来解决这个问题,我只是现在没有时间”,请仅投票编辑。我希望这是有道理的。除此之外:我感谢快速而善良的回归!但可以肯定的是:向 OP 发表评论告诉他出了什么问题通常会有所帮助......
标签: python python-3.x selenium google-chrome selenium-webdriver