前言
相比于高大上的各种Selenium进阶指南,个人认为夯实基础至关重要。
在Selenium测试框架的API中,主要分为三大类:
1.对浏览器本身的相关操作。
2.对浏览器页面中,元素的定位操作。
3.对浏览器页面中元素进行定位后,对该元素的一些操作。如:点击、输入等操作。
我们本篇文章先说说Selenium框架对浏览器对象的基础操作。
一、导入Selenium库
1
2
|
# 导入Selenium驱动 from selenium import webdriver |
二、创建浏览器对象
即:打开一个浏览器。
1
2
3
4
5
|
# 语法:driver = webdriver.xxx() driver = webdriver.Chrome() # 使用dir(driver)查看浏览器对象的操作 print ( dir (driver)) |
三、浏览器窗口大小设置
1
2
3
4
5
6
7
8
9
|
# 1.设置浏览器尺寸 # 宽480、高800(最好根据显示器分别调整) driver.set_window_size( 480 , 800 ) # 2.获取浏览器尺寸 driver.get_window_size() # 3.浏览器窗口最大化(很常用) driver.maximize_window() |
示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
""" 1.学习目标 掌握selenium中控制浏览器窗口大小的方法 2.操作步骤(方法) 2.1设置浏览器窗口大小,宽度,高度 driver.set_window_size(宽,高) 2.2 获取浏览器窗口大小 driver.get_window_size() 2.3将浏览器窗口最大化 driver.maximize_window) 3.需求 使用selenium实现对浏览器窗口大小的设置 """ # 1.导入seleniun from selenium import webdriver from time import sleep # 2.打开谷歌浏览器(获取浏览器操作对象) driver = webdriver.Chrome() # 3.设置浏览器窗口大小 # 3.1 将窗口设置为宽100,高200 # (windowHandle参数为窗口句柄,以后再说) driver.set_window_size( 100 , 200 ) sleep( 3 ) # 3.2 获取浏览器窗口大小 window_size = driver.get_window_size() print (window_size) # 3.3 窗口最大化 driver.maximize_window() # 4.关闭浏览器 driver.quit() """ 输出结果: {'width': 516, 'height': 200} """ |
四、浏览器位置设置
1
2
3
4
5
|
# 1.获取浏览器位置 driver.get_window_position() # 2.设置浏览器位置 driver.set_window_position(x,y) |
注:显示器以左上角为(0,0)
,所有的位置操作都是相对于显示器左上角展开的位移操作,单位是像素。
示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
""" 1.学习目标 掌握selenium中控制浏览器窗口位置的方法 2.操作步骤(方法) 2.1 设置浏览器窗口位置(横纵坐标) set_window_position(横坐标,纵坐标) 2.2 获取浏览器窗口位置 driver.get_window_position() 3.需求 使用selenium实现对浏览器窗口位置的设置 """ # 1.导入seleniun from selenium import webdriver from time import sleep # 2.打开谷歌浏览器(获取浏览器操作对象) driver = webdriver.Chrome() # 3.设置浏览器位置 # 3.1 将窗口的位置设置为100,300 driver.set_window_position( 100 , 300 ) sleep( 2 ) # 3.2 获取浏览器窗口位置 window_position = driver.get_window_position() print (window_position) # 4.关闭浏览器 driver.quit() """ 输出结果: {'x': 100, 'y': 300} """ |
五、请求访问网址
1
2
3
4
5
|
# 请求某个url # 语法:driver.get(url) # 工作中写法 url = "http://www.baidu.com" driver.get(url) |
示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
""" 1.学习目标 掌握selenium中控制浏览器访问指定网站的操作 2.操作步骤(方法) 请求某个url 语法:driver.get(url) 3.需求 使用selenium实现对浏览器访问指定网站的操作 """ # 1.导入seleniun from selenium import webdriver from time import sleep # 2.打开谷歌浏览器(获取浏览器操作对象) driver = webdriver.Chrome() # 3.访问网站 url = "http://www.baidu.com" driver.get(url) sleep( 2 ) # 4.关闭浏览器 driver.quit() |
六、浏览器页面前进、后退和刷新
1
2
3
4
5
6
7
8
|
# 1.页面前进 driver.forward() # 2.页面后退 driver.back() # 3.页面刷新 driver.refresh() |
示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
""" 1.学习目标 掌握selenium控制浏览器的前进,后退,刷新 2.操作步骤(语法) 2.1前进 driver.forward() 2.2后退 driver.back() 2.3刷新 driver.refresh() 3.需求 使用谷歌浏览器分别打开百度,京东,淘宝,使用前进,后退,刷新方法 """ # 1.导入selenium from selenium import webdriver from time import sleep # 2.打开浏览器---谷歌浏览器 driver = webdriver.Chrome() # 3.窗口最大化 driver.maximize_window() sleep( 2 ) # 4.输入网址百度,京东,淘宝 driver.get( "http://www.baidu.com" ) sleep( 2 ) driver.get( "http://www.jd.com" ) sleep( 2 ) driver.get( "http://www.taobao.com" ) sleep( 2 ) # 5.使用前进,后退,刷新命令 # 前进 driver.back() # 后退到京东 sleep( 2 ) driver.back() # 后退到百度 sleep( 2 ) # 后退 driver.forward() # 前进到京东 sleep( 2 ) driver.forward() # 前进到淘宝 sleep( 2 ) # 刷新 driver.refresh() # 保持在淘宝页面 sleep( 2 ) # 6.关闭浏览器 driver.quit() |
七、关闭浏览器
(1)关闭当前窗口
1
2
|
# 只关闭当前浏览器窗口 driver.close() |
(2)退出驱动并关闭所有关联的窗口
1
2
|
# 即关闭浏览器窗口,同时关闭浏览器驱动 driver.quit() |
到此这篇关于教你怎么用Python selenium操作浏览器对象的基础API的文章就介绍到这了,更多相关Python selenium操作API内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.cnblogs.com/liuyuelinfighting/p/14923204.html