关于#pycharm#配置火狐最后运行不了的问题,如何解决?

用pycharm配置火狐浏览器后最后运行检查时报错,求各位帮我看看怎么解决吧在😭
报错提示为:

Traceback (most recent call last):
  File "F:/pycharm/pythonProject1/test.py", line 3, in 
    driver = webdriver.Firefox()
  File "F:\python3.8.6\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 196, in __init__
    super().__init__(command_executor=executor, options=options, keep_alive=True)
  File "F:\python3.8.6\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 286, in __init__
    self.start_session(capabilities, browser_profile)
  File "F:\python3.8.6\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 378, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "F:\python3.8.6\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 440, in execute
    self.error_handler.check_response(response)
  File "F:\python3.8.6\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 245, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: Expected browser binary location, but unable to find binary in default location, no 'moz:firefoxOptions.binary' capability provided, and no binary flag set on the command line

根据报错信息,看起来是Firefox浏览器的二进制文件路径未被正确设置,所以Selenium无法找到Firefox浏览器的安装位置。你可以尝试以下几种方法来解决这个问题:

指定 Firefox 二进制文件路径
你可以在启动 Firefox 浏览器时指定 Firefox 的二进制文件路径,这样 Selenium 就能正确找到 Firefox 浏览器的位置。在 webdriver.Firefox() 方法中传递一个 firefox_binary 参数即可:

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

binary = FirefoxBinary('path/to/firefox/binary')
driver = webdriver.Firefox(firefox_binary=binary)


注意,需要将 path/to/firefox/binary 替换为你本地 Firefox 浏览器的安装路径。

添加 Firefox 二进制文件路径到系统 PATH 环境变量中
将 Firefox 的二进制文件路径添加到系统 PATH 环境变量中也可以解决这个问题。你可以按照以下步骤来实现:

打开 Firefox 浏览器安装目录,找到 firefox.exe 文件的完整路径;
在 Windows 中,打开“系统属性”窗口,点击“高级系统设置”,然后点击“环境变量”;
在“系统变量”中找到“Path”变量,双击打开;
在“变量值”中添加 Firefox 二进制文件路径,多个路径用分号分隔;
点击“确定”保存设置,并重启 PyCharm。
重新安装 Firefox 浏览器
如果以上方法都无法解决问题,你可以尝试重新安装 Firefox 浏览器,确保 Firefox 浏览器正确安装,并且能够正确地运行。

希望这些方法能帮助你解决问题。
答案出自 https://www.wodianping.com/

该回答引用GPTᴼᴾᴱᴺᴬᴵ
根据错误信息,该问题是由于Selenium无法找到Firefox浏览器的二进制文件而引起的。下面是可能的解决方案:

1.指定Firefox浏览器的二进制文件路径。在使用Selenium WebDriver启动Firefox浏览器时,可以使用FirefoxOptions类中的binary_location属性指定Firefox浏览器的二进制文件路径。例如:

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.binary_location = '/usr/bin/firefox'
driver = webdriver.Firefox(options=options)


2.更新Firefox浏览器。确保Firefox浏览器是最新版本,并检查Firefox浏览器是否在默认位置安装。如果Firefox浏览器已经安装在默认位置,则可以尝试重新安装Firefox浏览器并更新到最新版本。

3.检查Firefox驱动程序的版本。确保已下载并使用正确版本的Firefox驱动程序。Selenium WebDriver要求Firefox浏览器和Firefox驱动程序的版本要匹配。

4.在PyCharm中设置Firefox浏览器的路径。在PyCharm的“Run/Debug Configurations”对话框中,找到“Python”选项卡,在“Environment variables”字段中添加以下键值对:

Name: MOZ_HEADLESS
Value: 1
Name: PATH
Value: /usr/bin/firefox


其中,/usr/bin/firefox应替换为Firefox浏览器的实际安装路径。

如果上述方法仍无法解决问题,可以尝试在命令行中直接启动Firefox浏览器,以便查看更多有关Firefox浏览器的错误信息。

兄弟,劝你一句,还是用谷歌浏览器吧,下载一个驱动就行了,后期维护成本比较低,容易迁移到linux