Selenium相对定位

测试网站:Web form

相对定位的方法:

  • above():定位基准元素上方的元素
  • below():定位基准元素下方的元素
  • to_left_of():定位基准元素左侧的元素
  • to_right_of():定位基准元素右侧的元素
  • near() :定位基准元素附近50个像素以内的元素

其中上下还能和左右组合进行链式相对定位,如locate_with().below().to_right_of()

import timefrom selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.relative_locator import locate_withdriver = webdriver.Chrome()
driver.get("https://www.selenium.dev/selenium/web/web-form.html")
# 基准元素
refer_element = driver.find_element(By.NAME, "my-password")# 定位到Text input输入框,并输入Selenium
element_above = driver.find_element(locate_with(By.ID, "my-text-id").above(refer_element))
element_above.send_keys("Selenium")
time.sleep(5)# 定位到Disabled input框,并获取文本内容
element_below = driver.find_element(locate_with(By.NAME, "my-disabled").below(refer_element))
print(element_below.get_attribute("placeholder"))# 定位到Default checkbox,并勾选
element_checkbox = driver.find_element(locate_with(By.ID, "my-check-2").below(refer_element))
if not element_checkbox.is_selected():element_checkbox.click()   # 选中复选框
else:element_checkbox.click()   # 取消选中element_near = driver.find_element(locate_with(By.CSS_SELECTOR, "textarea[name='my-textarea']").near(refer_element))
print(element_near.get_attribute("rows"))time.sleep(5)
driver.quit()
# element_left = driver.find_element(locate_with(By.ID, "my-text-id").to_right_of(refer_element))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3270140.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

糊涂工具包和commons包(Java)

工具包(Commons-io) 介绍: Commons是apache开源基金组织提供的工具包,里面有很多帮助我们提高开发效率的API 比如: StringUtils 字符串工具类 NumberUtils 数字工具类 ArrayUtils 数组工具类 RandomUtils…

集群自组网应急指挥体系应用技术分析

一、技术背景与意义 随着社会的快速发展和科技的日益进步,面对自然灾害、突发事件等紧急情况,快速有效的应急指挥体系成为维护社会稳定和人民生命财产安全的重要保障。集群自组网应急指挥体系,以其快速部署、高可靠性、强抗毁性等优势&#…

高速传输新体验:探索最新USB-C移动硬盘盒的无限可能

在数字化时代,数据存储的重要性不言而喻,而硬盘盒作为连接外部硬盘与计算机的关键设备,其功能也在不断进化。近年来,随着技术的创新与发展,市场上出现了一种新型硬盘盒——它不仅能安全、高效地存储和传输数据&#xf…

JAVA笔记十七

十七、File-IO流 1.I/O的概念和java.io包 (1)输入:外部源—>程序 输出:程序—>输出目标 外部源、输出目标:磁盘文件、网络连接、内存缓存等 (2)java程序通过流执行I/O 流是一种抽象,可以用来产生信息或者使用信息&#…

Python基础——第一个Python程序

Python基础——第一个Python程序 一、编写和运行代码的工具1.1 为什么需要工具1.2 默认的交互式环境1.3 文本编辑神器 - Visual Studio Code1.4 专业的集成开发环境 - PyCharm 二、编写第一个Python程序2.1 在PyCharm中编写“Hello, World!”程序2.2 运行“Hello, World!”程序…

期指期货做空什么意思?股指期货做空怎么操作?

“期指做空”是一种金融交易策略,主要涉及股指期货。在这种策略中,投资者并没有实际持有股票,而是通过期货合约来进行交易。具体来说,做空是指在期货市场中,投资者预期某项资产的价格将下跌,因此选择先卖出…

springboot农村扶贫管理系统-计算机毕业设计源码34072

目录 1 绪论 1.1 选题背景与意义 1.2国内外研究现状 1.3论文结构与章节安排 2系统分析 2.1 可行性分析 2.1.1技术可行性 2.1.2经济可行性 2.1.3社会可行性 2.1.4法律可行性 2.2 系统流程分析 2.2.1 数据流程 2.2.2 业务流程 2.3 系统功能分析 2.3.1 功能性分析 …

十日Python项目——第三日(用户中心——邮箱验证、修改密码)

#前言: 在最近十天我会用Python做一个购物类项目,会用到DjangoMysqlRedisVue等。 今天是第三天,主要负责撰写用户中心部分,以及优化登录部分。若是有不懂大家可以先阅读我的前两篇博客以能够顺承。博客:十日Python项…

【你也能从零基础学会网站开发】 SQL结构化查询语言应用基础-- SQL Server 2000创建表约束之IDENTITY唯一游标、DEFAULT约束详解!

