centOS 7 python+selenium+chromedriver(无界面) 环境搭建

centOS 7 python+selenium+chromedriver(无界面) 环境搭建

  • 一、Linux (Centos)安装谷歌浏览器(正常步骤加暴力两种方法)(部分转载)
    • 1. 安装依赖法
    • 2. 安装依赖包
    • 3. 使用yum localinstall (暴力)
  • 二、chromedriver安装
    • 1. 安装步骤
    • 2. 版本验证
  • 三、python3安装配置
    • 1. 安装python
  • 四、安装pip(如果报错的话在执行)
    • 1. 下载
    • 2. 安装
    • 3. 查看版本
    • 4. 查看安装路径
    • 5. 软连接
  • 五、 安装selenium
  • 六、最后来一段代码测试一下环境

之前在Windows下使用python+selenium+chromedriver,启动脚本后由于有chrome界面,存在界面渲染加载的情况,影响效率。现在都是云服务器只有命令行界面下运行效率更高更快。所以就转战centOS上来了。
我的是腾讯云的centOS7系统。
通过 centOS 7 python+selenium+chromedriver,实现无界面的爬虫等操作,更可以对一些动态JS页面进行爬虫和模拟点击,非常高效,亲测可用哦。现在就把经验分享给大家。

一、Linux (Centos)安装谷歌浏览器(正常步骤加暴力两种方法)(部分转载)

程序员必备谷歌和火狐浏览器,但是在Windows下安装大家的都会,Linux下安装可能会遇到依赖问题,所以整理了两种方法,供大家参考。

1. 安装依赖法

  1. 下载 rpm 包
    一般网上都会给出下面这个链接让大家去下载,这个链接会下载chrome的最新版(我当时最新版chrome是87.0.4280.66,但是chromedriver最新版是87.0.4280.20,版本不匹配,运行python时会报错

    #这个链接会下载最新版chrome
    https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

    百度是真不行,搜了好长时间都没有找到解决办法和对应的版本,都是广告。然后Google了一下,国外有很多网站可以下到chrome的历史版本。大家可以去这个网址下载,网速还很快。
    https://freesoft.io/linux/google_chrome_linux/versions
    centOS 7 python+selenium+chromedriver(无界面) 环境搭建_第1张图片

    也可以去这个网址,下载的是zip压缩包,但是我不会安装。
    https://chromium.cypress.io/
    centOS 7 python+selenium+chromedriver(无界面) 环境搭建_第2张图片

2. 安装依赖包

```bash
yum install -y lsb
yum install -y libXScrnSaver
```
  1. 安装chrome
    cd到你rpm安装包的目录,直接安装

    rpm -ivh google-chrome-stable_current_x86_64.rpm
    

    注:rmp -ivh 后面跟的是你下载的chrome 的rpm包全名(注意包所在的路径哦)
    这样就安装成功了,但是有的小可爱们安装过依赖了,但是安装时还是报错(如下)就用下面另一种方法。

    警告:google-chrome-stable_current_x86_64.rpm: 头V4 DSA/SHA1 Signature, 密钥 ID 7fac5991: NOKEY
    错误:依赖检测失败:
    	lsb >= 4.0 被 google-chrome-stable-34.0.1847.116-1.x86_64 需要
    	libXss.so.1()(64bit) 被 google-chrome-stable-34.0.1847.116-1.x86_64 需要 
    

3. 使用yum localinstall (暴力)

直接执行下面命令

sudo yum localinstall google-chrome-stable_current_x86_64.rpm

后面跟的是包名,这样的话就会自己解决依赖问题,并把谷歌安装上。

参考:https://blog.csdn.net/qq_43437122/article/details/103548432

二、chromedriver安装

先奉上下载地址,Windows和Linux都可以下载,国内连接,应该所有人都知道:
http://npm.taobao.org/mirrors/chromedriver/

1. 安装步骤

不要问我这几句都是什么意思,执行就对了,可以将第一句语句wget后面的链接换成对应版本的。
记住,chromedriver一定要和chrome版本对应,否则会报错

wget http://npm.taobao.org/mirrors/chromedriver/86.0.4240.22/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
mv chromedriver /usr/bin/
chromedriver --version

2. 版本验证

运行chromedriver --version之后可以看到下面这段就证明正常了

ChromeDriver 86.0.4240.22 (398b0743353ff36fb1b82468f63a3a93b4e2e89e-refs/branch-heads/4240@{#378})

三、python3安装配置

网上centOS的python3安装配置很多,作为小白,还是有点懵的,下面我就以我的经验介绍一下
yum源是支持python3.6,命令:

1. 安装python

yum install -y  python36

四、安装pip(如果报错的话在执行)

如果输入pip命令报错,可以再试试pip3(因为咱们安装的是python3,python3一般都是自带匹配,但是可能命令是pip3)

 错误:
 -bash: pip: command not found

可能安装有问题,

1. 下载

wget https://bootstrap.pypa.io/get-pip.py

2. 安装

python get-pip.py

3. 查看版本

pip -V

4. 查看安装路径

find / -name pip

5. 软连接

ln -sv /usr/local/python/bin/pip /usr/bin/pip

五、 安装selenium

如果前面都通过了的话,这部就简单了,直接上命令

pip3 install selenium

六、最后来一段代码测试一下环境

新建一个.py文件,运行测试代码

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument('--headless')  # 无界面
chrome_options.add_argument('--no-sandbox')  # 解决DevToolsActivePort文件不存在报错问题
chrome_options.add_argument('--disable-gpu')   # 禁用GPU硬件加速。如果软件渲染器没有就位,则GPU进程将不会启动。
chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_argument('--window-size=1920,1080')  # 设置当前窗口的宽度和高度
driver = webdriver.Chrome('chromedriver',chrome_options=chrome_options)
driver.get("https://www.baidu.com/")
print(driver.page_source)
driver.quit()

参考:
https://www.cnblogs.com/mayijinfu/p/11779234.html
https://www.cnblogs.com/sueyyyy/p/10954458.html
https://www.cnblogs.com/iam-ironman/articles/10969663.html

你可能感兴趣的:(python,selenium,python)