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()
相关推荐
吴佳浩10 小时前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
全栈凯哥11 小时前
18.Python中的导入类完全指南
python
sunwenjian88611 小时前
Java进阶——IO 流
java·开发语言·python
guts35012 小时前
图像篡改数据集下载:COVERAGE、CASIA
python·数据集
森林猿12 小时前
java-modbus-读取-modbus4j
java·网络·python
2401_8796938712 小时前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python
chushiyunen13 小时前
python chatTts实现tts文本转语音、音频
python
FreakStudio13 小时前
把 Flask 搬进 ESP32,高中生自研嵌入式 Web 框架 MicroFlask !
python·单片机·嵌入式·cortex-m3·异步编程·电子diy
love530love13 小时前
OpenClaw 手机直连配置全流程
人工智能·windows·python·智能手机·c#·agent·openclaw
chushiyunen14 小时前
python中的内置属性 todo
开发语言·javascript·python