【问题标题】:I can't run geckodriver, python selenium ; [WinError 216]我无法运行 geckodriver、python selenium; [WinError 216]
【发布时间】:2023-02-05 10:45:45
【问题描述】:

我有 win32 驱动程序

https://github.com/mozilla/geckodriver/release

并将exe放在python38文件夹下

我正在运行 Windows 11

OSError: [WinError 216] 此版本的 %1 与您运行的 Windows 版本不兼容。检查您计算机的系统信息,然后联系软件发行商

在这里你可以找到完整的终端输出

https://pastebin.com/k3Gvm2nU

> `from selenium import webdriver
> from selenium.webdriver.common.keys import Keys
> from selenium.webdriver.common.by import By
> 
> driver = webdriver.Firefox()
> driver.get("http://www.python.org")
> assert "Python" in driver.title
> elem = driver.find_element(By.NAME, "q")
> elem.clear()
> elem.send_keys("l")
> elem.send_keys(Keys.RETURN)
> assert "No results found." not in driver.page_source`

这是代码,我期待它打开一个 firefox 页面但它没有,我认为 geckodriver 没有运行,因为它出于某些原因不兼容?

【问题讨论】:

  • 该 pastebin 链接转到 SO 主页。将输出添加到这篇文章。
  • @John 不要单击该链接:将其复制并粘贴到浏览器的地址栏。这只是 SoF 采取的一项相当新的安全措施。 OP:尝试重新安装你的 python 安装程序,创建一个新的虚拟环境,确保你的 geckodriver 版本与你安装的 FF 版本匹配,你应该没问题。

标签: python windows selenium geckodriver


【解决方案1】:

您可以使用webdriver_manager 来解决驱动问题。您可以将 webdriver_manager 用于 firefox,如您在链接中所见,如下所示

对于硒 3

from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager

driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())

对于硒 4

from selenium import webdriver
from selenium.webdriver.firefox.service import Service as FirefoxService
from webdriver_manager.firefox import GeckoDriverManager

driver = webdriver.Firefox(service=FirefoxService(GeckoDriverManager().install()))

【讨论】:

    猜你喜欢
    • 2019-11-11
    • 1970-01-01
    • 2017-05-24
    • 2019-03-15
    • 1970-01-01
    • 1970-01-01
    • 2021-04-09
    • 1970-01-01
    • 2021-10-20
    相关资源
    最近更新 更多