一、单一属性定位

  • type selector

  driver.find_element_by_css_selector('input') 

  • id 定位

  driver.find_element_by_css_selector('#kw')

  • class定位

  driver.find_element_by_css_selector('.s_ipt')

  • 其他属性定位

  driver.find_element_by_css_selector('[name='wd']')

  driver.find_element_by_css_selector([type='text'])

二、组合属性定位

  • id组合属性定位

  driver.find_element_by_css_selector("input#kw")

  • class组合属性定位

  driver.find_element_by_css_selector("input.s_ipt")

  • 其他属性组合定位

  driver.find_element_by_css_selector("input[name='wd']")

  • 仅有属性名,没值也可以

  driver.find_element_by_css_selector("input[name]")

  • 两个其他属性组合定位

  driver.find_element_by_css_selector("[name='wd'][autocomplete='off']")

  • 模糊匹配属性值方法

  以百度首页点击按钮为例

  

  1>属性值由多个空格隔开,匹配其中一个值的方法

  driver.find_element_by_css_selector("input[class~='btn']")

  2>匹配属性值为字符串开头的方法

  driver.find_element_by_css_selector("input[class^='btn']")

  3>匹配属性值字符串结尾的方法

  driver.find_element_by_css_selector("input[class$='s_btn']")

  

  

  4>匹配被-分割的属性值的方法,如上图的class

  driver.find_element_by_css_selector("input[class|='s']")  #要求精确填写的属性值

三、层次定位

1:E>F    E下面的F这个元素

driver.find_element_by_css_selector('from#form>span>input')#id是form的form下面的span下面的input

2:E:nth-child(n)  如上图,

driver.find_element_by_css_selector('#u_sp > a:nth-child(1)')#id为u_sp的下面的第一个a标签。

3:E:nth-last-child(n),如字面意思:倒数第几个标签

4:E:first-child,第一个标签

5:E:last-child,最后一个标签

6:E:only-child,唯一的标签

参考博客:https://www.cnblogs.com/haifeima/p/10138154.html

最新文章

  1. js日期相关
  2. [原创]MySQL RR隔离级别下begin或start transaction开启事务后的可重复读?
  3. [skill] C++ delete VS delete []
  4. RML Utilities for SQL Server
  5. ORACLE clusterware组成
  6. [Angular 2 Router] Configure Your First Angular 2 Route
  7. 关于InputStream 和String对象之间的相互转换
  8. Java [Leetcode 206]Reverse Linked List
  9. mybatis系列-13-resultMap总结
  10. vim下使用YouCompleteMe实现代码提示、补全以及跳转设置
  11. iOS 自定义导航栏笔记
  12. Eclipse常用快捷键大全
  13. 用户登陆注册【JDBC版】
  14. Python 爬虫练习(三) 利用百度进行子域名收集
  15. SLAM for dummies中文翻译
  16. Linux - 文件和目录常用命令
  17. 【emotion】目标初定
  18. Excel之批量改变特定字体颜色(转载)
  19. 翻译二--创建一个Web测试计划
  20. iOS开源项目:JSONKit

热门文章

  1. 持续化运维 DevOps
  2. CentOS 7的yum更换为国内的阿里云yum源
  3. 珠峰-cookie相关的东西
  4. Java集合那点事, 满满干货~
  5. Electron – 基础学习(3): 项目打包成exe桌面应用 之electron-builder
  6. SAP 如何看某个TR是否传入了Q或者P系统?
  7. 【算法】蓝桥杯 试题 基础练习 Huffuman树
  8. springBoot进阶02
  9. java自学:从零基础到入门系列--java环境变量的配置JDK的下载安装图解
  10. php压缩文件zip格式并打包(单个或多个文件压缩)