selenium3 自动化测试入门 ~~~ 操作浏览器

前言

该教程适用于selenium 3版本,如果已经更新到selenium 4,启动浏览器的方法需要修改,具体可参考:selenium 4 启动浏览器

前置条件(浏览器驱动放置位置)

一、第一种方法

1.下载浏览器驱动

2.粘贴在python根目录下

二、第二种方法

1.下载浏览器驱动

2.指定驱动路径驱动Chrome 浏览器

python 复制代码
	#.\driver\chromedriver.exe 为驱动存放位置,可以是相对路径或者绝对路径
	driver = webdriver.Chrome(executable_path = r'.\driver\chromedriver.exe')

三、第三种方法

1.将浏览器驱动配置在环境变量中

(*注:不建议)

1、启动浏览器(实例化浏览器)

启动浏览器(驱动已放入python根目录下)

python 复制代码
# 启动Chrome浏览器
driver = webdriver.Chrome() 

# 启动Firefox浏览器
driver = webdriver.Firefox()

# 启动IE浏览器
driver = webdriver.Ie()  

2、最大化浏览器

python 复制代码
# driver为实例化浏览器对象(下同)
driver.maximize_window()

3、设置浏览器大小

python 复制代码
# width 400, height 800
driver.set_window_size(480, 800)  

4、打开网页

python 复制代码
# 指定驱动路径 启动 
url = driver.get("https://ww.baidu.com")

5、使用另外窗口打开网页

python 复制代码
# 新开一个窗口,通过执行js来新开一个窗口
js = 'window.open("https://mail.163.com");'
driver.execute_script(js)

6、控制浏览器前进、后退

python 复制代码
driver.get('https://www.zhihu.com/') 
driver.get('https://mail.163.com')  # 在同一窗口重新打开一个网页
driver.back()  # 后退 到知乎
driver.forward()  # 前进 换回到163

7、获取网页标题

python 复制代码
# 获取网页的title
title = driver.title 

8、获取网页的URL

获取的url为当前浏览器地址栏中的url

python 复制代码
# 获取网页的URL
url = driver.current_url  

9、刷新页面

python 复制代码
driver.refresh()

10、获取浏览器窗口大小

python 复制代码
size = driver.get_window_size()	# 返回为字典型 如:{'width': 1050, 'height': 840}

关闭浏览器

python 复制代码
# 关闭的是当前浏览器窗口的页签,存在多个窗口时关闭当前的活动窗口
driver.close()

12、退出浏览器

python 复制代码
# 关闭整个浏览器,包括webdriver的进程也会退出
driver.quit()
相关推荐
la_vie_est_belle7 分钟前
纯Python游戏引擎 新增可视化一键打包功能
python·游戏开发·pygame·python开发·pygame studio
最贪吃的虎8 分钟前
给 Agent 接入新模型的推理模式:从配置开关到协议适配
人工智能·python·langchain
熊猫_豆豆13 分钟前
仿真模拟两颗卫星的自主交会对接过程(Python版)
开发语言·python
小江的记录本30 分钟前
【MySQL】《MySQL日志面试背诵版+思维导图》(核心考点 + MySQL 8.0最新优化)
java·数据库·后端·python·sql·mysql·面试
西洼工作室30 分钟前
Python邮箱工具类封装:高效邮件发送与管理
python·全栈
子午36 分钟前
基于YOLO的水稻害虫检测系统~Python+yolov8算法+深度学习+人工智能+模型训练
人工智能·python·yolo
我命由我1234538 分钟前
Android Framework P2 - 开机启动 Zygote 进程、Zygote 的预加载机制
android·java·开发语言·python·java-ee·intellij-idea·zygote
2401_850491651 小时前
PHP 中处理会话数组时的类型错误解析与修复指南
jvm·数据库·python
ㄟ留恋さ寂寞1 小时前
如何修改数据库实例名_ORACLE_SID环境变量重命名实战
jvm·数据库·python
2401_850491651 小时前
使用 curl 调用 Go 标准库 RPC 服务(JSON-RPC 协议详解)
jvm·数据库·python