最近换了电脑,练习爬虫时用到selenium,结果在重新安装chromedriver插件的时候发现原网址不能使用,找了好久终于找到了了新网址,顺便更一篇详细使用的文章,希望可以对屏幕前的你有所帮助。本篇文章共分以下三个板块。

一、什么是 selenium?

二、安装selenium

三、下载chrome driver

一、什么是 selenium?

selenium原本被用于网页测试,是浏览器自动化测试框架,但在爬虫领域,它也实现了极大的价值。selenium 可以控制你的浏览器,模仿人浏览网页,从而获取数据,自动操作等。简单来说,只需运行你的代码,它就会实现自动打开浏览器,甚至还能输入账户密码,实现网页登陆等一系列自动操作。

有了 selenium,我们便不再需要判断网页数据加载的方式,只要让 selenium 自动控制浏览器,就像有双无形的手,控制着你的鼠标和键盘,自动地帮你干活。爬取数据?自动抢票?这些当然统统都不在话下。

不过 selenium 也并非没有缺点。因为要打开浏览器并控制它,所以和我们以前学的爬虫相比,它占用的资源会更多,爬取数据的效率也会有所降低,不过至少比我们手动操作还是快很多的。

二、安装selenium

方法一:和其他 Python 第三方库的安装一样,我们要在命令行中使用 pip 命令安装 selenium:

方法二:我用的pycharm,直接在里面安装。File——settings——Project——Python Interpreter——点击"+"——搜索”selenium"——install

三、下载chrome driver

使用elenium 还需要安装相应的浏览器驱动才能控制浏览器(最好使用 Chrome 浏览器),后面都以 Chrome 浏览器 为例,其他浏览器大同小异。

查看Chrome版本:首先打开 Chrome 浏览器,依次点击浏览器右上角的 三个点 - 帮助 - 关于 Google Chrome。

如图,我的浏览器的版本信息是 100.0.4896.88。

下载驱动:打开http://chromedriver.storage.googleapis.com/index.html网站,里面有很多版本的驱动,其中可能没有准确对应我们浏览器版本的驱动。我们选择最接近的版本即可,我选择了100.0.4896.60这个版本。我用的Windows系统,因为64位向下兼容,Windows直接下载32位即可。Windows 系统下载里面的 chromedriver_win32.zip 文件,MacOS 下载 chromedriver_mac64.zip。

移动驱动到Python安装目录:下载完成后解压缩chromedriver ,Windows 系统得到 chromedriver.exe,MacOS 得到 chromedriver,这个就是我们需要的浏览器驱动。我们要将它放到 Python 所在安装目录里。 如果你忘了 Python 的安装目录,可以根据下面的操作来找到。

在代码编辑器中运行以下代码,让 Python 自己打印出所在的位置:

import sys
print(sys.executable)

# 输出
# C:\Users\13781\PycharmProjects\spiderexercise\venv\Scripts\python.exe C:/Users/13781/PycharmProjects/spiderexercise/shan.py
# C:\Users\13781\PycharmProjects\spiderexercise\venv\Scripts\python.exe

一般情况下,Windows 系统:C:\xxx\xxx\python.exe;MacOS:/Users/xxx/xxx/xxx/python。

去掉末尾的 \python.exe 或者 /python 就是 Python 所在的目录。打开目录后,我们将下载好的驱动放到目录中即可。

验证驱动是否安装成功:Windows 系统在的命令行中输入 chromedriver 命令,MacOS 系统在终端中输入 chromedriver 命令。

如果出现如图所示的内容,就证明驱动已经安装成功了。

接下来~就尽情地享受selenium带给你的奇幻魅力吧~

