前言:

XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。

看这里介绍:w3school

首先来看一下xpath常用的语法:

一、xpath:通过常用属性定位,如:id、name、class

# 1.通过id定位
driver.find_element_by_xpath("//*[@id='username']").send_keys("159258") # 2.通过name定位
driver.find_element_by_xpath("//*[@name='username']").send_keys("159159") # 3.通过class定位
driver.find_element_by_xpath("//*[@class='ml-46']").send_keys("159159")

二、通过其他属性、多属性组合

# 4.通过多属性组合
driver.find_element_by_xpath("//input[@class='ml-46' and @name='username']").send_keys("545") # 5.通过其他属性
driver.find_element_by_xpath("//input[@placeholder='手机号']").send_keys("123")

三、通过文本属性

  • 如图:定位加入购物车这个按钮

# 6.通过文本属性
driver.find_element_by_xpath("//a[text()='加入购物车']").click()

四、通过层级关系、模糊匹配

# 7.通过层级关系
driver.find_element_by_xpath("//form[@id='ECS_FORMBUY']/ul[3]/li[2]/a").click() # 8.通过模糊匹配
driver.find_element_by_xpath("//a[contains(text(),'加入购物车')]").click() # 9.模糊匹配xx开头的
driver.find_element_by_xpath("//a[starts-with(@class,'btn')]").click()

五、通过层级关系-索引


# 10.通过层级关系-索引
driver.find_element_by_xpath("//*[@id='ad_type']/option[1]").click()

selenium - xpath - 定位的更多相关文章

  1. 自动化测试基础篇--Selenium Xpath定位

    摘自https://www.cnblogs.com/sanzangTst/p/7458056.html 学习 什么是xpath? XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言 ...

  2. selenium xpath定位方式整理

    #xpath定位元素方法: /html/body/div[2] #绝对路径定位 #相对路径定位元素 //* #找到所有的元素 //input #找到input元素 //*[@*] #表示有属性的所有元 ...

  3. python selenium xpath定位方式

    作者刚开始写博客,格式和语言方面难免存在问题,请大家海涵,如果有问题也请直接指出 xpath是一种在xm文档中定位的语言,详细简介,请自行参照百度百科,本文主要总结一下xpath的使用方法,个人看法, ...

  4. selenium之xpath定位和input文本

    selenium之xpath定位和input文本 xpath简单定位: 打开浏览器的F12 在自己需要定位的元素的那里右键 选择copy->xpath selenium获取input下的文本: ...

  5. python+selenium基础之XPATH定位(第一篇)

    世界上最远的距离大概就是明明看到一个页面元素矗在那里,但是我却定位不到!! selenium定位元素的方法有很多种,像是通过id.name.class_name.tag_name.link_text等 ...

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

    在利用XSL进行转换的过程中,匹配的概念非常重要.在模板声明语句 xsl:template match = ""和模板应用语句xsl:apply-templates select ...

  7. Selenium+Java(四)Selenium Xpath元素定位

    前言 关于Selenium元素定位,这是最后一篇博客. Xpath定位可以实现的功能 Selenium+Java(三)Selenium元素定位中讲的定位方式也可以实现,具体要用那种定位方式要根据自己的 ...

  8. selenium自学笔记---ecshop购买脚本 xpath定位元素(下拉框,单选框)

    本机环境:xamppv3.2.1+ecshop3.0  1.元素定位写对,却一直报错,发现是页面元素加载的太慢,所以加上延时 from selenium import webdriverimport ...

  9. Python selenium PO By.XPATH定位元素报错

    Python selenium PO  By.XPATH定位元素报错 如下代码经常报错: # 首页的“新建投放计划”按钮 new_ads_plan = (By.XPATH, "//*[tex ...

随机推荐

  1. centos7下安装ngnix1.8.1

    参考 http://www.linuxidc.com/Linux/2016-09/134907.htm 安装依赖 openssl zlib pcre gcc 下载安装包 [root@localhost ...

  2. awk 连接字符串

    awk中数据类型,是不需要定义,自适应的. 有时候需要强制转换.我们可以通过下面操作完成. 一.awk字符串转数字awk 'BEGIN{a="100";b="10test ...

  3. struts2——上传文件

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  4. python 中 正则表达式 的应用

    python 中 正则表达式 的应用 最近作业中出现了正则表达式,顺便学习了一下. python比较厉害的一点就是自带对正则表达式的支持,用起来很方便 正则表达式 首先介绍一下什么是正则表达式. 正则 ...

  5. centos 安装jdk/resin/mysql

    一.安装JDK 1.判断是否安装 java -version 我的计算机上使用java -version命令,内容如下: java version "1.7.0_45"OpenJD ...

  6. css文本(教程)

    1.text-transform --文本转换 定义文本的大小写状态,此属性对中文无意义 取值:capitalize | uppercase | lowercase | none | inherit ...

  7. 【C#基本功 控件的用法】 Toolbar的用法

    之前从事Labview编程,Labview是一门快速编程的语言,虽然快速,但作为一门语言他灵活性不够,有些方面也不是很给力,就比如 Toolbar labview就没有Toolbar的基础控件,虽然可 ...

  8. jQuery 图片自动播放

    var imgArray = new Array("images/1.jpg", "images/2.jpg","images/3.jpg" ...

  9. Django restfull规范

    一. 什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” REST从资源的角 ...

  10. 集合中的工具类Collections和Arrays

    集合框架的工具类: Collections: 方法sort(): List<String> list = new ArrayList<String>();        lis ...