如何使用Selenium Python启动Firefox浏览器?附本人实现代码
正确使用Python Selenium启动Firefox的方案
先修正你代码中的问题
- 重复导入
webdriver,删掉其中一行即可 - 你使用的是Linux系统,下载的是对应架构的geckodriver,文件名应为
geckodriver而非geckodriver.exe(.exe是Windows平台的后缀) - 路径包含空格和括号,容易导致解析错误,建议将geckodriver移到无特殊字符的路径下,或者用引号完整包裹路径
方案一:Selenium 3兼容写法
from selenium import webdriver # 修正后缀后的路径,建议移至无特殊字符路径 driver = webdriver.Firefox(executable_path="/home/earth/Downloads/Python/geckodriver-v0.32.0-linux-aarch64/geckodriver") driver.maximize_window() driver.get("https://www.google.com/")
方案二:Selenium 4+官方推荐写法(Service类)
从Selenium 4开始,官方建议用Service类管理驱动,更符合规范:
from selenium import webdriver from selenium.webdriver.firefox.service import Service # 初始化Service对象指定驱动路径 service = Service(executable_path="/home/earth/Downloads/Python/geckodriver-v0.32.0-linux-aarch64/geckodriver") driver = webdriver.Firefox(service=service) driver.maximize_window() driver.get("https://www.google.com/")
额外必做检查
- 给geckodriver添加可执行权限:在终端执行
chmod +x /home/earth/Downloads/Python/geckodriver-v0.32.0-linux-aarch64/geckodriver,否则会触发权限错误 - 确保geckodriver版本与你的Firefox浏览器版本兼容,版本不匹配会直接启动失败
- 若不想每次写完整路径,可将geckodriver移至系统
PATH目录(如/usr/local/bin),之后直接用driver = webdriver.Firefox()即可启动
内容的提问来源于stack exchange,提问作者Pooja Patil
相关产品推荐
相关产品推荐

