前面我们成功安装好了Selenium库,但是它是一个自动化测试工具,需要浏览器来配合使用,本节中我们就介绍一下Chrome浏览器及ChromeDriver驱动的配置。

首先,下载Chrome浏览器,方法有很多,在此不再赘述。

随后安装ChromeDriver。因为只有安装ChromeDriver,才能驱动Chrome浏览器完成相应的操作。下面我们来介绍下怎样安装ChromeDriver。

1. 相关链接

2. 准备工作

在这之前请确保已经正确安装好了Chrome浏览器并可以正常运行,安装过程不再赘述。

3. 查看版本

点击Chrome菜单“帮助”→“关于Google Chrome”,即可查看Chrome的版本号,如图1-14所示。

图1-14 Chrome版本号

这里我的Chrome版本是58.0。

请记住Chrome版本号,因为选择ChromeDriver版本时需要用到。

4. 下载ChromeDriver

打开ChromeDriver的官方网站,可以看到最新版本为2.31,其支持的Chrome浏览器版本为58~60,官网页面如图1-15所示。

图1-15 官网页面

如果你的Chrome版本号是58~60,那么可以选择此版本下载。

如果你的Chrome版本号不在此范围,可以继续查看之前的ChromeDriver版本。每个版本都有相应的支持Chrome版本的介绍,请找好自己的Chrome浏览器版本对应的ChromeDriver版本再下载,否则可能无法正常工作。

找好对应的版本号后,随后到ChromeDriver镜像站下载对应的安装包即可:https://chromedriver.storage.googleapis.com/index.html。在不同平台下,可以下载不同的安装包。

5. 环境变量配置

下载完成后,将ChromeDriver的可执行文件配置到环境变量下。

在Windows下,建议直接将chromedriver.exe文件拖到Python的Scripts目录下,如图1-16所示。

图1-16 Python Scripts目录

此外,也可以单独将其所在路径配置到环境变量,具体的配置方法请参见1.1节。

在Linux和Mac下,需要将可执行文件配置到环境变量或将文件移动到属于环境变量的目录里。

例如,要移动文件到/usr/bin目录。首先,需要在命令行模式下进入其所在路径,然后将其移动到/usr/bin:

 
 
1
sudo mv chromedriver /usr/bin

当然,也可以将ChromeDriver配置到$PATH。首先,可以将可执行文件放到某一目录,目录可以任意选择,例如将当前可执行文件放在/usr/local/chromedriver目录下,接下来可以修改~/.profile文件,相关命令如下:

 
 
1
export PATH="$PATH:/usr/local/chromedriver"

保存后执行如下命令:

 
 
1
source ~/.profile

即可完成环境变量的添加。

6. 验证安装

配置完成后,就可以在命令行下直接执行chromedriver命令了:

 
 
1
chromedriver

如果输入控制台有类似图1-17所示的输出,则证明ChromeDriver的环境变量配置好了。

图1-17 控制台输出

随后再在程序中测试,执行如下Python代码:

 
 
1
2
from selenium import webdriver
browser = webdriver.Chrome()

运行之后,如果弹出一个空白的Chrome浏览器,则证明所有的配置都没有问题。如果没有弹出,请检查之前的每一步配置。

如果弹出后闪退,则可能是ChromeDriver版本和Chrome版本不兼容,请更换ChromeDriver版本。

如果没有问题,接下来就可以利用Chrome来做网页抓取了。

