selenium 与 chromedriver安装

本文章向大家介绍selenium 安装与 chromedriver安装,主要包括selenium 安装与 chromedriver安装使用实例、应用技巧、基本知识点总结和需要注意事项供大家参考。

一、安装selenium

1、Selenium简介

  • Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,可以按指定的命令自动操作,Selenium 可以直接运行在浏览器上,
  • 它支持所有主流的浏览器.
  • Selenium 可以根据我们的指令,模拟用户的行为操作,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生.
  • Selenium 不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用,如Chrome浏览器.
  • Selenium支持IE、Google Chrome、Firefox、Opera等主流浏览器
  • Selenium支持主流开发语言,如Java、Python、C#等

2、Selenium安装

需要百度下chromedriver版本支持的Chrome版本,找到自己需要下载的版本

Windows下命令安装:

 $pip install -U selenium  //提示安装pip
$python -m pip install --upgrade pip
$pip --version   //查看版本
$pip install -U selenium  //安装
$pip show selenium  //是否安装成功

 


linux下命令安装:

  sudo pip3 install selenium

  1、chrome官网 安装

    wget https://chromedriver.storage.googleapis.com/78.0.3904.70/chromedriver_linux64.zip
  2、解压: 
    unzip chromedriver_linux64.zip

    mv chromedriver /usr/bin/
  3、给予执行权限:

    cd /usr/bin

    sudo chmod +x chromedriver /usr/bin/

pycharm中自动安装:

如下图==可以利用他的自动安装,非常方便

出现如下字样即代表安装成功

 pycharm中手动安装:

二、安装chromedriver

1、下载

 除此之外还需要下载对应浏览器版本的驱动        
  google-chrome --version  或者 直接打开浏览查看版本


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

 注:chromedriver的版本一定要与Chrome的版本一致,不然就不起作用。 

  下载文件chromedriver_win32.zip即可。即使电脑是64位也没有关系,因为你安装的谷歌是32位的 。下载后把文件解压,然后将chromedriver.exe放到谷歌浏览器的安装目录中:在开始菜单中,找到谷歌浏览器,然后右键“打开文件位置”,我的是C:\Users\zenghy31994\AppData\Local\Google\Chrome\Application

2、配置

 (1)将谷歌浏览器的安装目录,添加到系统环境变量path中。 进入环境变量编辑界面,添加到用户变量即可,双击PATH,将你的文件位置(C:\Users\zenghy31994\AppData\Local\Google\Chrome\Application)添加到后面。

完成后在cmd下输入chromedriver验证是否安装成功:

(2)将chromedriver.exe 粘贴至Python 安装目录的 Scripts 文件夹里如下

三、测试

至此我们就安装好了。主要就是要安装驱动以及在系统环境变量中添加驱动路径,让我们运行一个简单的代码 打开我们百度主页,看看忙了半天的成功吧!

(1)未配置环境变量

from selenium import webdriver
import timedef main():chrome_driver = 'E:\Pyhthon Developer\Python\python3\chromedriver.exe'  #chromedriver的文件位置b = webdriver.Chrome(executable_path = chrome_driver)b.get('https://www.baidu.com')time.sleep(5)b.quit()if __name__ == '__main__':main()

(2)已配置环境变量

# <editor-fold desc="Description">
from selenium import webdriver
# </editor-fold>
import timedef main():b = webdriver.Chrome()b.get('https://www.baidu.com')time.sleep(5)b.quit()if __name__ == '__main__':main()

selenium测试打开百度网页

如你所见 成功了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/227146.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机毕业设计 基于SpringBoot的二手物品交易管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

git代码管理学习文档

1.版本控制 每一版本都会发生变化 更新版本&#xff0c;回退版本 版本控制实际就是控制文件的变化 服务器端和每个人的电脑上都会记录版本的变化&#xff0c;也就是说整个团队都记录了版本的变化。 不需要连网&#xff0c;他是分布式的&#xff0c;在自己电脑上也可以操作。 …

centos离线安装mosquitto

1.x86_64架构centos7操作系统mosquitto包 本次真正要安装的机器是x86_64架构的AMD Ryzen 3 &#xff0c;操作系统是centos7 先找一台能联网的centos7机器 添加 EPEL 软件库 yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm下载rpm包 …

[AIGC ~大数据] 深入理解Hadoop、HDFS、Hive和Spark:Java大师的大数据研究之旅

作为一位Java大师&#xff0c;我始终追求着技术的边界&#xff0c;最近我将目光聚焦在大数据领域。在这个充满机遇和挑战的领域中&#xff0c;我深入研究了Hadoop、HDFS、Hive和Spark等关键技术。本篇博客将从"是什么"、"为什么"和"怎么办"三个角…

《PySpark大数据分析实战》-12.Spark on YARN配置Spark运行在YARN上

&#x1f4cb; 博主简介 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是wux_labs。&#x1f61c; 热衷于各种主流技术&#xff0c;热爱数据科学、机器学习、云计算、人工智能。 通过了TiDB数据库专员&#xff08;PCTA&#xff09;、TiDB数据库专家&#xff08;PCTP…

Rabbitmq消息重复消费问题(幂等性保障)

消息百分百投递架构 在《消息可靠性保证》篇章中&#xff0c;我通过生产者确认机制保障了消息会发送到MQ中&#xff0c;但是在生产者与MQ建立过程的时候出现了网络抖动&#xff0c;连接建立失败&#xff0c;生产者就感知不到MQ返回的ack/nack&#xff0c;无法完全保障消息投递…

