centos 系统中安装使用selenium,firefox
由于爬取的页面需要登录获取信息,所以需要模拟浏览器环境。
安装selenium
命令:pip install selenium
安装firefox
命令:yum install firefox
firefox --version,查看firefox的版本(60.7)
安装驱动
操作firefox浏览器需要用到驱动geckodriver
安装包地址:https://github.com/mozilla/ge...
上面有各种版本的驱动,此处下载的是v19,并解压放置在usr/bin中
错误提示
WebDriverException: Message: invalid argument: can't kill an exited process
出现该错误,可能是因为驱动与浏览器的版本不兼容,降驱动版本比较方便。
https://stackoverflow.com/que...
Webdriver Exception:Process unexpectedly closed with status: 1
出现该错误,可能是因为在无界面的系统中启用浏览器,且没有设置headless选项。
解决方法:
from selenium import webdriver from selenium.webdriver import FirefoxOptions opts = FirefoxOptions() opts.add_argument("--headless") browser = webdriver.Firefox(firefox_options=opts) browser.get('http://example.com')
https://stackoverflow.com/que...
WebDriverException: Message: 'geckodriver' executable needs to be in PATH
解决方法:设置executable_path为驱动放置位置
webdriver.Firefox(executable_path='/usr/bin/geckodriver')
OSError: [Errno 20] Not a directory
webdriver.Firefox('/usr/bin/geckodriver')此处的错误为没有设置参数名
解决方法:webdriver.Firefox(executable_path='/usr/bin/geckodriver')