[Python3网络爬虫开发实战] 1.2.3-ChromeDriver的安装的更多相关文章

  1. [Python3网络爬虫开发实战] 1.3.2-Beautiful Soup的安装

    Beautiful Soup是Python的一个HTML或XML的解析库,我们可以用它来方便地从网页中提取数据.它拥有强大的API和多样的解析方式,本节就来了解下它的安装方式. 1. 相关链接 官方文 ...

  2. [Python3网络爬虫开发实战] 1.9.4-Scrapyd API的安装

    安装好了Scrapyd之后,我们可以直接请求它提供的API来获取当前主机的Scrapy任务运行状况.比如,某台主机的IP为192.168.1.1,则可以直接运行如下命令获取当前主机的所有Scrapy项 ...

  3. 崔庆才Python3网络爬虫开发实战电子版书籍分享

    资料下载地址: 链接:https://pan.baidu.com/s/1WV-_XHZvYIedsC1GJ1hOtw 提取码:4o94 <崔庆才Python3网络爬虫开发实战>高清中文版P ...

  4. 《Python3 网络爬虫开发实战》开发环境配置过程中踩过的坑

    <Python3 网络爬虫开发实战>学习资料:https://www.cnblogs.com/waiwai14/p/11698175.html 如何从墙内下载Android Studio: ...

  5. 《Python3 网络爬虫开发实战》学习资料

    <Python3 网络爬虫开发实战> 学习资料 百度网盘:https://pan.baidu.com/s/1PisddjC9e60TXlCFMgVjrQ

  6. Python3网络爬虫开发实战PDF高清完整版免费下载|百度云盘

    百度云盘:Python3网络爬虫开发实战高清完整版免费下载 提取码:d03u 内容简介 本书介绍了如何利用Python 3开发网络爬虫,书中首先介绍了环境配置和基础知识,然后讨论了urllib.req ...

  7. 转:【Python3网络爬虫开发实战】 requests基本用法

    1. 准备工作 在开始之前,请确保已经正确安装好了requests库.如果没有安装,可以参考1.2.1节安装. 2. 实例引入 urllib库中的urlopen()方法实际上是以GET方式请求网页,而 ...

  8. 《Python3网络爬虫开发实战》PDF+源代码+《精通Python爬虫框架Scrapy》中英文PDF源代码

    下载:https://pan.baidu.com/s/1oejHek3Vmu0ZYvp4w9ZLsw <Python 3网络爬虫开发实战>中文PDF+源代码 下载:https://pan. ...

  9. 《Python3网络爬虫开发实战》

    推荐:★ ★ ★ ★ ★ 第1章 开发环境配置 第2章 网页基础知识 第3章 网络爬虫基础 第4章 基本库的使用 第5章 解析库的使用 第6章 数据存储 第7章 Ajax数据爬取 第8章 动态渲染页面 ...

  10. [Python3网络爬虫开发实战] 3.1.4-分析Robots协议

    利用urllib的robotparser模块,我们可以实现网站Robots协议的分析.本节中,我们来简单了解一下该模块的用法. 1. Robots协议 Robots协议也称作爬虫协议.机器人协议,它的 ...

随机推荐

  1. Linux下 本地yum源搭建

    第1章 关于yum源 1.1 什么是yum源 yum(Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件 ...

  2. bzoj 1502 月下柠檬树【Simpson积分】

    投影到地面之后,会发现圆形在平行光下面积和形状是不会变的,也就是所要求的图形是若干个圆和把相邻两个圆连起来的公切线所组成的. 公切线和圆间距瞎求一下就行,注意要去掉被完全覆盖的圆 然后simpson即 ...

  3. 51nod 1120 机器人走方格 V3 【卡特兰数+卢卡斯定理+组合数】

    -我并不知道为什么事卡特兰数,反正用dp打的表就是卡特兰数,因为是两个三角所以再乘个2 卡特兰数使用\( h(n)=\frac{C_{2n}^{n}}{n+1} \)因为范围比较大所以组合数部分用卢卡 ...

  4. 【插件开发】—— 5 SWT控件以及布局使用

    前文回顾: 1 插件学习篇 2 简单的建立插件工程以及模型文件分析 3 利用扩展点,开发透视图 4 SWT编程须知 经过前几篇的介绍,多少对SWT又有了一些认识,那么这篇继续来看一下一些控件的组合使用 ...

  5. Ubuntu 18 安装 wps

    本来有三种方法 1. 软件中心 安装最简单 2. 命令行snap 安装 如果没有安装snap 先安装 sudo apt install snapd 然后安装wps sudo snap install ...

  6. 题解报告:hdu 1212 Big Number(大数取模+同余定理)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1212 Problem Description As we know, Big Number is al ...

  7. JUnit单元测试&注解

    ①测试方法上必须使用@Test进行修饰 ②测试方法必须使用public void 进行修饰,不能带任何的参数 ③新建一个源代码目录来存放我们的测试代码,即将测试代码和项目业务代码分开 ④测试类所在的包 ...

  8. 有关LD_LIBRARY_PATH与ld.so.conf

    我之前写过一篇关于LD_LIBRARY_PATH与gcc/g++ -L的关系的文章,于是我自己用CPACK制作了一个Debian安装包,然后我在/home/.bashrc里添加了export LD_L ...

  9. 配置maven环境变量cmd控制台提示:mvn不是内部或外部命令,也不是可运行的程序或批处理文件

    配置maven环境变量cmd控制台提示:mvn不是内部或外部命令,也不是可运行的程序或批处理文件 首先maven环境变量: 变量名:MAVEN_HOME 变量值:E:\apache-maven-3.2 ...

  10. android开发学习——android studio 引入第三方库的总结

    http://www.jianshu.com/p/0c592fff5d89 总结的很溜