xpath定位
xpath概述:
1、xpath即为xml path的简称,它是一种用来确定XML文档中某部分位置的语言。
2、HTML可以看做是XML的一种实现,所以selenium用户可以使用这种强大的语言在web应用中来定位元素。
3、xpath为强大的语言,是因为它有非常灵活的定位策略。
xpath定位策略(方式):
1、路径定位–绝对路径、相对路径;
2、利用元素属性定位;
3、层级与属性结合定位;
4、属性与逻辑定位结合。
xpath定位方法:find_element_by_xpath()

1:路径定位(绝对/相对路径)
绝对路径:从最外层元素到指定元素之间所有经过元素层级路径;如/html/body/div/p[2]
提示:
1.绝对路径是以/开始
2.通过浏览器查看元素属性,右击复制xpath快速生成
相对路径:从第一个符合条件元素开始(一般配合属性来区分);如//input[@id=‘kw’]
提示:
1.相对路径以//开始
2.通过浏览器查看元素属性,右击复制xpath快速生成

2:利用元素属性
快速定位元素,利用元素唯一属性;
示例:打开百度首页,通过xpath元素属性定位,输入搜索关键字

from selenium import webdriver
import time# 打开chrome浏览器
driver = webdriver.Chrome()
# 打开百度搜索页面
driver.get('https://www.baidu.com')
# 通过xpath 元素属性来定位
driver.find_element_by_xpath('//input[@id="kw"]').send_keys('xpath')
# 强制等待2秒查看效果
time.sleep(2)
# 关闭浏览器
driver.quit()

3:层级与属性结合
要找到的元素没有属性,但是它的父级有;
示例://*[@id=“d1”]/input

4:属性与逻辑结合
解决元素之间相同属性重名问题;
示例://*[@id=“telA” and @class=“telA”]

selenium之xpath定位详解相关推荐

  1. selenium之css定位详解

    css定位 css概述: 1.css(Cascading Style Sheets)是一种语言,它用来描述HTML和XML的元素显示样式. 2.css语言中有css选择器,在selenium中也可以使 ...

  2. [Python从零到壹] 九.网络爬虫之Selenium基础技术万字详解(定位元素、常用方法、键盘鼠标操作)

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  3. python中selenium模块驱动谷歌详解

    python中selenium模块驱动谷歌详解 Selenium的介绍.配置和调用 Selenium(浏览器自动化测试框架) 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中 ...

  4. css 高度塌陷_HTML+CSS入门 HTML高度塌陷以及定位详解

    本篇教程介绍了HTML+CSS入门 HTML高度塌陷以及定位详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 高度塌陷的含义: 父元素的高度,默认被子元素撑开,目前来讲 ...

  5. web自动化测试之Selenium基础 — XPath定位大全

    1.什么是 XPath? XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言.XPath 用于在 XML 文档中通过元素和属性进行导航. XPath 包含一个标 ...

  6. 用XPath精确定位节点元素selenium使用Xpath定位之完整篇

    用XPath精确定位节点元素&selenium使用Xpath定位之完整篇 用XPath精确定位节点元素&selenium使用Xpath定位之完整篇 在利用XSL进行转换的过程中,匹配的 ...

  7. c语言指定变量地址,C语言中 “_at()” 特殊地址定位详解

    C语言中 "_at()" 特殊地址定位详解 在keil里面,有一个特殊地址定位的指令,就是将一个变量或常量定位到一个指定的地址上面 指令为 __at ,使用方法如下 int var ...

  8. css中的position定位详解

    css中的position定位详解 position属性指定了元素的定位类型. position属性的5个值:static,relative,fixed,absolute,sticky; 元素可以使用 ...

  9. XPath入门 Selenium使用Xpath定位

    XPath入门 Selenium使用Xpath定位 什么是Xpath 什么是XML XML 与 HTML 的主要差异 如何来获取想要的Xpath路径 谷歌浏览器为例 掌握基本语法,以下列的HTML为例 ...

最新文章

  1. LeetCode题解——Longest Palindromic Substring
  2. mysql text 不可指定默认值
  3. 【WEB API项目实战干货系列】- API访问客户端(WebApiClient适用于MVC/WebForms/WinForm)(四)
  4. 将数据、代码、栈放入不同的栈(8086)
  5. itext poi 学习之旅 (3)读取数据库信息并由excel展现出来
  6. 针对于Vins-Mono中的评价工具evo中的评价参数的理解
  7. 基础二:晶体与各向异性
  8. 自然语言处理(NLP):国内会议
  9. MugLife静态照片变3D动画算法研究
  10. node.js+uni计算机毕设项目计算机配件价格查询微信小程序(程序+小程序+LW)
  11. 小波模极大值用于图像融合
  12. 【JavaScript 基础】-- 数组切割splice和slice
  13. 阻塞队列(BlockingQueue)
  14. java poi生成的word表格在wps中的显示问题
  15. 逆水寒捏脸服务器维护,《逆水寒》2019年3月28日更新公告
  16. 轻质泡沫板的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  17. 微信小程序的发送请求
  18. K8S+Jenkins+Harbor+Docker+gitlab集群部署
  19. 骁龙8gen2和天玑9200功耗对比 天玑9200和骁龙8gen2哪个好
  20. 百度技术沙龙(第2期)- 1. 百度大规模数据处理(转载)

热门文章

  1. Oracle报ORA-01722错误的优化办法
  2. 如何高效撰写毕业论文之Origin绘图 (一)
  3. 使用Konva操纵HTML5画布:第2部分,基本形状
  4. React项目搭建及环境配置
  5. vim极为详细的教程(一)基本操作
  6. 【Matlab学习手记】偏最小二乘回归
  7. (光速上手)Docker搭建kafka单机版
  8. 2014年电大计算机应用基础考,2017年电大网考计算机应用基础统考试题
  9. Flutter常用布局集合
  10. element UI 中 el-tree 树形菜单新增、删除操作