首页 > 其他分享 >相对定位器 (Relative Locators)

相对定位器 (Relative Locators)

时间:2024-12-09 14:31:55浏览次数:3  
标签:relative 定位器 button 元素 Relative near 给定 Locators

相对定位器允许你基于其他元素的位置来定位页面上的元素。这对于那些动态生成或者难以通过传统方式(如 ID、类名或 XPath)准确定位的元素非常有用。你可以使用相对位置(上方、下方、左边、右边)以及接近度(靠近)来描述目标元素的位置。

在 Selenium 4 中,相对定位器是通过 with_tag_namenear 方法实现的。以下是一个简单的例子:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.relative_locator import locate_with

# 假设你已经创建了 WebDriver 的实例 driver
# 定位一个位于指定文本框旁边的按钮
text_box = driver.find_element(By.ID, "exampleTextBox")
relative_locator = locate_with(By.TAG_NAME, "button").near(text_box)
button = driver.find_element(relative_locator)

# 现在你可以与找到的按钮进行交互
button.click()

相对定位器支持的方法包括:

  • above: 元素应该在给定元素的上方。
  • below: 元素应该在给定元素的下方。
  • to_left_of: 元素应该在给定元素的左边。
  • to_right_of: 元素应该在给定元素的右边。
  • near: 元素应该在给定元素附近(默认距离为50像素,但可以自定义)。

标签:relative,定位器,button,元素,Relative,near,给定,Locators
From: https://www.cnblogs.com/nizi-ver1/p/18594843

相关文章

  • position的relative和absolute分别是相对谁进行定位的?
    Infront-enddevelopment,position:relative;andposition:absolute;workrelativetodifferentelements:position:relative;:Anelementwithposition:relative;ispositionedrelativetoitsnormalpositioninthedocumentflow.Thinkofitasoffs......
  • Python包导入报错:ValueError: attempted relative import beyond top-level package
    Python包导入报错:ValueError:attemptedrelativeimportbeyondtop-levelpackage前置知识:python-m命令python-m命令用于以模块的方式运行Python代码,而不是直接执行脚本文件。它为执行Python代码提供了一种更加灵活和标准化的方式,特别适用于包和模块。python-m的工作原......
  • WPF Binding中的RelativeSource属性
    一、简介一个在Binding中比较重要的知识点——RelativeSource.使用RelativeSource对象指向源对象。用这个可以在当前元素的基础上查找其他对象用于绑定到源对象。在实际使用Binding的过程中大部分时间Binding都放在了数据模板和控件模板中,(数据模板是控件模板用于定义控件的UI)。......
  • WPF relative uri
    <ImageGrid.Column="0"Source="pack://application:,,,/WpfApp431;component/Images/1.jpg"RenderOptions.BitmapScalingMode="Fant"/><ImageGrid.Column="1"Source="pack://applic......
  • WPF DataGrid ContextMenu CommandParameter Relative x:Type ContextMenu ,Path=Plac
    //xaml<DataGrid.ContextMenu><ContextMenu><MenuItemHeader="SerializeBinary"Command="{BindingBinSerializeCmd}"CommandParameter="{BindingRelativeSource={Relativ......
  • Web自从化中的相对定位器
    selenium4带来了一种新的定位方式-相对定位器,添加相对定位器是为了帮助定位可定位元素相邻的元素,可用的相对元素定位器有5种classxddw():defxd(self):el=driver.find_element(By.XPATH,'//*[@id="s_kw_wrap]')#上a=driver.find_eleme......
  • WPF datagrid contextmenu menuitem commandparameter CommandParameter="{Binding R
    Install-packagenewtonsoft.json  <DataGrid.ContextMenu><ContextMenu><MenuItemHeader="ExportSelected"Command="{BindingExportSelectedCmd}"CommandParameter="{BindingRelativeSource={Relat......
  • crontab on raspberry pi, full path, not relative path, is needed.
    Sources: https://forums.raspberrypi.com/viewtopic.php?t=296993 thanksthagrol,thanksRaTTuS,youareright.Igetwrong.10****reboot->isnotrebootin10min.Itisnexthouratminute10reboot*/10****reboot->itisrebbotin10minB......
  • 【鸿蒙 HarmonyOS NEXT】相对布局:RelativeContainer
    一、概述在应用的开发过程中,经常需要设计复杂界面,此时涉及到多个相同或不同组件之间的嵌套。如果布局组件嵌套深度过深,或者嵌套组件数过多,会带来额外的开销。如果在布局的方式上进行优化,就可以有效的提升性能,减少时间开销。二、示例介绍2.1、示例代码@Entry@Componentstr......
  • SciTech-BigDataAIML-LLM-PE(Positional Encoding)位置编码: Absolute(绝对)Position
    SciTech-BigDataAIML-LLMPE(PositionalEncoding)位置编码:1Absolute(绝对)Position2Relative(相对)Position3Rotate(旋转)Position......