SessionNotCreatedException:消息:无法创建新服务:带有Selenium 3.14.0和Python 3.7.3的ChromeDriverService [英] SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService with Selenium 3.14.0 and Python 3.7.3
问题描述
Python 3.7.3
Python 3.7.3
Pycharm 2019.1.3
Pycharm 2019.1.3
硒独立版3.14.0
selenium standalone 3.14.0
硒3.141.0
Java JDK 12.0.2
Java JDK 12.0.2
Windows 7
Windows 7
当我尝试使用远程Webdriver运行脚本时出现错误,我的 java.version不是我所期望的(预期版本至少为12):
When I try to run script using remote webdriver a got the error, my java.version is not what I expected (expected version at least 12.):
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
System info: host: 'host_name', ip: 'localhost', os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.8.0_221'
Driver info: driver.version: unknown
Stacktrace:
at org.openqa.selenium.remote.server.ServicedSession$Factory.lambda$get$0 (ServicedSession.java:134)
at org.openqa.selenium.remote.server.ServicedSession$Factory.apply (ServicedSession.java:151)
at org.openqa.selenium.remote.server.ActiveSessionFactory.lambda$apply$12 (ActiveSessionFactory.java:177)
at java.util.stream.ReferencePipeline$3$1.accept (None:-1)
at java.util.stream.ReferencePipeline$11$1.accept (None:-1)
at java.util.stream.ReferencePipeline$2$1.accept (None:-1)
at java.util.Spliterators$ArraySpliterator.tryAdvance (None:-1)
at java.util.stream.ReferencePipeline.forEachWithCancel (None:-1)
at java.util.stream.AbstractPipeline.copyIntoWithCancel (None:-1)
at java.util.stream.AbstractPipeline.copyInto (None:-1)
at java.util.stream.AbstractPipeline.wrapAndCopyInto (None:-1)
at java.util.stream.FindOps$FindOp.evaluateSequential (None:-1)
at java.util.stream.AbstractPipeline.evaluate (None:-1)
at java.util.stream.ReferencePipeline.findFirst (None:-1)
at org.openqa.selenium.remote.server.ActiveSessionFactory.apply (ActiveSessionFactory.java:180)
at org.openqa.selenium.remote.server.NewSessionPipeline.lambda$null$2 (NewSessionPipeline.java:65)
at java.util.stream.ReferencePipeline$3$1.accept (None:-1)
at java.util.stream.ReferencePipeline$2$1.accept (None:-1)
at java.util.Collections$2.tryAdvance (None:-1)
at java.util.stream.ReferencePipeline.forEachWithCancel (None:-1)
at java.util.stream.AbstractPipeline.copyIntoWithCancel (None:-1)
at java.util.stream.AbstractPipeline.copyInto (None:-1)
at java.util.stream.AbstractPipeline.wrapAndCopyInto (None:-1)
at java.util.stream.FindOps$FindOp.evaluateSequential (None:-1)
at java.util.stream.AbstractPipeline.evaluate (None:-1)
at java.util.stream.ReferencePipeline.findFirst (None:-1)
at org.openqa.selenium.remote.server.NewSessionPipeline.lambda$createNewSession$3 (NewSessionPipeline.java:68)
at java.util.stream.ReferencePipeline$3$1.accept (None:-1)
at java.util.stream.ReferencePipeline$3$1.accept (None:-1)
at java.util.stream.ReferencePipeline$3$1.accept (None:-1)
at java.util.stream.DistinctOps$1$2.accept (None:-1)
at java.util.stream.ReferencePipeline$2$1.accept (None:-1)
at java.util.stream.ReferencePipeline$3$1.accept (None:-1)
at java.util.stream.ReferencePipeline$2$1.accept (None:-1)
at java.util.stream.Streams$StreamBuilderImpl.tryAdvance (None:-1)
at java.util.stream.Streams$ConcatSpliterator.tryAdvance (None:-1)
at java.util.stream.ReferencePipeline.forEachWithCancel (None:-1)
at java.util.stream.AbstractPipeline.copyIntoWithCancel (None:-1)
at java.util.stream.AbstractPipeline.copyInto (None:-1)
at java.util.stream.AbstractPipeline.wrapAndCopyInto (None:-1)
at java.util.stream.FindOps$FindOp.evaluateSequential (None:-1)
at java.util.stream.AbstractPipeline.evaluate (None:-1)
at java.util.stream.ReferencePipeline.findFirst (None:-1)
at org.openqa.selenium.remote.server.NewSessionPipeline.createNewSession (NewSessionPipeline.java:71)
at org.openqa.selenium.remote.server.commandhandler.BeginSession.execute (BeginSession.java:65)
at org.openqa.selenium.remote.server.WebDriverServlet.lambda$handle$3 (WebDriverServlet.java:250)
at java.util.concurrent.Executors$RunnableAdapter.call (None:-1)
at java.util.concurrent.FutureTask.run (None:-1)
at java.util.concurrent.ThreadPoolExecutor.runWorker (None:-1)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (None:-1)
at java.lang.Thread.run (None:-1)
我尝试重新安装Java JDK,但版本保持不变-1.8.0_221
I've tried to reinstall java JDK but version stay the same as was - 1.8.0_221
我在python中的代码:
My code in python:
driver = webdriver.Remote(
command_executor='http://10.20.10.193:4444/wd/hub',
desired_capabilities=DesiredCapabilities.CHROME)
driver.get('https://google.com')
设置硒服务器:
java -jar selenium-server-standalone-3.14.0.jar
我做错了什么?
推荐答案
此错误消息...
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
System info: host: 'host_name', ip: 'localhost', os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.8.0_221'
Driver info: driver.version: unknown
...表示 ChromeDriver 无法识别.
...implies that the ChromeDriver is not getting recognized.
您的主要问题是所使用的二进制文件版本之间的不兼容性:
Your main issue is the incompatibility between the version of the binaries you are using as follows:
Selenium Client Driver 页面提到:
-
支持的Python版本:
Supported Python Versions:
Python 2.7, 3.4+
但是硒3.141.0 页面上的列表仅包括:
But the list on selenium 3.141.0 page includes only:
因此可能仍不支持 Python 3.7.3 ,您可能必须将python降级到相关版本.
So possibly Python 3.7.3 is still not supported and you may have to downgrade python to a relevant version.
无法使用Selenium和Java 11导入org.openqa.selenium.WebDriver
这篇关于SessionNotCreatedException:消息:无法创建新服务:带有Selenium 3.14.0和Python 3.7.3的ChromeDriverService的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!