python使用selenium操作浏览器的实现示例

 更新时间:2024年01月18日 09:10:29   作者:Python热爱者  
Selenium是一个模拟浏览器浏览网页的工具,主要用于测试网站的自动化测试工具,本文主要介绍了python使用selenium操作浏览器的实现示例,具有一定的参考价值,感兴趣的可以了解一下

重复的操作令手工测试苦不堪言,于是自动化测试出现了!作为web应用里最出名的自动化测试工具,selenium让web应用的测试轻松了很多。今天我们就来简单的介绍一下一些简单的selenium浏览器操作。接下来我们就来看看python怎么操作浏览器的吧!

1、打开指定的网页地址

我们使用selenium进行自动化测试时,打开浏览器之后,第一步就是让浏览器访问我们指定的地址,可使用get方法实现

from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')   # 本行用于访问指定的地址

2、获取当前页面url

我们在测试过程中,有时需要获取当前页面的url以判断是否跳转到指定页面,获取页面url的方法如下:

from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
url = driver.current_url    # 本行用于获取当前页面的url,即百度首页地址
print(url)

python使用selenium操作浏览器的教程_搜索

3、返回按钮

返回按钮,也就是浏览器左上角的 ← 键,模拟点击此按钮操作如下 driver.back()

python使用selenium操作浏览器的教程_搜索_02

如,在百度搜索框中输入selenium并点击搜索,然后点击返回按钮,实现如下

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
 
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium')  #搜索框输入selenium
driver.find_element(By.ID, 'su').click()     # 点击百度一下
time.sleep(3)
driver.back()  # 返回

本段代码表示在输入框中输入selenium后,再点击百度一下进行搜索,3秒后再返回百度首页

4、前进按钮

前进按钮,相对于后退的 ← ,是浏览器左上角的 → 按钮 ,操作此按钮方法如下:

driver.forward()

python使用selenium操作浏览器的教程_当前页_03

如,在百度搜索框中输入selenium并点击搜索,然后点击返回按钮后再点击前进按钮,实现如下

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
 
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium')  #搜索框输入selenium
driver.find_element(By.ID, 'su').click()     # 点击百度一下
driver.back()   # 返回
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
time.sleep(3)
driver.forward()  # 前进

本段代码表示在输入框中输入selenium后,再点击百度一下进行搜索,然后返回操作,3秒后再进行前进操作,最终停留在输入selenium之后执行搜索的结果页面

5、刷新页面

测试过程中,刷新页面是经常使用的操作,selenium进行刷新操作方法如下

driver.refresh() 使用此方法类似于按下F5或点击左上角的刷新按钮

python使用selenium操作浏览器的教程_搜索_04

from selenium import webdriver
 
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.refresh()    # 刷新页面

本段代码表示打开百度首页并刷新页面

6、获取当前页面title

测试过程中,可以使用selenium获取当前页面的title,方法如下: driver.title

python使用selenium操作浏览器的教程_selenium_05

使用selenium获取百度首页的title,示例如下:

from selenium import webdriver
 
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
title = driver.title  # 获取当前页面title
print(title)

以上代码运行后,将在控制台输出百度首页的title 百度一下,你就知道

7、窗口大小操作

常用的窗口操作有设置窗口大小、最大化窗口、最小化窗口、全屏窗口

① 设置窗口大小 driver.set_window_size(1920, 1080)

② 最大化窗口 driver.maximize_window()

③ 最小化窗口 driver.minimize_window() 最小化窗口是selenium4的新功能,selenium3不能使用此方法

④ 全屏窗口,相当于大多数浏览器中按下F11 driver.fullscreen_window()

示例代码:

from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.set_window_size(1920, 1080)   # 设置窗口大小 1920*1080
driver.minimize_window()  # 最小化窗口
driver.maximize_window()  # 最大化窗口
driver.fullscreen_window() # 全屏窗口

本段代码打开百度首页后,先将浏览器窗口大小设置为1920*1080,然后依次最小化窗口、最大化窗口、全屏窗口,实际进行测试时,需要根据需要进行设置

8、退出

测试执行完成后,需要退出浏览器,否则多次运行测试会导致系统残留大量的驱动进程,这些进程会消耗计算机资源,导致系统越来越卡,所以养成测试完成后关闭浏览器是个良好习惯

python使用selenium操作浏览器的教程_当前页_06

退出浏览器操作如下:

from selenium import webdriver
from selenium.webdriver.common.by import By
 
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium')  #搜索框输入selenium
driver.find_element(By.ID, 'su').click()     # 点击百度一下
driver.quit()     # 退出浏览器

本段代码表示打开百度首页,再输入框中 输入selenium后点击百度一下,完成搜索后退出浏览器

到此这篇关于python使用selenium操作浏览器的实现示例的文章就介绍到这了,更多相关python selenium操作浏览器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python 3.8中实现functools.cached_property功能

    Python 3.8中实现functools.cached_property功能

    这篇文章主要介绍了Python 3.8中实现functools.cached_property功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • python中使用时间戳timestamp问题

    python中使用时间戳timestamp问题

    文章介绍了Python中使用时间戳和时间模块的操作,包括获取当前时间、计算程序运行时间以及时间戳与时间字符串之间的转换
    2025-02-02
  • 详解Python开启线程和线程池的方法

    详解Python开启线程和线程池的方法

    这篇文章主要介绍了Python开启线程和线程池的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-03-03
  • 使用Pandas实现数据的清理的入门详解

    使用Pandas实现数据的清理的入门详解

    数据清理是数据分析过程中的关键步骤,它涉及识别缺失值、重复行、异常值和不正确的数据类型,本文将介绍6个经常使用的数据清理操作,希望对大家有所帮助
    2023-08-08
  • Selenium 4.2.0 标签定位8种方法详解

    Selenium 4.2.0 标签定位8种方法详解

    这篇文章主要介绍了Selenium 4.2.0 标签定位8种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • keras K.function获取某层的输出操作

    keras K.function获取某层的输出操作

    这篇文章主要介绍了keras K.function获取某层的输出操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Tensor 和 NumPy 相互转换的实现

    Tensor 和 NumPy 相互转换的实现

    本文主要介绍了Tensor 和 NumPy 相互转换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • 深入了解Python 变量作用域

    深入了解Python 变量作用域

    这篇文章主要介绍了Python 变量作用域的相关资料,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • 详解python模块pychartdir安装及导入问题

    详解python模块pychartdir安装及导入问题

    这篇文章主要介绍了python模块pychartdir导入问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Python实现自定义读写分离代码实例

    Python实现自定义读写分离代码实例

    这篇文章主要介绍了Python实现自定义读写分离代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11

最新评论