Python的web自动化学习(一)Selenium库的工作原理

这篇具有很好参考价值的文章主要介绍了Python的web自动化学习(一)Selenium库的工作原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python的web自动化学习(一)Selenium库的工作原理
首发2023-07-31 11:01·云中随心而记
后续会根据持续学习来更新,大家一起学习

引言:

Selenium是一个流行的自动化测试工具,用于模拟和控制浏览器行为,常用于Web应用程序的功能测试和验收测试。Selenium支持多种编程语言,包括Python、Java、C#等,并提供了一组API,用于操作浏览器的各种行为。

Selenium库的工作原理主要包括以下几个关键组件:
Python的web自动化学习(一)Selenium库的工作原理,python,前端,自动化

我们以谷歌浏览器为例来一起进行学习:

WebDriver:

WebDriver是Selenium的核心组件,它提供了与各种浏览器的交互能力。通过WebDriver,Selenium可以自动化启动浏览器、打开URL、填写表单、点击按钮、获取元素属性等等操作。

浏览器驱动:

Selenium需要与浏览器进行交互,所以需要安装相应的浏览器驱动。不同的浏览器需要对应不同的浏览器驱动,比如Chrome需要ChromeDriver,Firefox需要GeckoDriver。驱动程序将接收来自Selenium的指令,并在浏览器中执行相应的操作

下面介绍两个常用的驱动下载地址:

Chrome浏览器驱动下载地址:
http://chromedriver.storage.googleapis.com/index.htm
Firefox(火狐)浏览器驱动:
https://github.com/mozilla/geckodriver/releases/

定位元素:
Selenium可以通过各种方式来定位Web页面上的元素,比如ID、名称、类名、链接文本等等。通过定位元素,Selenium可以准确地找到需要操作的页面元素。

前面文章有介绍过元素定位 可参考:
https://www.toutiao.com/article/7260753838771290661/

执行操作:
一旦定位到Web元素,Selenium可以执行多种操作,如点击、输入文本、获取元素属性等。这些操作可以模拟用户在浏览器中的行为。以下是实例说明

点击操作:

Chrome浏览器:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

button = driver.find_element_by_xpath("//button[@id='myButton']")
button.click()

Firefox浏览器:

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://example.com")

button = driver.find_element_by_xpath("//button[@id='myButton']")
button.click()

输入文本操作:

Chrome浏览器:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

input_box = driver.find_element_by_xpath("//input[@id='myInput']")
input_box.send_keys("Hello World")

Firefox浏览器:

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://example.com")

input_box = driver.find_element_by_xpath("//input[@id='myInput']")
input_box.send_keys("Hello World")

获取元素属性:

Chrome浏览器:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

element = driver.find_element_by_xpath("//div[@class='myDiv']")
text = element.text

Firefox浏览器:

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://example.com")

element = driver.find_element_by_xpath("//div[@class='myDiv']")
text = element.text

断言和验证:在自动化测试中,验证页面上的特定行为和结果非常重要。Selenium提供了丰富的断言和验证方法,以确保应用程序的正确性。

页面标题断言:

Chrome浏览器:

from selenium import webdriver
import assert

driver = webdriver.Chrome()
driver.get("https://example.com")

title = driver.title
assert "Example" in title

Firefox浏览器:

from selenium import webdriver
import assert

driver = webdriver.Firefox()
driver.get("https://example.com")

title = driver.title
assert "Example" in title

页面文本断言:

Chrome浏览器:

from selenium import webdriver
import assert

driver = webdriver.Chrome()
driver.get("https://example.com")

element = driver.find_element_by_xpath("//div[@class='myDiv']")
text = element.text
assert "Hello world" in text

Firefox浏览器:

from selenium import webdriver
import assert

driver = webdriver.Firefox()
driver.get("https://example.com")

element = driver.find_element_by_xpath("//div[@class='myDiv']")
text = element.text
assert "Hello world" in text

这些示例演示了在不同的浏览器中执行断言操作。无论使用哪种浏览器驱动,您可以使用相同的断言方法来验证页面标题、文本等内容。只需根据所使用的浏览器类型选择适当的驱动程序,然后使用相同的断言语句来进行验证。文章来源地址https://www.toymoban.com/news/detail-719102.html

到了这里,关于Python的web自动化学习(一)Selenium库的工作原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【自动化测试】基于Selenium + Python的web自动化框架

    Selenium是一个基于浏览器的自动化工具,她提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid:  1、Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,p

    2024年02月07日
    浏览(78)
  • Python自动化实战之使用Selenium进行Web自动化详解

    为了完成一项重复的任务,你需要在网站上进行大量的点击和操作,每次都要浪费大量的时间和精力。Python的Selenium库就可以自动化完成这些任务。 在本篇文章中,我们将会介绍如何使用Python的Selenium库进行Web自动化,以及如何将它应用于实际项目中。如果你是一名Python爱好

    2024年02月13日
    浏览(51)
  • python基于Selenium的web自动化框架

    1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid: Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例

    2024年02月02日
    浏览(60)
  • 【web自动化】selenium+python八大元素定位

    推荐:b站软件测试老白 注意点 1.有id才能能使用id定位 2.id不能重复 通过百度页面,演示如何查找id确定id是否重复,其他方式定位也可以这样搜索 代码如下(示例): 如果有多个class_name,可以使用 find_elements 和取下标的方式 例如:打开哔哩哔哩页面,有番剧,电影等等,他

    2024年01月21日
    浏览(84)
  • python Web自动化之Selenium的基本使用

    1.selenium介绍 概述 Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。 优势 开源软件:源代码开放,可根据需要来增加工具的某些功能; 跨平台:linux、windows、mac; 多语言:支持Java、Python、C#、JavaScript、Ruby等。 WebDriv

    2023年04月08日
    浏览(42)
  • Python+selenium,轻松搭建 Web 自动化测试框架

    在程序员的世界中,一切重复性的工作,都应该通过程序自动执行。 「自动化测试」就是一个最好的例子。 随着互联网应用开发周期越来越短,迭代速度越来越快,只会点点点,不懂开发的手工测试,已经无法满足如今的业务要求,只能被企业逐步裁员淘汰。 「自动化测试

    2024年02月10日
    浏览(108)
  • jenkins+selenium+python实现web自动化测试

    jenkins+selenium可以做到对web自动化的持续集成。 Jenkins的基本操作: 新建视图: 新建job: 可以选择构建一个自由风格的软件项目或者复制已有的item 安装Jenkins插件, SSH plugin ,Email Extension Plugin , Hudson Seleniumhq plugin 点击系统管理-管理插件 在可选插件面板Filter中输入插件名,

    2024年02月02日
    浏览(59)
  • 基于Selenium+Python的web自动化测试框架

    一、什么是Selenium? Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid。 Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并把录制的操作以多种语言

    2024年02月02日
    浏览(78)
  • python利用selenium库(WEB自动化)完成智慧树自动刷题

     这里用的是Chrome浏览器,使用selenium库是需要先安装Chrome的驱动 分析: selenium库能实现网页自动操作,智慧树每次学习完一小节后都需要点击下一节视频。这里我检测了视频的总播放长度和当前播放的时间长度,每5秒钟检测一次它们是否相同,如果相同就点击下一节视频完

    2024年02月16日
    浏览(55)
  • 基于Selenium+Python的web自动化测试框架详解

    目录 一、什么是Selenium? 二、自动化测试框架 三、自动化框架的设计和实现 四、需要改进的模块 五、总结 Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selen

    2024年02月09日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包