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()
相关推荐
Q26433650238 分钟前
【有源码】基于 Hadoop 生态的化妆品销售数据存储分析与可视化 面向化妆品行业的用户画像构建与销售机会识别研究
大数据·hadoop·python·机器学习·spark·毕业设计·课程设计
2601_962078196 小时前
Python中calendar.weekday用法
python·编程技巧·calendar·日期处理·weekday
2601_962218616 小时前
万象生鲜系统业财一体化底层打通技术自动生成经营账单
大数据·数据库·人工智能·python·算法
2601_966949656 小时前
为什么量化策略需要大量历史股票数据?从回测可信度理解数据规模
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
2601_962885726 小时前
如何用 Python 扫描 A 股跳空缺口并统计缺口回补概率?
java·前端·python
李高钢7 小时前
Python FastAPI 框架入门:从零搭建你的第一个高性能 API 服务
数据库·python·fastapi
ocean21037 小时前
2025-2026年Python面试高频知识点洞察
开发语言·python·面试·python八股文
Warson_L7 小时前
Python的OrderedDict
python
隐擎fox7 小时前
高性能网络爬虫架构设计:基于 Python 的长连接复用与分布式会话池调度实践
分布式·python·网络协议·tcp/ip·高并发·网络爬虫、
Warson_L7 小时前
Python的TypedDict
python·langchain·llm