Centos7安装python3+Selenium+chrome+chromedriver详细
python2和python3共存,Selenium错误的处理
更新Centos源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#下载完后,运行下面命令:
yum clean all
yum makecache

1.Python3安装与python2共存

wget http://mirrors.sohu.com/python/3.6.2/Python-3.6.2.tar.xz
yum install libffi-devel expat-devel gdbm-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
mv /usr/bin/python /usr/bin/python.bak
tar -xvJf  Python-3.6.2.tar.xz
cd Python-3.6.2
./configure prefix=/usr/local/python3
make && make install
make clean
ln -s /usr/local/python3/bin/python3 /usr/bin/python

python -V 检查下是不是python3
python2 -V 检查下是不是python2
如果上面正常显示,请继续设置下。yum需要python2版本,所以我们还要修改yum的配置。/usr/libexec/urlgrabber-ext-down也需要修改python2

vi /usr/bin/yum
#把文件第一行python改成python2

#!/usr/bin/python2                                                                          
import sys                                                                                  
try:                                                                                        
    import yum                                                                              
except ImportError:

......继续修改urlgrabber-ext-down
vi /usr/libexec/urlgrabber-ext-down
#跟上面一样修改第一行python改成python2

#! /usr/bin/python2                                                                         
#  A very simple external downloader                                                        
#  Copyright 2011-2012 Zdenek Pavlas

python2和python3共存:默认pip是python2,python3需要如何配置?如果pip也没有安装,就先安装pip

yum -y install epel-release
yum install python-pip

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

配置pip源按自己需要,也可以不配置

mkdir ~/.pip
vi pip.conf

[global]
timeout = 60
index-url = https://pypi.doubanio.com/simple

2.chrome安装和chromedriver下载
chrome下载安装

yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

chromedriver下载,我下载的是最新版本。chrome也是最新版本

https://npm.taobao.org/mirrors/chromedriver/2.40/chromedriver_linux64.zip

chromedriver下载后拷贝,到/usr/local/bin/目录下,并且赋可执行的权限: chmod -R 744 /usr/local/bin/chromedriver

不然在运行程序或或者重启程序时,容易报错:selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH

3.安装selenium,使用是的python3

pip3 install selenium

测试开始:
创建一个名字为test目录,目录结构如下:

[root@localhost test]# tree                                                         
├── chromedriver
└── test.py

test.py测试代码如下:chrome界面浏览

# -*- coding:utf-8 -*-

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
driver = webdriver.Chrome(executable_path="/root/test/chromedriver", chrome_options=options)
driver.get("https://www.baidu.com")
print(driver.page_source)
driver.quit()

测试运行看看

python test.py

运行完果断报错

raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: DevToolsActivePort file doesn't exist

修改test.py加上–no-sandbox完美解决。当然使用selenium可能会出现其他的错误,我会在其他文章收集些错误解决办法。

from selenium import webdriver

options = webdriver.ChromeOptions()

# 服务器不需要--    windows 下 需要--
options.add_argument(' headless')
options.add_argument(' no-sandbox')

driver = webdriver.Chrome(executable_path='/usr/local/bin/chromedriver',chrome_options=options)
driver.get("https://www.baidu.com")

print(driver.page_source)
print(driver.title)
driver.close()

借鉴https://blog.csdn.net/lizhou828/article/details/102954993

