Python+Selenium自动化-安装模块和浏览器驱动操作方法
时间:2019-09-17
本文章向大家介绍Python+Selenium自动化-安装模块和浏览器驱动操作方法,主要包括Python+Selenium自动化-安装模块和浏览器驱动操作方法使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Python+Selenium自动化-安装模块和浏览器驱动操作方法
1.安装模块文件
pip install selenium
2.安装浏览器驱动
- 我们主要用的浏览器驱动有chrome浏览器、firefox浏览器、还有就是无界面的chrome浏览器。
2.1.ChromeDriver驱动
- 首先,下载安装Chrome浏览器,这个很简单,就不在说明了。
- 安装ChromeDriver驱动,只有安装ChromeDriver,才能驱动Chrome浏览器完成相应的操作。
2.1.1.相关链接
- 官方网站:https://sites.google.com/a/chromium.org/chromedriver
- 下载地址:https://chromedriver.storage.googleapis.com/index.html
2.1.2.查看Chrome版本
- 点击Chrome菜单“帮助”→“关于Google Chrome”,即可查看Chrome的版本号.
2.1.3.下载ChromeDriver
- 打开ChromeDriver的官方网站,根据我们Chrome浏览器的版本号,下载对应的ChromeDriver驱动。
2.1.4.环境变量配置
- 在Windows下,下载完成后,将ChromeDriver的可执行文件chromedriver.exe文件拖到Python的Scripts目录下。
2.2.GeckoDriver驱动
- 对于Firefox浏览器来说,我们需要安装另一个驱动GeckoDriver。
2.2.1.相关链接
2.2.2.下载GeckoDriver
- 在GitHub上找到GeckoDriver的发行版本,然后根据自己的系统和位数选择对应的驱动下载。
2.2.3.环境变量配置
- 在Windows下,直接将geckodriver.exe文件拖到Python的Scripts目录下。
3.实例
- 检查准备工作是否完善,简单进行下测试。使用selenium和Chrome驱动打开指定url网页。
# 1-导入模块文件
from selenium import webdriver
# 2-初始化浏览器为chrome浏览器
brower = webdriver.Chrome()
# 3-这里我们打开的是百度首页
brower.get('https://www.baidu.com/')
# 4-打印下网页标题
print(brower.title)
# 5-关闭浏览器
brower.quit()
完成后,程序会在控制台输出:百度一下,你就知道
4.浏览器操作方法
- Chrome浏览器驱动、Firefox浏览器驱动、无界面的chrome浏览器操作方法
# 1.初始化浏览器为chrome浏览器
browser = webdriver.Chrome()
# 2. 初始化浏览器为firefox浏览器
browser = webdriver.Firefox()
# 3. 初始化浏览器为无界面的chrome浏览器
option = webdriver.ChromeOptions()
option.add_argument("headless")
driver = webdriver.Chrome(chrome_options=option)
原文地址:https://www.cnblogs.com/xiao-xue-di/p/11531882.html
- SpringCloud配置中心集群搭建
- HDU1846 Brave Game
- 拉格朗日插值
- python爬虫入门(二)Opener和Requests
- python爬虫入门(三)XPATH和BeautifulSoup4
- python爬虫入门(四)利用多线程爬虫
- LOJ #115. 无源汇有上下界可行流
- 数据库改名系列(数据库名,逻辑名,物理文件名)
- BZOJ1468: Tree
- 洛谷P3806 【模板】点分治1
- 探索ASP.NET MVC5系列之~~~5.缓存篇(页面缓存+二级缓存)
- 洛谷P3383 【模板】线性筛素数(Miller_Rabin)
- BZOJ3667: Rabin-Miller算法
- Numpy 修炼之道 (2)—— N维数组 ndarray
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 我这几年踩过的十个坑,每一条都是血泪教训
- 在 Python 中如何快速创建一个只读字典?
- 现场打脸:如何使用Selenium批量上传文件?
- 一日一技:FastAPI如何关闭接口文档?
- 什么叫做类比,为什么有些 Python 入门教程结构不合理?
- 贼好用的 Java 工具类库,墙裂推荐!
- 万字长文,Thread 类源码解析!
- lintCode 31 题解
- JDK1.8HashMap源码学习-put操作以及扩容(二)
- Python 中的数字到底是什么?
- 详解 Python 的二元算术运算,为什么说减法只是语法糖?
- 详解增强算术赋值:“-=”操作是怎么实现的?
- Hyperledger Explorer 环境搭建详解
- [译]在Solidity中创建无限制列表
- java安全编码指南之:声明和初始化