我正试图使用python制作一个Web爬虫,使其在CentOS 7 VM上运行。目前,我从yum安装了Firefox 60.5.0-2.el7.centos,从pip安装了Selenium 3.141.0,并下载了geckodriver 0.24.0并将其放入PATH文件夹。下面是我的代码:
from selenium import webdriver
from selenium.webdriver import Firefox
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
cap = DesiredCapabilities().FIREFOX
cap["marionette"] = False
driver = '/opt/selenium-driver/geckodriver'
binary = '/usr/bin/firefox'
opts = Options()
opts.set_headless()
assert opts.headless
web = webdriver.Firefox(firefox_binary=binary,options=opts,capabilities=cap,executable_path=driver)
web.get("https://www.python.org/")
assert "Python" in web.title
print(web.title)
web.close()
当我运行上面的代码时,它给了我这个错误:
selenium.common.exceptions.WebDriverException:消息:浏览器似乎已经退出,无法连接。如果您在FirefoxBinary构造函数中指定了log_file,请检查它的详细信息。
在此之前,我遇到了其他错误(无法找到匹配的功能集,仅允许本地连接。拒绝连接),并且尝试添加其他问题的答案,但到目前为止没有任何结果。任何帮助将不胜感激。谢谢。