一、安装selenium

Windows命令行(cmd)输入pip install selenium(无须指定版本默认最新)或 pip install selenium==3.141.0(可指定版本) 即可自动安装selenium。

安装完成后,输入pip show selenium 或 pip list  可查看当前的selenium版本,参考下图。

二、安装浏览器驱动(Chromedriver 谷歌和谷歌驱动版本)

浏览器驱动 是和 浏览器对应的。 不同的浏览器 需要选择不同的浏览器驱动。

目前主流的浏览器中,谷歌 Chrome 浏览器对 Selenium自动化的支持更加成熟一些。强烈推荐大家使用 Chrome浏览器。

Chromedriver 下载地址:https://chromedriver.storage.googleapis.com/index.html

注意浏览器驱动 必须要和浏览器版本匹配,下图红圈里面的版本号 就是和浏览器版本号对应的

那么怎么查看Chrome浏览器版本呢

在浏览器 chrome://version 即可进入,如下图

比如:当前Chrome浏览器版本是87, 通常就需要下载87开头的目录里面的驱动程序 。

注意:驱动和浏览器的版本号越接近越好,但是略有差别,比如87和86 ,通常也没有什么问题。

打开目录,里面有3个zip包,分别对应Linux、Mac、Windows平台。

如果我们是Windows平台的电脑,就下载 chromedriver_win32.zip

这是个zip包,下载下来之后,解压里面的程序文件 chromedriver.exe 到 python安装目录的 Script文件中,如下图

 三 、安装浏览器驱动(geckodriver 火狐和火狐驱动版本)

geckodriver下载地址:https://github.com/mozilla/geckodriver/releases

这是个zip包,下载下来之后,解压里面的程序文件 chromedriver.exe 到 python安装目录的 Script文件中,如下图

geckodriver 27版本的支持火狐浏览器 78以及以上的版本,因我下的获取是84版本号,选择的27版本的驱动

要把自动更新关掉嗷

四、测试

from selenium import webdriver

# 创建一个 WebDriver 对象
wd = webdriver.Chrome() # 指明要使用Chrome浏览器
# 调用WebDriver对象的get方法 使浏览器打开指定网址
wd.get('https://www.baidu.com')

wd = webdriver.Firefox() # 指明要使用Firefox浏览器
# 调用WebDriver对象的get方法 使浏览器打开指定网址
wd.get('https://www.baidu.com')

# 获取到input 输入框 并让它自动输入'字节跳动官网'
input_element = wd.find_element_by_id("kw")
input_element.send_keys("字节跳动官网")

# 获取到 百度一下 button 实现自动点击 完成搜索功能 使target=_blank 打开一个新窗口
wd.find_element_by_id("su").click()

Web自动化测试python环境中安装 --selenium安装、火狐和火狐驱动版本、谷歌和谷歌驱动版本、测试的更多相关文章

  1. Linux搭建python环境中cx_Oracle模块安装遇到的问题与解决方法

    安装或使用cx_Oracle时,需要用到Oracel的链接库,如libclntsh.so.11.1,否则会有各种各样的错误信息. 安装Oracle Instant Client就可得到这个链接库,避免 ...

  2. hanlp在Python环境中的安装失败后的解决方法

    Hanlp是由一系列模型与算法组成的javag工具包,目标是普及自然语言处理再生环境中的应用.有很多人在安装hanlp的时候会遇到安装失败的情况,下面就是某大神的分享的在python环境中安装失败的解 ...

  3. Python环境搭建和pycharm安装

    Python环境搭建和pycharm安装 本人安装环境为Windows10系统,下载的Python版本为3.4社区版本,可参考 1.下载Python3.4版本 官网:https://www.pytho ...

  4. python环境中运行程序

    运行Python程序,我们比较常用的是直接在Windows命令提示窗口或者Linux终端或shell窗口中,直接:Python *.py,或者在Linux环境下,在投不中,加入: #!/usr/bin ...

  5. 确定当前Python环境中的site-packages目录位置

    引入“搜索路径”这个概念是因为在使用import语句时,当解释器遇到import语句,如果模块在当前的搜索路径就会被导入. 搜索路径是一个解释器会先进行搜索的所有目录的列表. 那么python如何添加 ...

  6. web自动化测试python+selenium学习总结----selenium安装、浏览器驱动下载

    一.安装selenium 命令安装selenium库 :pip  install -U selenium 查看selenium是否安装成功:pip list PS:有时会有异常,安装失败,可以尝试去s ...

  7. python环境jieba分词的安装

    我的python环境是Anaconda3安装的,由于项目需要用到分词,使用jieba分词库,在此总结一下安装方法. 安装说明======= 代码对 Python 2/3 均兼容 * 全自动安装:`ea ...

  8. Python 环境搭建(Win 安装以及Mac OS 安装)

    千里之行始于足下,今天我们先来学习 Python 环境搭建. 注意:本系列教程基于 Python 3.X Python 环境搭建 Win 安装 打开 Python 官网 https://www.pyt ...

  9. python环境搭建、pycharm安装

    一.      实验目标 (1)  Python环境搭建 (2)  会pycharm安装和使用 (3)  了解python程序设计流程 二.      实验内容 1.勾选Add Python 3.7 ...

随机推荐

  1. Python之selenium创建多个标签页

    最近在做一个项目,需要用到cookies登录,想法是,在同一个浏览器下,打开两个标签页进行.让其自动获取cookies,先记录,不行的话,到时候再手动加载cookies. 1 ''' 2 #selen ...

  2. HTML 防盗链 用src引用网上图片显示 403 Forbidden

    比如 <img class="toto" src="http://img5.imgtn.bdimg.com/it/u=152658425,3125530872&am ...

  3. vue结合element-ui table本地分页

    <template> <el-table :data="tableData1.slice((start1-1)*length1,start1*length1)" ...

  4. (java)五大常用算法

    算法一:分治法 基本概念 1.把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题--直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并. 2.分治策略是对于一个 ...

  5. Sublime Text 2 强大的编辑功能

    多行编辑功能:1) 同时编辑多行 (Ctrl+Shift+L (Win) 或  Command+Shift+L (Mac))如要在选中的多行文本的最后面同时添加一个字符"a",先选 ...

  6. java类的定义位置

    java的类可以定义在任何位置: 一般的类是一个文件里面写一个类,且类名和文件名相同,但是定义类的位置可以是任意的如图: 上图示例: public class A{ class B{ } static ...

  7. Pytest测试框架(二):pytest 的setup/teardown方法

    PyTest支持xUnit style 结构, setup() 和 teardown() 方法用于初始化和清理测试环境,可以保证测试用例的独立性.pytest的setup/teardown方法包括:模 ...

  8. 初探JAVA内部类细节一

    定义: 可以将一个类的定义放在另一个类的内部 这就是内部类.--摘自java编程思想 一般实现方式: public class SimpleInnerClass { class Content { p ...

  9. layer做阻塞式弹出层的方法

    今天遇到一个问题: layer弹出一个confirm提示窗,然后confirm还没有点击对应的按钮的时候,就已经执行了后续代码,我这里做出的判断是,是否需要进行后续操作,但是因为layer.confi ...

  10. java的多线程:java安全问题产生的原因与JMM的关系

    一.多线程产生安全问题 1.Java内存模型 共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见. 从抽象的角度来看,JMM定义了线程和主内存 ...