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()
相关推荐
2501_945423541 小时前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python
FreakStudio2 小时前
保姆级 uPyPi 教程|从 0 到 1:MicroPython 驱动包一键安装 + 分享全攻略
python·嵌入式·电子diy
清水白石0082 小时前
Python 对象序列化深度解析:pickle、JSON 与自定义协议的取舍之道
开发语言·python·json
2401_876907522 小时前
Python机器学习实践指南
开发语言·python·机器学习
张张123y3 小时前
RAG从0到1学习:技术架构、项目实践与面试指南
人工智能·python·学习·面试·架构·langchain·transformer
Shi_haoliu3 小时前
openClaw源码部署-linux
前端·python·ai·openclaw
gf13211113 小时前
python_查询并删除飞书多维表格中的记录
java·python·飞书
带娃的IT创业者4 小时前
WeClaw 离线消息队列实战:异步任务队列如何保证在服务器宕机时不丢失任何一条 AI 回复?
运维·服务器·人工智能·python·websocket·fastapi·实时通信
坐吃山猪6 小时前
Python进度条
linux·服务器·python