当前位置: 首页 > 知识库问答 >
问题:

Python 3:Selenium和geckodriver错误?

丌官浩旷
2023-03-14

我已经写了一个基本的脚本,试图打开一个网站与硒(webdriver)。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Firefox()
driver.get("https://google.com")

driver.quit()

当我启动上面的脚本时,Firefox浏览器弹出,但它仍然是空白的,它不导航到提到的网站(在本例中是Google)?我确实在终端屏幕上得到一个错误:

跟踪(最近的调用是最后一次):文件“test.py”,第10行,在driver=webdriver.firefox()文件“/usr/local/lib/python3.6/dist-packages/selenium/webdriver/firefox/webdriver.py”中,第158行,在init keep_alive=true中)文件“/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webdriver.py”,第154行,在init_session response=self.execute(command.new_session,parameters)文件“/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webdriver.py”第311行,在execute self.error_handler.check_response(响应)文件“/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/errorhandler.py”第237行,在check_response

以下是geckodriver日志文件的内容:

1513507080726 geckodriver信息geckodriver 0.19.1 151 3507080735 geckodriver信息监听127.0.0.1:47815 1513507081261 MozRunner::Runner信息运行命令:“/usr/bin/firefox”-Marionette“-profile”/tmp/rust_mozprofile.iazfxa8b0ir8“1513507085202 Marionette错误启动服务器上的错误:[Exception...”组件返回失败代码:0x804B0036 or_socket_address_in_use)“位置:”JS frame::chrome://Marionette/content/server.js::marionetteserver.prototype.start::line 95“数据:否][异常...”组件返回失败代码:0x804B0036(NS_ERROR_SOCKET_ADDRESS_IN_USE)[NSIServersocket.initspecialconnection]“nsresult:”0x804B0036(NS_ERROR_SOCKET_ADDRESS_IN_USE)“位置:”JS不]marionetteserver.prototype.start@chrome://Marionette/content/server.js:95:19 MarionetteComponent.prototype.init@resource://gre/components/marionette.js:217:5 marionetteComponent.prototype.handle@resource://gre/components/marionette.js:112:5

我不知道这是怎么回事,我似乎想不出如何修复这个错误?你们知道如何修复这个错误吗?是什么导致了这个错误?

共有1个答案

东明德
2023-03-14

在使用GeckoDriver 0.19.1时,请使用最新的Selenium V3.8.1和最新的Firefox QuantumWeb浏览器。

最后,当您初始化WebDriver而不是Driver=webdriver.firefox()时,请尝试:

driver = webdriver.Firefox(executable_path="/path/to/geckodriver")
 类似资料:
  • 并得到以下错误消息: 我找到了一个似乎可以解决我的问题的答案:使用Python-GeckoDriver可执行文件的Selenium需要在PATH中 但我不太明白如何操作计算机中的路径或如何以计算机工作的方式组织我的文件。

  • 问题内容: 我正在使用firefox gecko驱动程序制作一个机器人,我的机器人不断收到错误消息,并且我发现消息的来源是: 线。 我已将错误消息中提到的每个文件添加到路径,包括壁虎驱动程序,firefox和其他较小的文档。我完全不知所措 这是错误消息: 问题答案: 此错误消息… …表示所调用的 GeckoDriver 二进制文件格式不正确。 你的主要问题是 不兼容 的的 GeckoDriver

  • 问题内容: 我正在使用pycharm和我的pythn 版本3.6.7点9.0.1 和selenium版本selenium-3.141.0 urllib3-1.24.1 我使用此命令安装selenium 然后我这样编码 当我运行这个时,我得到这个错误 在这一行中 , 我的 geckodriver版本的 正确路径 是0.23.0 问题答案: 虽然有工作 GeckoDriver , 火狐 和 硒 ,你需

  • 问题内容: 我正在使用firefox gecko驱动程序制作一个机器人,我的机器人不断收到错误消息,并且我发现消息的来源是: 线。 我已将错误消息中提到的每个文件添加到路径,包括壁虎驱动程序,firefox和其他较小的文档。我完全不知所措 这是错误消息: 问题答案: 此错误消息… …表示所调用的 GeckoDriver 二进制文件格式不正确。 你的主要问题是 不兼容 的的 GeckoDriver

  • 无法下载GeckoDriver。你能给我一些关于如何调试和修复它的建议吗? 我收到以下错误消息 $>npm install geckodriver--save-dev npm WARN deprecated tar.gz@1.0.5:⚠marchwarning⚠stoltar.gz模块已被弃用,您的应用程序有漏洞。请改用tar模块:https://npmjs.com/tar geckodriver

  • 作为Python初学者,在刚学习Python编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍。 Python有两种错误很容易辨认:语法错误和异常。 语法错误 Python 的语法错误或者称之为解析错,是初学者经常碰到的,如下实例 >>> while True print('Hello world') File "<stdin>", line 1, in ? w