🚀 个人主页 极客小俊 ✍🏻 作者简介:程序猿、设计师、技术分享 🐋 希望大家多多支持, 我们一起学习和进步! 🏅 欢迎评论 ❤️点赞💬评论 📂收藏 📂加关注 IDENTITY唯一游…

安装CUDA Cudnn Pytorch(GPU版本)步骤

一.先看自己的电脑NVIDIA 支持CUDA版本是多少? 1.打开NVIDIA控制面板 2.点击帮助---系统信息--组件 我的支持CUDA11.6 二.再看支持Pytorch的CUDA版本 三.打开CUDA官网 下载CUDA 11.6 下载好后,安装 选择 自定义 然后安装位置 (先去F盘…

怎么远程查看电脑文件?

为什么需要远程访问电脑? 您是否曾遇到需要远程查看电脑文件的情况?例如,由于紧急原因需要访问办公室的电脑文件。那么,我们怎么才能在家里或者在外面远程查看公司电脑上的文件呢? 如今,许多远程控制软件…

用Manim实现Graf的数学动画——【DiGraph】的用法和实际操作

用Manim实现Graf的数学动画——【DiGraph】的详细 这是表示有向图的类。在有向图中,边有方向,意味着边是从一个顶点指向另一个顶点的。 图【Graph】两层含义: 1.称为顶点的连接点图。 2. 绘制的值,通常显示为具有水平轴和垂直轴的…

昇思25天学习打卡营第2天|基础知识-张量

目录 张量 张量Tensor的介绍 创建张量 张量的属性 张量索引 张量运算 Tensor与NumPy转换 Tensor转换为NumPy NumPy转换为Tensor 稀疏张量 CSRTensor COOTensor 张量 张量Tensor的介绍 张量(Tensor)是一个可用来表示在一些矢量、标量和其他…

探索 SPL-404 协议标准:NFT 与 DeFi 的融合

在快速发展的数字资产领域中,NFT 协议标准持续演变,改变了我们对数字所有权和互动方式的理解。从 Art 到 Gamefi 等等,NFT 已经演变成数字经济的重要组成部分,吸引了广泛关注。遵循 ERC404 协议,SPL404 概念在 Solana …

掀桌子了!原来是咱们的大屏设计太酷,吓着前端开发老铁了

掀桌子了!原来是咱们的大屏设计太酷,吓着前端开发老铁了 艾斯视觉观点认为:在软件开发的世界里,有时候创意和设计的火花会擦得特别亮,以至于让技术实现的伙伴们感到既兴奋又紧张。这不,我们的设计团队刚刚…

for循环计算1~100之间3的倍数的数字之和

你要计算1~100之间的数字先得打印出来1~100之间的数字然后在判断是不是3的倍数然后在打印出数字&#xff0c;代码如下 #include<stdio.h> int main() {int i 0;for (i 1; i < 100; i){if (i % 3 0){printf("%d ", i);}}return 0; }

平面点云三角化边数与点的关系

欢迎关注更多精彩 关注我&#xff0c;学习常用算法与数据结构&#xff0c;一题多解&#xff0c;降维打击。 点云三角化定义 原文 说人话&#xff1a; 一个二维平面点集P三角化结果是一个满足以下条件的三角形集合&#xff1a; 1 所有三角形的并集刚好是P的凸包。 2 所有三角…

反向代理和负载均衡

目录 步骤1 代理技术介绍 代理技术常见的类型 正向代理的用途 反向代理的作用 步骤2 反向代理配置 步骤3 负载均衡 1、路由模式&#xff08;推荐&#xff09; 2、桥接模式 3、服务直接返回模式 4、负载均衡算法介绍 1、轮询法 2、随机法 3、最小连接法 步骤4 nginx…

客户在哪儿AI——做真正管用的大客户获客方案

我们的目标是要打造一个真正“管用”的ToB大客户获客方案。以下是两个100%真实的案例&#xff0c;所有数据均为真实经营数据。一个是证明客户在哪儿AI对市场工作的颠覆性提升&#xff0c;另一个是证明客户在哪儿AI对决策层和销售工作的颠覆性提升。 客户在哪儿AI生产的是企业全…

唉~~量化策略越改越差了

最近收到藏经阁群友私信&#xff0c;问能不能在最近发布的轮动策略当中加入持仓时间的限制条件&#xff0c;买入某个ETF后&#xff0c;必须持有够7天才可以卖出。 其目的有二&#xff0c;第一是想减少市场杂音&#xff0c;减少不必要的交易&#xff0c;第二就是如果场外操作的话…