Centos7安 装python3+Selenium+chrome+chromedriver的更多相关文章

  1. 在Centos7上安装Python+Selenium+Chrome+Chromedriver

    1.下载Chrome 上一篇文章已经演示过了Python+Selenium+Firefox+Geckodriver安装步骤并通过自动化脚本打开百度 因此当前只需要安装Chrome和Chromedriv ...

  2. Python3 + selenium + Chrome浏览器(webdriver.Chrome()报错)

    Python3 + selenium + Chrome浏览器 Error: selenium.common.exceptions.WebDriverException: Message: 'chrom ...

  3. python3 + selenium + (chrome and firefox)使用

    目录 瞎扯一句 简介 最后放模板 瞎扯一句 最近在做一个关于 selenium 相关的项目,在选择浏览器方面,一般有3种方案: chrome phantomJs firefox(推荐) 网上有很多教程 ...

  4. centos7+python3+selenium+chrome

    一.安装GUI图形化界面 (1)安装GUI图形化界面 yum groupinstall "GNOME Desktop" "Graphical Administration ...

  5. linux无界面模式安装selenium+chrome+chromedriver并成功完成脚本(亲测可用)

    环境:docker centos 7.4 能通外网 写好的selenium脚本. 具体步骤: 一:安装selenium  这是最简单的 直接利用 pip3 install selenium 二 安装c ...

  6. Linux配置Selenium+Chrome+Java实现自动化测试

    1.安装chrome sudo apt-get install libxss1 libappindicator1 libindicator7 wget https://dl.google.com/li ...

  7. Deb版本Linux配置Selenium+Chrome+Java实现自动化测试

    1.安装chrome sudo apt-get install libxss1 libappindicator1 libindicator7 wget https://dl.google.com/li ...

  8. 关于Selenium Chrome Driver相关的一些资源

    这里摘录一些处理所需要的jar包,以及对照关系等. 参考: selenium-chrome-driver-2.22.0.jar:http://www.java2s.com/Code/Jar/s/Dow ...

  9. Macpro搭建java自动化(selenium+chrome)

    准备工作: 1.下载安装eclipse,并安装培训jdk软件及环境变量: 2.下载selenium,系工具包: http://seleniumhq.org/download/ selenium-ser ...

随机推荐

  1. Java知识系统回顾整理01基础03变量07final关键字

    一.final赋值 final 修饰一个变量,有很多种说法,比如不能改变等等 准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会 二.在声明的时候赋值 i已经被赋值为5,所以这里 ...

  2. 实时,异步网页使用jTable, SignalR和ASP。NET MVC

    下载source code - 984.21 KB 图:不同客户端的实时同步表. 点击这里观看现场演示. 文章概述 介绍使用的工具演示实现 模型视图控制器 遗言和感谢参考历史 介绍 HTTP(即web ...

  3. 算法进阶 (LIS变形) 固定长度截取求最长不下降子序列【动态规划】【树状数组】

    先学习下LIS最长上升子序列 ​ 看了大佬的文章OTZ:最长上升子序列 (LIS) 详解+例题模板 (全),其中包含普通O(n)算法*和以LIS长度及末尾元素成立数组的普通O(nlogn)算法,当然还 ...

  4. 详解工程师不可不会的LRU缓存淘汰算法

    大家好,欢迎大家来到算法数据结构专题,今天我们和大家聊一个非常常用的算法,叫做LRU. LRU的英文全称是Least Recently Used,也即最不经常使用.我们看着好像挺迷糊的,其实这个含义要 ...

  5. Python数据类型---数值类型

    一.整数(Integer)简称Int,又称整型,由正整数.负整数.0构成,不包括小数,分数. a,b=1,2 #一种赋值方法,此时a=1,b=2 print(a+b) #加法 3 print(a-b) ...

  6. Git 高级用法,你会了吗?

    请注意我有意跳过了 git commit.git pull/push 之类的基本命令,这份小抄的主题是 git 的一些「高级」用法. 导航 -- 跳到之前的分支 git checkout - 查看历史 ...

  7. 经验分享:对于刚接触开发的大学生,怎么在Windows查看与关闭端口占用方法?

      前言:做开发有的时候会发现某一端口被占用了而导致不能正常启动服务,这个时候就需要把这个端口释放掉了,步骤如下 观察报错信息提示,了解是哪个端口号被占用,以8700为例 按win+r输入cmd打开控 ...

  8. 解决python的requests库在使用过代理后出现拒绝连接的问题

    在使用过代理后,调用python的requests库出现拒绝连接的异常 问题 在windows10环境下,在使用代理(VPN)后.如果在python中调用requests库来地址访问时,有时会出现这样 ...

  9. linux(centos8):安装java jdk 15 (java 15)

    一,下载jdk15 官方网站: https://www.oracle.com/java/ 下载页面: https://www.oracle.com/cn/java/technologies/javas ...

  10. spring boot:spring security整合jwt实现登录和权限验证(spring boot 2.3.3)

    一,为什么使用jwt? 1,什么是jwt? Json Web Token, 它是JSON风格的轻量级的授权和身份认证规范, 可以实现无状态.分布式的Web应用授权 2,jwt的官网: https:// ...