xpath定位元素详解

Selenium元素定位方法大汇总,及XPath、CSS定位详解 1.所有方法汇总 2.XPath定位详解 3.CSS定位详解 阅读详情

                                          通过xpath定义元素

一 、appache的安装

学习网站推荐W3school

步骤一:安装appache:httpd.exe -k install

 

步骤二:把xpath.html文件放到htdocs目录下面,然后运行:127.0.0.1/xpath.html

 

xpath.html源码如下:

 

<html>

<head><title>光荣之路测试网页</title></head>

<body>

<div id=div1>

<p>今天天气不错</p>

<p>挺风和日丽的</p>

<p>我们下午没有课</p>

</div>

<div id=div2 name="wulaoshidiv">

<p>今天天气不错<span>但是我在上课</span></p>

<p>挺风和日丽的</p>

<p>我们下午没有课<input type = text>文本内容</input></p>

</div>

 

</body>

</html>

 

备注:卸载:httpd -k uninstall -n apache2.4   

1.1 安装常见错误

httpd -n Apache2.4 –t

httpd -k start

 

 

 

 

 

二、如何定位元素

2.1 绝对路径定位

绝对路径:【页面路径不变】

/html/body/div[2]

 

2.2 相对路径定位

相对路径:

//div[2]

 

2.3 绝对和相对路径混合

两者混用

/html//div[2]

 

三、常用定位方式

//*     找所有的

//input    查询输入框的

//*[@*]   有属性的所有元素

//*[@id]    有id属性的所有元素

//*[@id="div1"]      #定位唯一一个div

 

3.1 文本定位

//*[.='挺风和日丽的']    #文本定位

//div[@id='div1']/*[.='挺风和日丽的']    

 

3.2 必杀技能一:两个属性组合定位

//*[@id="div2" and @name="wulaoshidiv"]    #两个属性组合定位    【必杀技能1】

 

//*[@id="div1" or @name="wulaoshidiv"]     #或者

//*[@id!="div1"]     #不等于

 

3.3 必杀技能二:包含

//*[contains(@name,"wulao")]    #包含一部分值【必杀技能二】

 

//div[@id='div1']/*[contains(.,"风")]

 

//div[@id='div1']/p[3]

 

//div[@id='div1']/p[last()]

 

3.4 必杀技能三:匹配数字

xpath.html源码:

<html>

<head><title>光荣之路测试网页</title></head>

<body>

<div id=div1>

<p>今天天气不错</p>

<p>挺风和日丽的</p>

<p>我们下午没有课</p>

</div>

<div id=div2 name="wulaoshidiv">

<p>今天天气不错<span>但是我在上课</span></p>

<p>挺风和日丽的</p>

<p name="name10">10</p>

<p name="name20">20</p>

<p name="name30">30</p>

<p name="name40">40</p>

<p name="name50">50</p>

<p name="name60">60</p>

<p>我们下午没有课<input type = text>文本内容</input></p>

</div>

</body>

</html>

 

如何匹配:

//p[.>=20]    #匹配数字【必杀技能3】

 

//p[.=20]

 

//p[.!=20]    或者//p[text()!=20]

 

 

3.5 定位上一级

//div[@id='div1']/*

//div[@id='div1']/p[1]/..     #上一级

 

3.6 找同级或者祖先节点

//p[.='50']/preceding-sibling::p[1]    #同级向前走

 

//p[.='40']/following-sibling::p[1]    #同级向后走

 

 

//p[.='40']/parent::div     #上级div

 

//p[.='40']/ancestor::div    #找祖先节点

 

//p[.='40']/ancestor::div/preceding-sibling::div    #找祖先节点的上一节点

 

3.7 找下一级

//*[@id='div1']/child::p[1]    #向下找

 

四、实践

找到下列网站的输入框和按钮元素

www.baidu.com

//*[@id="kw"]  或者//input[@id='kw']

//*[@id="su"]

https://www.sogou.com/

//*[@id="query"]

//*[@id="stb"]

https://cn.bing.com

//*[@id="sb_form_q"]

//*[@id="sb_form_go"]

 

【Python自动化测试29】Xpath、轴运算及CSS元素定位详解 文章目录一、前言二、Xpath元素定位2.1 元素定位原则2.2 Xpath介绍2.3 浏览器中的Xpath2.4 浏览器中使用Xpath 一、前言   本文章主要会讲解html的一些基础语法和使用,了解对应的基础语法后会对后续的自动化测试有一定的帮助,除此之外下方有系列文章的传送门,还在持续更新中,感兴趣的小伙伴也可以前往查看,话不多说,让我们一起看看吧~ 系列文章:   系列文章1:【Python自动化测试1】遇见Python之美   系列文章2:【Python自动化测试2】Python安装配置及 阅读详情

