Python+selenium实现浏览器基本操作详解

发布时间:2024年01月02日

关闭 driver 启动的浏览器

上一章节文末,我们介绍了关于两种关闭浏览器的方式,这里不做过多的复述。(实在是这一章节的内容太少了)

在 selenium 中,提供了两种关闭 driver 启动的浏览器的方式:

  • close() 方法:该方法可以关闭浏览器,但是它关闭的只是浏览器的窗口,由 driver 启动的浏览器的进程依然还在,会占用一定的资源。
  • quit() 方法:该方法同样可以关闭浏览器,但是它在关闭浏览器的窗口的同时,也会 kill 掉 driver 启动的浏览器的进程。

ps:以上两种方法,close() 方法适合在我们启动浏览器结束了一个用例的场景之后,仍需执行其他的自动化测试用例的时候使用;而 quit() 方法则适合在已经执行完所有用例之后使用。

代码示例如下:

1

2

3

4

5

6

7

8

9

10

11

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

driver.get("https://blog.csdn.net/")

time.sleep(1)

driver.quit()

运行结果如下:

浏览器最大化与设置浏览器窗口大小

在我们的测试过程中,使用一些基于图像或者坐标辅助工具的时候,就会需要浏览器在每次测试的时候都保持着最大化,以便于能够在同一个分辨率下进行图像的比对、使用做点进行的点选等等。所以接下来就看看如何将浏览器最大化与设置特定的分辨率大小。

浏览器最大化

使用 maximize_window() 方法将浏览器最大化,代码示例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

time.sleep(1)

driver.maximize_window()

driver.get("https://blog.csdn.net/")

time.sleep(1)

driver.quit()

运行结果如下:

这就是一个最大化的操作功能。

设置浏览器窗口大小

都是最大化的场景可能会出现图像、坐标定位不精确的情况,所以当我们希望能够在同一浏览器大小的情况下去运行用例,这样就会比较容易进行图像比对的结合,从而提升灵活性;或者也想测试一下能够在不同的浏览器大小场景下,访问我们的测试站点。对测试页面进行截个图、兼容性是否正常等等等等…

使用 "set_window_size()" 方法来设置窗口的大小。 代码示例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

time.sleep(1)

driver.set_window_size(360, 480)

time.sleep(1)

driver.maximize_window()

driver.get("https://blog.csdn.net/")

time.sleep(1)

driver.quit()

运行结果如下:

浏览器的前进、后退与刷新页面

PS:前进和后退使用的是非常少的。

  • 使用 back() 方法进行浏览器页面的后退。
  • 使用 forword() 方法进行浏览器页面的前进。
  • 使用 refresh() 方法进行浏览器页面的刷新。

代码示例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

# coding:utf-8

import time

from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"

# driver = webdriver.Chrome(executable_path=chrome_driver)

driver = webdriver.Chrome()

driver.maximize_window()

driver.get("https://blog.csdn.net/weixin_42250835?type=blog")

time.sleep(2)

driver.get("https://blog.csdn.net/")

time.sleep(2)

driver.back()

time.sleep(1)

driver.forward()

time.sleep(1)

driver.refresh()

time.sleep(1)

driver.quit()

运行结果如下:

?

?现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:485187702【暗号:csdn11】

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!?希望能帮助到你!【100%无套路免费领取】

文章来源:https://blog.csdn.net/weixin_57794111/article/details/135339618
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。