Selenium定位元素-Xpath的使用方法
工具
Xpath的练习建议下载火狐浏览器,下载插件Firebug、Firepath。
由于最新版火狐不支持Firebug等扩展工具了,所以需要下载49版以下的版本安装https://ftp.mozilla.org/pub/firefox/releases/,再进行插件扩展。
什么是Xpath?
Xpath是XML路径语言,简言之就是通过元素的路径来查找这个标签元素。
Xpath的使用方法
1.Xpath支持ID、Name、Class定位

2.如果标签没有ID、Name、Class三种属性,Xpath还支持属性定位功能

3.当标签的属性重复时,Xpath提供了通过标签来过滤

4.当标签重复时,Xpath提供了层级过滤
例如:找不到儿子,就先找到他爸爸,或者找他爷爷

5.一个元素她的兄弟标签跟她的标签一样,那么就无法通过层级定位到。可以利用Xpath提供的索引进行定位

6.上面集中的几种如果都用了还重复的话,那么就可以使用xpath提供的终极神器,逻辑运算定位。and或or

Selenium定位元素-Xpath的使用方法的更多相关文章
- selenium定位元素的八种方法
		
web driver提供了八种元素定位的方法: id, name, class name, tag name, link text, partial link text, xpath, css sel ...
 - selenium定位元素的8种方法
		
By.id,By.name,By.tagName,By.className,By.linkText,By.partialLinkText,By.xpath,By.cssSelector <a h ...
 - Web自动化基础(一)使用Selenium定位元素
		
什么是元素?我们知道网页上有什么内容显示出来,比如一个按钮,一个输入框,一张图片,都可以理解成元素,这些元素是由html代码构成的,比如图片可以用<img>标签来展示,一个输入框可以用&l ...
 - selenium 定位元素可以用多个findElement
		
selenium 定位元素可以用多个findElement,如driver.findElement(By.id"XXX").findElement(By.linkText(XXX) ...
 - Python+Selenium定位元素的方法
		
Python+Selenium有以下八种定位元素的方法: 1. find_element_by_id() eg: find_element_by_id("kw") 2. find_ ...
 - selenium 定位元素方法
		
1.通过id定位元素 写法1: element = driver.find_element_by_id("kw") 写法2: from selenium.webdriver.com ...
 - selenium定位元素方法汇总
		
#打开网页前三步 from selenium import webdriver driver=webidriver.Chrome() driver.get("https://www.baid ...
 - python+selenium 定位元素的主要方法
		
selenium对web各元素的操作首先就要先定位元素,定位元素的方法主要有以下几种: 通过id定位元素:find_element_by_id("id_vaule") 通过name ...
 - selenium java-3 定位元素的八种方法
		
web driver提供了八种元素定位的方法: id name class name tag name link text partial link text xpath css selector 如 ...
 
随机推荐
- 基础知识《零》---一张图读懂JDK,JRE,JVM的区别与联系
 - 多了解一下Chrome开发者控制台
			
多了解一下Chrome开发者控制台 2017年10月14日 • Tools, Web前端 • 1.0k views • 暂无评论 作为一名前端开发者,Chrome内置的控制台是必须了解的,它拥有非常丰 ...
 - java框架---->quartz的使用(一)
			
Quartz 是个开源的作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制.今天我们就来学习一下它的使用,这里会分篇章对它进行介绍.只是希望能有个人,在我说没事的时候,知道我不 ...
 - Esper学习之十一:EPL语法(七)
			
上一篇说到了EPL如何访问关系型数据库这种数据源,实际上别的数据源,比如:webservice.分布式缓存.非关系型数据库等等,Esper提供了统一的数据访问接口.然后今天会讲解如何创建另外一种事件类 ...
 - 【Web前端开发最佳实践系列】前端代码推荐和建议
			
一.常用的前端文件的组织结构: 1.js (放置JavaScript代码) lib(放置框架JavaScript文件) custom.js 2.css(放置CSS样式代码) lib(放置框架CSS文件 ...
 - MyBatis学习之多表查询
			
一对多需求:即一张表class中又含有多张表(teacher,student)内容.现根据class_id 来获取对应的班级信息(包括学生和老师信息) 方式一:嵌套结果 使用嵌套结果映射来处理重复的联 ...
 - slf4j + log4j 是如何初始化的
			
SLF4J的全称是 Simple Logging Facade for Java(简单java日志门面) SLF4J自己不提供具体的日志功能实现,只是提供了一个统一的日志门面,在这个统一的门面之下,用 ...
 - iOS开发中id、NSObject *、id、instancetype四者有什么区别?
			
在使用Objective-C语言进行iOS应用开发的时候,常常会涉及到id.NSObject *.id.instancetype这四个概念的使用,但这四者也是iOS初学者最易混淆的内容,下面小编看 ...
 - Unity3D笔记十九 持久化数据
			
1.PlayerPrefs类(生命周期???) 1.1 保存与读取数据 在C#中类似缓存.Cookie.Session等保存数据的,但是有点区别的是在C#中如果在取值时没有取到默认值则返回值是NULL ...
 - linux安装环境
			
我用的是Linux ubuntu 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 ...