相关推荐

Selenium元素定位方法大全

作为当下最流行的web UI自动化测试工具,selenium是很多测试同学入门接触自动化测试时学习的第一个工具。想要自动化操作页面上的内容,元素定位是首先必须要学习的核心知识。

程序员小杨哥的博客 7489

xpath元素定位常用的5种方法(相对路径)

一、xpath定位 定位 说明 //ul/* ul的所有子元素 //input[2] 第2个input元素 //input[last() 最后一个input元素 input[position()< 3] 前2个input元素 //input[@value] 有value属性的input元素 //input[@name=‘password’ and @pwd=‘123456’] 属性name的值等于password并且属性pwd的值等于123456的input元素

adorable_的博客 4万+

ue4 角色奔跑/冲刺/蹲下 /蹲走 动作切换蓝图

序列:文章分为4部分: 一、准备工作+简单的蓝图连线 二、编写“行走” 混合空间 三、编写“蹲下”混合空间 四、合成2个动画,设置动画蓝图 —————————————— 一、准备工作 下载“动画初学者包”,添加到项目! 主要文件: 打开BP_playerCharacter,组价——添加组件,找到“摄像机”,“机臂” 没有找到就去其他项目复制过来 ———————————— 手写人物的移动,也可以在...

凉城古梦猫扑街的博客 4862

xpath元素定位

自动化测试就是模拟人的操作,对页面的元素进行点、勾选、输入,等操作。前提是只有我们找到了对的元素,才能进行这一系列动作。xpath就是一种比较常用的找元素的方法。提示:以下是本篇文章正文内容,下面案例可供参考。

MeiWenjilu的博客 8510

一文梳理金融风控建模全流程(Python)

。借助A卡模型,银行或金融机构能够根据申请人的个人信息和历史数据,对其进行风险评估。这种评估能够帮助金融机构判断借款人是否具备偿还贷款的能力和意愿。

weixin_43420291的博客 4776

C# CAD2016 多边形顶点按方向重新排序

这样,通过以上步骤,我们找到了一个多边形的一个候选起始顶点(可能位于西北方向),并且已经获取了该多边形的边界框信息,这些信息对于后续判断顶点排列顺序及处理其他相关问题具有重要意义。完整地处理八个方向(东北、东南、西南、西北、北、南、东、西),我们可以创建一个方法来获取多边形相对于给定点的最近顶点及其对应的方向。对象(或类似的多边形表示方式),其中包含了多边形的顶点。//附送AI 图片无版权 随意用 龙年大吉大利。

转眼之间 一路有你 1356

史上最全的xpath定位方法

例如,要查找具有class属性值为"foo"并且id属性值不是"bar"的元素,可以使用XPath表达式//*[@class="foo" and not(@id="bar")]。例如,要查找所有具有class属性的元素,可以使用XPath表达式//*[@class]。XPath: //div[@class="container"]/h2 或 //div[@class="container"]/p。=======================分割线==========================

架构师 1万+

深入解析DisplayPort(DP)接口:从主链路到辅助通道的全方位技术剖析

本文深入解析DisplayPort(DP)接口的核心技术架构,重点剖析了其三大功能模块:承载视频/音频数据洪流的Main-Link主链路、负责链路训练与设备控制的AUX CH辅助通道,以及实现智能交互的HPD热插拔检测。文章详细阐述了主链路的可伸缩Lane配置、嵌入式时钟与数据成帧机制,以及辅助通道在设备发现、动态优化信号质量(链路训练)中的关键作用,揭示了DP接口实现高效率与灵活性的设计哲学。

weixin_29267307的博客 489

元素定位之XPath定位-学习

XPath (XML Path Language) 是由国际标准化组织W3C指定的,用来在 XML 和 HTML 文档中选择节点的语言。目前主流浏览器 (chrome、firefox,edge,safari) 都支持XPath语法,XPath有 1 和 2 两个版本,目前浏览器支持的是 XPath 1的语法。为什么要学习 Xpath呢?因为真正在实际工作中,只有xpath和css的定位方式是可以用来做项目的。那我们应该选择哪个来运用到我们的项目呢?

zyg的博客 5225

手把手教你用VCS+Verdi在Linux下仿真蜂鸟E203 RISC-V核(附波形调试技巧)

本文详细介绍了在Linux环境下使用VCS和Verdi工具链对蜂鸟E203 RISC-V核进行仿真验证的完整流程。从环境配置、工程结构解析到VCS编译优化和Verdi波形分析技巧,提供了实战性强的调试方法和性能优化策略,帮助工程师高效完成数字IC验证工作。

weixin_42531163的博客 416

