Web界面自动化操作工具 - Selenium常见用法

这篇具有很好参考价值的文章主要介绍了Web界面自动化操作工具 - Selenium常见用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Selenium是一个用于自动化浏览器操作的工具,常用于Web应用程序的测试和爬虫开发。

下面是一些Python Selenium的常见用法和代码示例:

1. 导入Selenium库和WebDriver:

from selenium import webdriver

2. 创建WebDriver实例:

# 使用Chrome浏览器
driver = webdriver.Chrome()

# 使用Firefox浏览器
driver = webdriver.Firefox()

# 使用Edge浏览器
driver = webdriver.Edge()

# 使用Safari浏览器
driver = webdriver.Safari()

3. 打开URL并获取页面内容:

# 打开URL
driver.get("https://www.example.com")

# 获取页面标题
title = driver.title
print("页面标题:", title)

# 获取页面源代码
page_source = driver.page_source
print("页面源代码:", page_source)

4. 查找元素并进行操作:

# 通过ID查找元素并输入文本
element = driver.find_element_by_id("username")
element.send_keys("myusername")

# 通过XPath查找元素并点击
element = driver.find_element_by_xpath("//button[@class='submit']")
element.click()

# 通过CSS选择器查找元素并获取文本
element = driver.find_element_by_css_selector(".message")
text = element.text
print("元素文本:", text)

其他多种Selenuim定位元素的方法:

4.1. 通过名称定位:

element = driver.find_element_by_name("element_name")

4.2. 通过类名定位:

element = driver.find_element_by_class_name("element_class")

4.3 通过标签名定位:

element = driver.find_element_by_tag_name("element_tag")

4.4 通过链接文本定位:

element = driver.find_element_by_link_text("link_text")

4.5. 通过部分链接文本定位:

element = driver.find_element_by_partial_link_text("partial_link_text")

5. 处理弹窗和框架:

# 切换到弹窗
alert = driver.switch_to.alert
alert.accept()  # 接受弹窗

# 切换到框架
frame = driver.switch_to.frame("frame_name")
# 在框架中执行其他操作
driver.switch_to.default_content()  # 切回默认框架

6. 执行JavaScript代码:

# 执行JavaScript脚本
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")  # 滚动到页面底部

7. 等待页面加载和元素可见:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

# 等待页面加载完成
wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.ID, "username")))

# 等待元素可见并点击
element = wait.until(EC.visibility_of_element_located((By.XPATH, "//button[@class='submit']")))
element.click()

8. 关闭浏览器:

# 关闭当前窗口
driver.close()

# 关闭整个浏览器
driver.quit()

这些是Python Selenium的一些常见用法和代码示例。Selenium提供了丰富的API用于模拟用户操作和获取页面内容,可以根据具体的需求进行更多的操作和定制化开发。文章来源地址https://www.toymoban.com/news/detail-735507.html

9.使用场景1 - 打开百度并搜索

from selenium import webdriver
from selenium.webdriver.common.by import By

# 启动Chrome浏览器
driver = webdriver.Chrome()

# 打开百度网页
driver.get("http://www.baidu.com")

# 找到搜索输入框并输入关键词
search_input = driver.find_element(By.ID, "kw")
search_input.send_keys("selenium")

# 提交搜索表单
search_input.submit()

# 等待搜索结果加载完成
driver.implicitly_wait(20)

# 找到搜索结果列表中的第一个结果
first_result = driver.find_element(By.CSS_SELECTOR, "#content_left .result h3 a")

# 获取第一个结果的文本内容
first_result_text = first_result.text

# 打印第一个搜索结果
print(first_result_text)

# 关闭浏览器
driver.quit()

10.使用场景2 - 持续集成Jenkins触发

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 启动Chrome浏览器
driver = webdriver.Chrome()

# 打开Jenkins登录页面
driver.get("http://Jenkins_Loginpage/")

driver.implicitly_wait(10)

# 找到用户名和密码输入框,并输入相应的值
username_input = driver.find_element(By.ID, "j_username")
password_input = driver.find_element(By.NAME, "j_password")

username_input.send_keys("username")
password_input.send_keys("password")

# 提交登录表单
login_button = driver.find_element(By.NAME, "Submit")
login_button.click()

# 等待登录成功后的页面加载完成
driver.implicitly_wait(5)

# 打开Jenkins首页
driver.get("http://Jenkins_Homepage/")

# 找到搜索输入框,并输入任务名称
search_input = driver.find_element(By.ID, "search-box")
search_input.send_keys("Job_Name")

# 提交搜索表单
search_input.submit()

# 等待搜索结果加载完成
driver.implicitly_wait(5)

# 找到搜索结果中的任务链接,并点击进入任务详情页
job_link = driver.find_element(By.LINK_TEXT, "Job_Name")
job_link.click()