modbus 通信协议介绍与我的测试经验分享

1、简介 Modbus 协议是一种通信协议&#xff0c;用于工业自动化系统中的设备间通信。该协议最初由 Modicon 公司开发&#xff0c;并于 1979 年发布。 Modbus 协议通过串行通信格式进行通信&#xff0c;在物理层上支持 RS-232、RS-422 和 RS-485 等多种通信方式。在协议层面&am…

javaEE -16(3000字 HTML5 入门级教程)

一&#xff1a;什么是HTML5 HTML5 是新一代的 HTML 标准&#xff0c;2014年10月由万维网联盟&#xff08; W3C &#xff09;完成标准制定。 官网地址&#xff1a; W3C 提供&#xff1a; https://www.w3.org/TR/html/index.htmlWHATWG 提供&#xff1a;https://whatwg-cn.git…

Kotlin ArrayList类型toTypedArray转换Array

Kotlin ArrayList类型toTypedArray转换Array data class Point(val x: Float, val y: Float)fun array_test(points: ArrayList<Array<Point>>) {points.forEachIndexed { idx, ap ->ap.forEach {print("$idx $it ")}println()} }fun main(args: Arra…

verilog语法进阶-分布式ram原语

概述 官方提供的原语 RAM16X1S_1 #(.INIT(16h0000) // Initial contents of RAM) RAM16X1S_1_inst (.O(O), // RAM output.A0(A0), // RAM address[0] input.A1(A1), // RAM address[1] input.A2(A2), // RAM address[2] input.A3(A3), // RAM address[3…

setState 函数的接收的参数

在 React 中&#xff0c;setState 函数可以接受两种参数形式&#xff1a; 对象形式&#xff1a; setState(newStateObject);这种形式的 setState 接受一个对象作为参数&#xff0c;对象中包含要更新的状态的键值对。React 会将这个新的状态合并到当前的状态中。 示例&#xff1…

pytest之allure测试报告02:allure具体使用方法

一、allure包含的方法 二、allure使用教程 &#xff08;1&#xff09;用例中写入allure方法 allure.epic("数据进制项目epic") allure.feature("手机号模块feature") class TestMobile:allure.story("杭州的手机号story")allure.title("测…

深拷贝和浅拷贝(js的问题)

深拷贝&#xff1a;修改复制对象&#xff0c;原始对象不会变化浅拷贝&#xff1a;修改复制对象&#xff0c;原始对象也变化 方式&#xff1a; 遍历赋值Object.create()JSON.parse()和JSON.stringify() 操作的对象 var obj {a: "Hello",b: {a: "world"…

Selenium安装WebDriver:ChromeDriver与谷歌浏览器版本快速匹配_最新版120

最近在使用通过selenium操作Chrome浏览器时&#xff0c;安装中遇到了Chrome版本与浏览器驱动不匹配的的问题&#xff0c;在此记录安装下过程&#xff0c;如何快速找到与谷歌浏览器相匹配的ChromeDriver驱动版本。 1. 确定Chrome版本 我们首先确定自己的Chrome版本 Chrome设置…

如何从众多知识付费平台中正确选择属于自己的平台(明理信息科技知识付费平台)

在当今的知识付费市场中&#xff0c;用户面临的选择越来越多&#xff0c;如何从众多知识付费平台中正确选择属于自己的平台呢&#xff1f;下面&#xff0c;我们将为您介绍明理信息科技知识付费平台相比同行的优势&#xff0c;帮助您做出明智的选择。 一、创新的技术架构&#…

神经网络基础

神经网络 引言 神经网络的历史背景 神经网络的概念最早可以追溯到20世纪40年代&#xff0c;当时的科学家们受到生物神经系统的启发&#xff0c;尝试模拟人脑的信息处理方式。在接下来的几十年里&#xff0c;这个领域经历了多次兴衰。尽管在最初几十年内进展缓慢&#xff0c;…

【linux】Debian不能运行sudo的解决

一、问题&#xff1a; sudo: 没有找到有效的 sudoers 资源&#xff0c;退出 sudo: 初始化审计插件 sudoers_audit 出错 二、可用的方法&#xff1a; 出现 "sudo: 没有找到有效的 sudoers 资源&#xff0c;退出" 和 "sudo: 初始化审计插件 sudoers_audit 出错&q…

vue使用自定义指令使用滚动加载

使用自定义指令directives来实现滚动加载&#xff0c;下面以下拉框滚动加载为例 <template><el-selectv-model"ruleForm.train_set_id"v-loadMore"loadMore"placeholder"请选择"><el-optionv-for"item in dataList":k…

IDEA中alt enter不显示创建实现类快捷键

alt enter不显示创建实现类快捷键是因为idea中的设置没打开&#xff0c;按照一下设置打开就可以了。 点击setting-->>editor-->>intentions-->>java下的declaration 如下图所示&#xff1a;

@Resource注解是什么作用,和@bean区别是什么?

Resource 注解就像是 Java 开发的快递小哥&#xff0c;专门用来送依赖关系到你的代码门口。它的主要工作就是帮你实现依赖注入&#xff0c;把其他组件&#xff08;比如类、对象、bean&#xff0c;啥的&#xff09;送到你需要的地方。 具体来说&#xff1a; 依赖注入&#xff1…