深度学习实战87-高中数学自适应测试系统研究与应用研发,前后台页面设计

大家好,我是微学AI ,今天给大家介绍一下深度学习实战87-高中数学自适应测试系统研究与应用研发,前后台页面设计。高中数学自适应测试系统旨在通过精准评估学生能力,用最少的题目发现其薄弱环节,并提供定制化的学习计划,帮助学生快速提升成绩。同时,系统结合了AI大模型实现自动判卷、生成报告,减轻教师负担,并支持个性化作业布置,使教学更加高效。学生可以清晰了解自身学习状态,教师也能获得精准的学生画像,实现差异化教学。

微学AI的博客 444

XPATH元素定位详解

Xpath,Css元素通用定位 一、问题: 通常情况下,元素定位使用id、name、class、text可以满足日常大部分定位需求。但是 随着自动化测试的深入,和不同框架要求,会发现上面的定位方式无法解决一些元素定位。尤其对于这样一些元素: 1、没有id、name、class等属性; 2、标签的属性或文本信息特征没有或者不明显; 3、标签嵌套复杂,层次太多等。 这时候我们不得不借助Xpath和Cs...

qq_42281648的博客 8591

把 ABAP writable CDS view entity 讲透:从只读建模到可写模型的 ABAP CDS 新能力

摘要:SAP引入的writable CDS view entity突破了传统CDS视图只读的限制,允许通过ABAP SQL直接进行数据修改。该特性通过WRITABLE关键字定义,使CDS视图成为与数据库表同等级别的可写对象。其核心价值在于为数据集成、中间层同步等场景提供结构化写入入口,但需注意不应绕过业务规则。最佳实践建议保持底层表结构简单映射,避免复杂变形。这一特性标志着CDS从单纯消费模型向双向数据交互能力的演进,为ABAP开发提供了新的数据边界设计思路。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1313

selenium元素定位方法介绍|XPATH详解|下拉列表框定位方法

// 表示选择当前节点下的所有后代节点 .. 表示选择当前节点的父节点 parent:父节点 preceding-sibling:当前元素节点标签之前的所有兄弟节点 preceding:当前元素节点标签之前的所有节点 following-sibling:当前元素节点标签之后的所有兄弟节点 following:当前元素节点标签之后的所有节点

cs_mengxi的博客 2876

18 中望CAD二次开发-DWG参照(ZRX C++)

本文介绍了CAD参考外部dwg文件的原理和代码实现及如何卸载参考文件的全过程,是中望CAD二次开发中重要的功能。

cilvsuanna的博客 207

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Xpath元素定位详解

为什么80%的码农都做不了架构师?>>> ...

weixin_33894992的博客 1816

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Web自动化元素定位之xpath定位详解

1.id、name、class_name、tag_name:根据元素的标签或元素的属性来进行定位2.link_text、partial_link_text:根据超链接的文本来进行定位(a标签)3.xpath:为元素路径定位--重点4.cSs: 为css选择器定位(样式定位)

nhb687095的博客 1182

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Selenium_元素定位之xpath详解

元素定位之xpath详解什么是xpathXML 实例文档xpath基本语法选取节点谓语(Predicates)选取未知节点选取若干路径绝对路径定位相对路径定位元素索引定位节点属性定位文本内容定位模糊匹配定位Axis(轴)定位布尔定位xpath调试 什么是xpath xpath 是 XML Path 的简称,是一门在XML文档种查找信息的语言,而 HTML 文档是标准的XML页面,所以可用 xpat...

rainyRs的博客 691

selenium元素定位之XPath定位与CSS定位详解

selenium元素定位之XPath定位与CSS定位详解

vale_的博客 1480

014-Web_元素定位_Xpath详解

格式 //*[@id=''] find_element(By.XPATH,'//*[@id="kw"]')# 格式browser.find_element(By.XPATH,'//*[@id="kw"]')//*[text()='京公网安备11000002000001号']']#input[type*"w"] ---type属性包含字母"w"的元素。#input[type$"d"] ---type属性以d号结束的元素。#input[type^"p"] ---type属性以P开头的元素。

m0_46221673的博客 546

selenium定位元素-xpath详解

XPath 使用路径表达式来选取 XML 文档中的节点或节点集。 节点是通过沿着路径 (path) 或者步 (steps) 来选取的. 注:同一级别的多个标签 索引从1开始 而不是0 1. 绝对定位: xxx.find_element_by_xpath(“绝对路径”) 不推荐使用:当页面元素位置发生改变时,都需要修改 2. 相对路径: 相对路径,以‘//’开头 3. 标签属性定位: ...

qq_34745204的博客 665
上一篇: django从环境搭建到入门
下一篇: 单元测试
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值