# 找到构建按钮,并点击进行构建
build_button = driver.find_element(By.XPATH, "//*[@id='tasks']/div[4]/span")

build_button.click()

# 等待构建成功的状态出现
wait = WebDriverWait(driver, 60)
build_success_status = wait.until(EC.text_to_be_present_in_element((By.CSS_SELECTOR, ".build-status"), "Success"))

# 获取构建状态文本内容
build_status = driver.find_element(By.CSS_SELECTOR, ".build-status").text

# 打印构建状态
print(build_status)

# 关闭浏览器
driver.quit()

到了这里,关于Web界面自动化操作工具 - Selenium常见用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • web自动化系列selenium模拟按键操作

    一、按键操作 通过对监听键盘输入的元素发送键盘按钮指令 常用键盘按键 代码演示

    2024年02月06日
    浏览(46)
  • web自动化—selenium中键盘的操作

    这里有个输入框,我需要输入对应的数字,按enter回车键实现一个搜索   显然,我这里就使用了selenium来模拟键盘按enter键 1、Ctrl+A 2、Ctrl+C 3、Ctrl+V 4、键盘F4【其他的直接更换】 5、回车 6、回退 ..... 具体的其实对应的都在Keys类里面,这里直接分享出来,需要哪个就用

    2024年02月11日
    浏览(46)
  • WEB自动化测试(selenium工具)框架、面试题

                让程序员代替人为去验证web项目功能的过程      1)需求变动不频繁 测试脚本的稳定性决定了自动化测试的维护成本。如果软件需求变动过于频繁,测试人员需要根据变动的需求来更新测试用例以及相关的测试脚本,而脚本的维护本身就是一个代码开发的过程,

    2024年02月03日
    浏览(48)
  • Web自动化测试进阶 —— Selenium模拟鼠标操作

    在实际的web产品测试中,对于鼠标的操作,不单单只有click(),有时候还要用到右击、双击、拖动等操作,这些操作包含在ActionChains类中。 首先导入ActionChains类: from selenium.webdriver.common.action_chains import ActionChains context_click():右击 double_click():双击 drag_and_drop():拖动 move_to_

    2024年02月09日
    浏览(51)
  • Web自动化之Selenium常用操作方法大全

    本文总结使用selenium进行web/UI自动化时,会用到的一些常用操作。 定位元素 driver.find_element_by_xpath()#1、绝对路径 2、元素属性 3、层级和属性结合 4、使用逻辑运算符 driver.find_element_by_id()#根据id定位,HTML规定id属性在HTML文档中必须是唯一的 driver.find_element_by_name()#name属性定位

    2024年03月26日
    浏览(50)
  • Selenium——基于Web的UI自动化测试工具(一)

            Selenium是一个自动化测试工具,用于模拟用户在Web上的行为。它支持多种浏览器,如Chrome、Firefox、IE等。Selenium可以实现多种操作,包括打开浏览器、导航到指定URL、填写表单、点击按钮、获取页面元素等。         Selenium有多种语言实现,包括Java、Python、C#等

    2024年04月13日
    浏览(47)
  • web自动化框架:selenium学习使用操作大全(Python版)

    Selenium需要浏览器驱动程序才能与所选浏览器交互。例如,Firefox需要安装geckodriver。确保它在PATH中。 主流浏览器驱动下载地址如下: 浏览器 驱动名称 打开方式及注意事项 地址 Chrome chromedriver driver = webdriver.Chrome() 下载浏览器对应版本的chromedriver.exe 一定要创建对象,不然打

    2024年02月11日
    浏览(42)
  • 探索Python Selenium库:自动化测试和Web操作的完整指南

    📚 个人网站:ipengtao.com 在当今互联网时代,Web应用程序的测试和自动化成为了至关重要的一环。Python的Selenium库为开发者提供了一种强大的自动化测试工具,使得模拟用户行为、执行浏览器操作以及进行网页数据采集变得更加便捷。本文将全面介绍Selenium库的基本概念、安装

    2024年02月03日
    浏览(72)
  • 软件测试/测试开发丨Selenium Web自动化测试基本操作

    本文为霍格沃兹测试开发学社学员学习笔记分享 原文链接:https://ceshiren.com/t/topic/26901 模拟功能测试中对浏览器的操作 get方法打开浏览器 refresh方法刷新页面 用back方法回退到上一个界面 maximize_window方法使窗口最大化 minimize_window方法使窗口最小化 标签: a 属性:href 类属性

    2024年02月10日
    浏览(56)
  • Python Selenium4.3.0(新语法) web自动化测试工具

    1 介绍 Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。 支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等 这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够

    2024年01月24日
    浏览(49)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包