ubuntu下安装selenium以及chromedriver、geckodriver和phantomjs等驱动

本文介绍了在Ubuntu14.04系统中,如何安装和配置selenium的Chrome驱动(chromedriver)、Firefox驱动(geckodriver)以及无头浏览器PhantomJS。详细讲解了各个驱动的下载、版本匹配原则,以及安装过程,最后通过一段代码进行测试验证。
摘要由CSDN通过智能技术生成

环境:
系统 : Ubuntu14.04 64位
谷歌浏览器版本 : chrome60
火狐浏览器版本 : firefox54


做python爬虫,有些数据需要点击页面后才能获取到,因此需要使用selenium来进行一些操作。
selenium安装方法:

pip install selenium

一般来说,selenium用到的浏览器有三个,可视化的有界面的为chrome和firefox,无界面的为phantomjs。其中,phantomjs速度较快,效率较高,但是在测试阶段可能不是那么方便,接下来就介绍一下其他两种driver的安装方法。


首先介绍chromedriver的安装方法:

使用chrome浏览器需要配置好chromedriver,chromedriver有很多版本和浏览器版本需要一一对应,否则无法使用。
查看chrome版本 : 点击浏览器右上角–>关于chromium。
chromedriver 下载地址:链接
根据系统选择对应版本即可。我下的是2.31–>chromedriver_linux64.zip。
如何查看driver和浏览器版本的对应关系 : 最新链接

----------ChromeDriver v2.31 (2017-07-21)----------
Supports Chrome v58-60
----------ChromeDriver v2.30 (2017-06-07)----------
Supports Chrome v58-60
----------ChromeDriver v2.29 (2017-04-04)----------
Supports Chrome v56-58
----------ChromeDriver v2.28 (2017-03-09)----------
Supports Chrome v55-57
----------ChromeDriver v2.27 (2016-12-23)----------
Supports Chrome v54-56

安装方法 :
下载好后,在终端切换到文件所在路径,输入以下几个命令:

tar -xvzf chromedriver_linux64.zip
chmod +x chromedriver
sudo mv chromedriver /usr/bin/
#解压,加上执行权限,移动到/usr/bin/文件夹下。(复制则将mv改为cp)

网上也有另一种,不过意思差不多:

sudo mv -f chromedriver /usr/local/share/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver
#ln -s 为创建链接

至此,chromedriver安装配置成功。


geckodriver的安装方法
下载地址:链接
我下载的是geckodriver-v0.18.0-linux64.tar.gz .
安装方法与chromedriver类似:
在终端下切换到下载路径下,输入以下命令

tar -xvzf geckodriver*
chmod +x geckodriver
sudo mv geckodriver /usr/local/bin/

至此,geckodriver安装配置成功。


最后,介绍phantomjs的下载以及安装方法:
下载地址:链接
我下载的版本为:phantomjs-2.1.1-linux-x86_64.tar.bz2
安装方法与上面类似。

#切换到下载目录
tar -xvzf phantomjs-2.1.1-linux-x86_64.tar.bz2
#解压后可以看到phantomjs在bin目录下
sudo cp /home/usrname/Downloads/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/
cd /usr/local/bin/
chmod +x phantomjs

至此,phantomjs配置完毕,可以在python下直接使用了。


接下来可以用一小段代码测试一下:

#-*- coding:utf-8 -*-
from selenium import webdriver
driver = webdriver.Chrome()
#driver = webdriver.Firefox()
#driver = webdriver.PhantomJS()
driver.get('http://www.baidu.com')

driver.find_element_by_id('kw').send_keys(u'MoonBreeze的博客')
driver.find_element_by_id('su').click()

如果以上步骤没有错误的话,那么在这一步将可以在浏览器界面看到百度的搜索结果。
如果firefox报如下错误KeyError: 'sessionId',那么升级selenium版本即可。

pip install -U selenium

以上。欢迎交流。

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值