一、简介

XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。

二、定位

2.1 利用自己的本身属性定位

  //标签[文本属性和值]
  下面百度的例子:
  //a[text()='个人中心']  #利用文案
  //div[@class='s-isindex-wrap' and @class='s-user-set-menu']  #利用class并且用and连接,表示只有两个属性都满足时才确定元素
  //div[@class='s-isindex-wrap' or @class='s-user-set-menu']  #利用class并且用and连接,表示只要两个属性满足其中一个时就确定元素
  //div[@id='s_user_name_menu']   # id定位
  //div[contains(@class,'s-user-set-menu')]  #只要class中有s-user-set-menu字符串便定位,contains多用在文案定位中
 
2.2 利用父节点定位
  定位个人中心
    //div[@id='s_user_name_menut']/div/a  
  因为个人中心的父节点就一个div无法定位,所以找到div的上一级
  先定位到他的上一级的位置,然后找到个人中心。例如:找到id=s_user_name_menu的位置,他的下一级中又个div然后才是个人中心
  div中有好多a标签,如果是第一个a标签就直接写a或者a[0],如果不是第一个a标签写成a[index]。index为索引位置,索引从0开始计算
 
2.3 依靠子节点定位

   利用个人中心定位id=s_user_name_menu的位置
    //div[div[a[text()='个人中心']] ]
   第一个中括号为定位的位置,中括号里面的中括号为第一个中括号的下一级位置,依次类推
 
2.4 同级定位
   通过个人中心定位账号设置 
  //a[text()='个人中心']-sibling=a   或者  //a[text()='个人中心']-sibling::a
  紧跟着定位的位置下一个a标签
 
2.5 通配符*定位
      //div[@*='s_user_name_menu']  # 查询div标签中任何属性的值只要为s_user_name_menu便成功定位
      //*[@id='s_user_name_menu']  # 在任何标签下,只要id='s_user_name_menu'便成功定位
 
2.6 从根目录开始定位,用“/”开始
  /html/body/xxxx/div/xxx
 
 
 

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

  1. 『心善渊』Selenium3.0基础 — 6、Selenium中使用XPath定位元素

    目录 1.Selenium中使用XPath查找元素 (1)XPath通过id,name,class属性定位 (2)XPath通过标签中的其他属性定位 (3)XPath层级定位 (4)XPath索引定位 ...

  2. 使用python处理selenium中的xpath定位元素的模糊匹配问题

    # 用contains,寻找页面中style属性值包含有sp.gif这个关键字的所有div元素,其中@后面可以跟该元素任意的属性名. self.driver.find_element_by_xpath ...

  3. 初探UiAutomator2.0中使用Xpath定位元素

    J 今天的主题是讲一下在使用过程中遇到的一个问题,如何在UiAutomator2.0中使用Xpath定位元素? 背景 现在的app在打包成apk的时候都是有加固处理的,各种混淆加固,所以已经破坏了或扰 ...

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

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

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

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

  6. Selenium 详解xpath定位

    xpath定位在业界被戏称为元素定位的"屠龙宝刀",宝刀在手,武林我有.现在我们就来详解xpath定位方法. 一.xpath通过元素属性定位 xpath可以通过元素的属性来定位,如 ...

  7. python selenium框架的Xpath定位元素

    我们工作中经常用到的定位方式有八大种:id name class_name tag_name link_text partial_link_text xpath css_selector 本篇内容主要 ...

  8. selenium自动化之xpath定位*必会技能*

    相信写过ui自动化,对xpath定位感觉会特别亲戚,那么下面给大家分享些我们常常在写脚本时易忽略的一些小细节和技巧.首先使用xpath定位时切忌 不要使用带有空格的属性 不要使用自动生成的id.cla ...

  9. selenium中的xpath用法,使用xpath定位元素

    xpath路径选择器定位元素 1. xpath: 使用路径表达式来定位xml或者html中文档中选取节点.在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档节点( ...

随机推荐

  1. RPi Kernel Compilation

    Overview This page explains how to rebuild the kernel image for the RPi. There are two possible rout ...

  2. Objective-C的面向对象特性(一)

    Objective-C在c语言的基础上增加了面向对象特性,都有哪些面向对象特性呢? 其中第一个最重要的特性是类和对象的实现. Objective-C软件由许多对象构成,形成一个对象网络,对象之间通过发 ...

  3. Android实训案例(三)——实现时间轴效果的ListView,加入本地存储,实现恋爱日记的效果!

    Android实训案例(三)--实现时间轴效果的ListView,加入本地存储,实现恋爱日记的效果! 感叹离春节将至,也同时感叹时间不等人,一年又一年,可是我依然是android道路上的小菜鸟,这篇讲 ...

  4. 网络最短路径Dijkstra算法

    最近在学习算法,看到有人写过的这样一个算法,我决定摘抄过来作为我的学习笔记: <span style="font-size:18px;">/* * File: shor ...

  5. How to configure ODBC DSN in Client to access remote DB2 for Windows

      How to configure ODBC DSN in Client to access remote DB2 for Windows MA Gen feng (Guangdong Unito ...

  6. Mac OS X 10.10优胜美地如何完美接管iphone上的电话和短信

    自从今年苹果第一次的发布会上毛猫就特别注意这个功能,感觉特别Cool,特别方便.但直到今天毛猫才第一次成功测试出这个功能呀!虽然handoff功能还未测出来,但是觉得在mac上发短信和打电话也已经足够 ...

  7. oo修仙之路

    写在前面: 之前听说过oo这门课的威力,计院全体修仙现场的图也被转了不知多少遍,然而自己不亲身经历就不知这门课的难度所在.每次debug时耳边总会想起三国杀里面周瑜的话"挣扎吧,在血和暗的深 ...

  8. 3 sum closest

    Given an array S of n integers, find three integers in S such that the sum is closest to a given num ...

  9. ecshop 修改记录20150710

    ecshop 修改记录20150710 1:去掉头部TITLE部分的ECSHOP演示站 Powered by ecshop 前台部分:在后台商店设置 - 商店标题修改 后者打开includes/lib ...

  10. C语言编对双精度数保留一位小数

    /*第一题*/ #include<stdio.h> //输入1.2345 输出1.2000 //输入1.2547 输出1.3000 main(){ ; printf("请输入:\ ...