Python3+selenium配置常见报错解决方案
第一个坑:'geckodriver'executableneedstobeinPATH
1.如果启动浏览器过程中报如下错误
Traceback(mostrecentcalllast):
File"",line1,in
File"D:\test\python3\lib\site-packages\selenium\webdriver\firefox\webdriver.py",line145,in__init__
self.service.start()
File"D:\test\python3\lib\site-packages\selenium\webdriver\common\service.py",line81,instart
os.path.basename(self.path),self.start_error_message)
selenium.common.exceptions.WebDriverException:Message:'geckodriver'executableneedstobeinPATH.
2.这个是因为最新的selenium3.0启动firefox需要geckodriver.exe这个驱动文件。
3.下载之后,配置到环境变量path下(可以直接放python根目录)
第二坑:Expectedbrowserbinarylocation,butunabletofindbinaryindefaultlocation
1.如果启动浏览器过程中报如下错误:
Traceback(mostrecentcalllast):
File"",line1,in
File"D:\test\python3\lib\site-packages\selenium\webdriver\firefox\webdriver.py",line155,in__init__
keep_alive=True)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py",line92,in__init__
self.start_session(desired_capabilities,browser_profile)File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py",line179,instart_session
response=self.execute(Command.NEW_SESSION,capabilities)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py",line238,inexecute
self.error_handler.check_response(response)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\errorhandler.py",line193,incheck_response
raiseexception_class(message,screen,stacktrace)
selenium.common.exceptions.WebDriverException:Message:Expectedbrowserbinarylocation,butunabletofindbinaryindefaultlocation,
no'moz:firefoxOptions.binary'capabilityprovided,andnobinaryflagsetonthecommandline.
2.这个是因为firefox.exe这个文件也需要配置到环境变量path下。
3.这个路径就是安装完firefox后,找到firefox.exe这个文件的地址,加到path下。
第三坑:UnsupportedMarionetteprotocolversion2,required3
1.如果启动浏览器过程中出现如下错误
Traceback(mostrecentcalllast):
File"",line1,in File"D:\test\python3\lib\site-packages\selenium\webdriver\firefox\webdriver.py",line155,in__init__
keep_alive=True)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py",line92,in__init__
self.start_session(desired_capabilities,browser_profile)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py",line179,instart_session
response=self.execute(Command.NEW_SESSION,capabilities)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\webdriver.py",line238,inexecute
self.error_handler.check_response(response)
File"D:\test\python3\lib\site-packages\selenium\webdriver\remote\errorhandler.py",line193,incheck_responseraiseexception_class(message,screen,stacktrace)
selenium.common.exceptions.WebDriverException:Message:UnsupportedMarionetteprotocolversion2,required3
2.这个错误原因是firefox版本过低了,最新的selenium3.0版本支持firefox47以上的版本,升级版本就可以了
第四坑:WebDriverException:Message:newSession
1.Traceback(mostrecentcalllast):
File“D:\test\python3\lib\site-packages\selenium\webdriver\firefox\\webdriver.py”,line170,ininit
keep_alive=True)
File“D:\test\python3\lib\site-packages\selenium\webdriver\firefox\\webdriver.py”,line156,ininit
self.start_session(capabilities,browser_profile)
File“D:\test\python3\lib\site-packages\selenium\webdriver\firefox\\webdriver.py”,line245,instart_session
response=self.execute(Command.NEW_SESSION,parameters)
File“D:\test\python3\lib\site-packages\selenium\webdriver\firefox\\webdriver.py”,line314,inexecute
self.error_handler.check_response(response)
File“D:\test\python3\lib\site-packages\selenium\webdriver\firefox\\errorhandler.py”,line242,incheck_response
raiseexception_class(message,screen,stacktrace)
selenium.common.exceptions.WebDriverException:Message:newSession
2.下载最新的geckodriver.exe然后把它放到python的安装目录下
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。