爬虫篇-如何下载selenium及其适配谷歌浏览器插件chromedriver(含chrome各版本及下载地址)的更多相关文章

  1. chromedriver与chrome各版本及下载地址

    Selenium从2升级到3之后呢,Selenium 3 相较于2最大的变化就是更加的标准化,可以支持更多的浏览器.那我们做自动化的时候如果用的是selenium3的话,首先要坐的就是下载不同浏览器的 ...

  2. 谷歌浏览器下载地址 chrome最新版本 百度云地址

    每次下载更新谷歌浏览器是一件很蛋疼的事情.百度搜索"谷歌浏览器下载地址",居然有很多骗子网站,相信有很多不知所以的人中招了.收集了一些chrome的安装包,放在了百度云里面(打不开 ...

  3. selenium与webdriver驱动与firefox、 chrome匹配版本

    一.Chrome python3 selenium3.11.0(直接pip安装即可) chromedriver_win32:2.38 Chrome版本: 65.0.3325.146(正式版本)(32 ...

  4. 介绍一款chrom浏览器插件 DHC是一款使用chrome模拟REST客户端向服务器发送测试数据的谷歌浏览器插件

    先打个小广告哈 公司招java架构师,月薪25K以上,负责电商平台架构工作,工作地点在北京 1号线永安里站 附近,如有意向 请把简历发我邮箱jia6235@163.com 可以内部推荐. DHC是一款 ...

  5. selenium:chromedriver与chrome版本的对应关系

    转自:http://blog.csdn.NET/huilan_same/article/details/51896672 再使用selenium打开chrome浏览器的时候,需要用chromedriv ...

  6. 常用的HTTP测试工具谷歌浏览器插件汇总

    网页的开发和测试时最常见的测试就是HTTP测试,作为曾经的测试人员在这方面还是略知一二的.其实做网页测试工作是非常繁琐的时期,有时候甚至是无聊重复的,如果没有网页测试工具的帮助的话,测试人员会越做越怀 ...

  7. 爬虫 - 请求库之selenium

    介绍 官方文档 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的 ...

  8. 爬虫(五)—— selenium模块启动浏览器自动化测试

    目录 selenium模块 一.selenium介绍 二.环境搭建 三.使用selenium模块 1.使用chrome并设置为无GUI模式 2.使用chrome有GUI模式 3.查找元素 4.获取标签 ...

  9. 洗礼灵魂,修炼python(72)--爬虫篇—爬虫框架:Scrapy

    题外话: 前面学了那么多,相信你已经对python很了解了,对爬虫也很有见解了,然后本来的计划是这样的:(请忽略编号和日期,这个是不定数,我在更博会随时改的) 上面截图的是我的草稿 然后当我开始写博文 ...

随机推荐

  1. jdr挖的大坑

    计数问题小结 很多计数问题在直接拆分计算贡献时都会出现不容易直接表示的情况.在解决这些问题时,往往需要解决一些子问题方案数的递推, 再套用组合数或者分块计算来降低难度或时间复杂度,这里给出几种递推方法 ...

  2. xml文件使用DOM解析,报异常org.xml.sax.SAXParseException,"characterEncoding" 的引用必须以 ';' 分隔符结尾异常

    这个异常一般为xml文件对&的报错,只需要将&改为转义后的&amp即可解决

  3. rabbitmq 中 vhost 的作用是什么?

    vhost本质上是一个mini版的RabbitMQ服务器,拥有自己的队列.绑定.交换器和权限控制: vhost通过在各个实例间提供逻辑上分离,允许你为不同应用程序安全保密地运行数据: vhost是AM ...

  4. python模块相互依赖的解决方案

    第一种:将相互依赖的文件中的其中一个文件的代码移植到另一个文件中... 第二种:将 import .... 或 from ... import 语句的位置移动到def函数内部,由于import和fro ...

  5. AOP 有哪些实现方式?

    实现 AOP 的技术,主要分为两大类: 静态代理 指使用 AOP 框架提供的命令进行编译,从而在编译阶段就可生成 AOP 代理类, 因此也称为编译时增强: 编译时编织(特殊编译器实现) 类加载时编织( ...

  6. ElasticSearch-学习笔记04-复杂查询

    service package com.huarui.service; import com.huarui.entity.SearchEntity; import com.huarui.exectio ...

  7. 全方位讲解 Nebula Graph 索引原理和使用

    本文首发于 Nebula Graph Community 公众号 index not found?找不到索引?为什么我要创建 Nebula Graph 索引?什么时候要用到 Nebula Graph ...

  8. 【C语言】预处理、宏定义、内联函数 _

    一.由源码到可执行程序的过程 1. 预处理: 源码经过预处理器的预处理变成预处理过的.i中间文件   1 gcc -E test.c -o test.i 2. 编译: 中间文件经过编译器编译形成.s的 ...

  9. Numpy对数组按索引查询

    Numpy对数组按索引查询 三种索引方法: 基础索引 神奇索引 布尔索引 基础索引 一维数组 和Python的List一样 二维数组 注意:切片的修改会修改原来的数组 原因:Numpy经常要处理大数组 ...

  10. Vue中获取元素宽高

    <div ref="init"></div> 写在 页面 方法 部分 这里的 offsetHeight 是返回元素的宽度(包括元素宽度.内边距和边框,不包括 ...