在Centos7上安装Python+Selenium+Firefox+Geckodriver
1.事先准备好Centos7的系统
Centos系统是CentOS Linux release 7.4.1708 (Core)
查看Centos内核版本命令cat /etc/centos-release
前提:centos7安装了GUI图形化界面
在命令行下输入
# yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
更新系统运行级别
# ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
重启系统
# reboot
系统重启后直接进入图像化界面
2.安装好的Centos系统目前自带python
查看python版本,python -V
python版本为python2.7
3.安装selenium
官网地址下载:https://pypi.python.org/pypi/selenium#downloads
百度云下载地址:https://pan.baidu.com/s/1vSEySh-HNRRw1XR75zizzQ(密码:id41)
下载到本地电脑后可通过Xftp软件传输到centos7系统中
随后进行解压:tar zxvf selenium-3.0.2.tar.gz
进入:cd selenium-3.0.2
安装:python setup.py install
4.安装Firefox
centos7自带火狐版本,无需安装,查看当前火狐版本为60.1.0(64位)
5.安装Geckodriver
由于我们自动化脚本调用Firefox,所以需要调用Geckodriver来驱动火狐浏览器,同样如果安装的为谷歌浏览器也需要chromedriver,谷歌浏览器和驱动版本有个对应表,下个文章详细说
官网地址:https://github.com/mozilla/geckodriver/releases
百度云地址:https://pan.baidu.com/s/1oVNlAVatfUzhjynOUqIyCg(密码:au6a)
下载到电脑后同样可以通过Xftp软件传输到centos7上
随后进行解压:tar zxvf geckodriver-v0.11.1-linux64.tar.gz
最重要的一步是需要将解压后的移到/usr/local/bin目录下,所以:mv geckodriver /usr/local/bin
6.验证效果
创建一个.py的文件
touch ceshi.py
vim ceshi.py
输入以下内容
# -*- coding:utf-8 -*- driver = webdriver.Firefox() driver.get('http://www.baidu.com/') driver.quit()
随后python ceshi.py,成功打开火狐,并打开百度网站
7.升级Python版本
由于当前主流的都为python3版本,因此我们需要升级python版本
查看当前python版本
(1)获取python3x的官方软件包
wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz
(2)解压该软件包
tar -zxvf Python-3.5.4.tgz
(3)在解压目录下进行安装配置
cd Python-3.5.4
./configure
(4)编译并安装
make
make install
(5)验证当前系统下安装的python版本号
(6)备份原有配置,设置python默认版本号为3x
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python3 /usr/bin/python
(7)配置相应的yum与yum install
1 # vi /usr/bin/yum
2 # vi /usr/libexec/urlgrabber-ext-down
3 //如下头部文件修改为老版本即可
4 !/usr/bin/python2.7
8.升级Selenium
由于python版本已升级,因此我们也需要升级selenium版本,执行命令
pip install -U selenium
升级完成,版本为selenium-3.13
9.验证升级是否成功
创建一个.py的文件
touch ly.py
vim ly.py
输入以下内容
# -*- coding:utf-8 -*- from selenium import webdriver driver = webdriver.Firefox() driver.get("https://www.baidu.com") driver.close()
随后python ly.py,发现报错,提示
经过查阅大量资料发现我们之前在安装selenium的时候默认是安装在/usr/lib/python2.7/site-packages目录中的,而现在用的是python3,查看/usr/local/lib/python3.5/site-packages目录并没有
发现selenium文件夹。
解决方法:
(1)将selenium文件夹整体从/usr/lib/python2.7/site-packages目录移到/usr/local/lib/python3.5/site-packages
(2)重新安装selenium至python3相应文件夹中(本人不会,所以用了第一种方法)
最后成功运行