css元素定位

1、 是什么?
  用来描述html元素的显示样式
  选择器是一种模式,用于选择需要添加样式的元素
 
  selenium中推荐使用css定位,比XPath定位要快
 
 2、如何定位?
 
  css定位方法:通过css的选择器语法定位元素
 
  element = driver.find_element_by_css_selector(css策略)
 
 3、常用定位?
 
  css定位常用策略:
 
    1、id选择器
    2、class选择器
    3、元素选择器
    4、属性选择器
    5、层级选择器
 
 
①id选择器
 
  说明:根据元素id属性来选择
  格式:#id
  例如:#user<选择id属性值为userA的元素>
 
②class选择器
 
  说明:根据元素class属性来选择
  格式:.class
  例如:.telA<选择属性值为telA的所有元素>
 
注意:与class_name方法不同的是,如果使用具有多个值的class属性,则需要传入全部的属性,与xpath一样
 
 
③元素选择器
 
  说明:根据元素的标签名选择
  格式:element
  例如:input<选择所有input元素>
 
④属性选择器
 
  说明:根据元素的属性名和值选择
  格式:element[attribute = value]
  例如:[type = "password"]<选择type属性值为password的元素>
 
需求:打开注册A.html页面,完成以下操作:
1、使用id选择器定位用户输入框,输入:12345
2、使用属性选择器定位密码输入框,输入:1213
3、使用class选择器定位电话号码输入框,输入:23123
4、使用元素选择器定位注册按钮,并点击
 
⑤层级选择器
 
  说明:根据元素的父子关系来选择
  格式1:element1 >  element2           通过element1来定位element2,并且element2必须为element1的直接子元素
  例如1:父层级策略 > 子层级策略
  格式2:element1  element2      通过element1米定位element2,并且element2为element1的后代元素
  例如2:祖辈策略  后代策略
 
注意:父子层级关系也可以使用空格连接上下层级策略
 
4、CSS延伸[了解]
 
  • input[type^='p']  type属性以p字母开头的元素
  • input[types='d”]  type属性以d字母结束的元素
  • input[type*=‘w']  txpe属性包含w字母的元素
 
********扩展8种元素定位的底层实现**********:
 
  方式:driver.find_element(By.xxx, 'value')
  参数说明:
    By.xxx :为By类的类型 如:By.ID
    value: 元素的定位值 如: "userA"
 
By类:需要导包 位置: from selenium.webdriver.common.by import By
 
 
 
 
 
 
 
 
 
 
 
 
 
 

web自动化04-css定位的更多相关文章

  1. web自动化之元素定位篇

    一.web自动化元素定位的方式有8种.------腾讯课堂 1.1 id定位: 1.2 class定位: 1.3 classname定位 1.4 tag_name 1.5

  2. 自动化测试之CSS定位

    之前做自动化测试一直用RF框架来操作,发现了明显与unittest的灵活性相差一点. 重新温习了unittest框架,其中这个框架,元素定位是难点,以前更多的使用JQUERY方式定位, 发现其实与CS ...

  3. [Web 前端] 019 css 定位之绝对定位与相对定位

    1. 关于定位 我们可以使用 css 的 position 属性来设置元素的定位类型 postion 的设置项如下 设置项 释义 relative 生成相对定位元素元素所占据的文档流的位置不变元素本身 ...

  4. selenium+python自动化之CSS定位

    一.css:属性定位 1.css可以通过元素的id.class.标签这三个常规属性直接定位到 2.如下是百度输入框的的html代码: <input id="kw" class ...

  5. [Web 前端] 020 css 定位之绑定定位

    绑定定位 少废话,上例子 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  6. web自动化:元素定位(二)

    一. 实例 如何定位到下图第二个"抢投标",有一种方法是利用xpath定位 //a[@href="/loan/loan_detail/Id/7190.html" ...

  7. Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析

    加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景       在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链 ...

  8. 【WEB自动化】【第一节】【Xpath和CSS元素定位】

    目前自动化测试开始投入WEB测试,使用RF及其selenium库,模拟对WEB页面进行操作,此过程中首先面对的问题就是对WEB页面元素的定位,几乎所有的关键字都需要传入特定的WEB页面元素,因此掌握常 ...

  9. vue—你必须知道的 js数据类型 前端学习 CSS 居中 事件委托和this 让js调试更简单—console AMD && CMD 模式识别课程笔记(一) web攻击 web安全之XSS JSONP && CORS css 定位 react小结

    vue—你必须知道的   目录 更多总结 猛戳这里 属性与方法 语法 计算属性 特殊属性 vue 样式绑定 vue事件处理器 表单控件绑定 父子组件通信 过渡效果 vue经验总结 javascript ...

  10. 【Selenium01篇】python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作!

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 二.话不多说,直接开干,开始搭建自动化测试环境 这里以前在 ...

随机推荐

  1. 【OGF生成函数板子题】牛客编程巅峰赛S2第11场 C 挑选方案问题

    upd 2022-01-26 我找到了个题集 牛客竞赛数学专题班生成函数I(线性递推关系.生成函数概念与公式推导.暴力计算) 目录 题目链接 题面 解题思路 AC代码 题目链接 https://ac. ...

  2. Rainbond PipeLine插件部署与springboot应用部署实践

    前言:上一篇介绍额rainbond单机部署+单个节点的k8s环境搭建,本篇介绍rainbond5.12新增的pipeline插件的使用 1.Pipeline插件的安装 安装gitlab与gitlab- ...

  3. 了解 BASH

    管理整个计算机硬件的其实是操作系统的核心(kernel),这个核心是需要被保护的.所以使用者就只能通过shell来跟核心沟通,以让核心达到想要的工作.那么系统中有多少 shell?为什么要使用 bas ...

  4. 我和 chatGPT 对线操作系统!

    大家都知道现在 chatGPT 已经在多个领域展现了及其强大的工地,比如文案策划,毕业论文方便,甚至很多程序员都直接让 chatGPT 帮忙写代码了,在一些模板化的代码方面,chatGPT 更展示了优 ...

  5. 随机森林n_estimators 学习曲线

    随机森林 单颗树与随机森林的的分对比 # 导入包 from sklearn.datasets import load_wine from sklearn.model_selection import ...

  6. [PKM]阅读的方法

    0 概述 数据 => 信息 => 知识 => 智慧 1 读书的目的 : 先寻求真理,而后实践 => 先博学,而后守约(读透) & 先泛读/速读,再精读 / 知行合一 年 ...

  7. post-css/less/sass样式嵌套与命令之"&"符号—BEM

    看了< less 的 & 详解 https://www.jianshu.com/p/127b0974cfc3>,对于此文再做一别补充 常见用法: 直接嵌套写法 .a{   colo ...

  8. 基于Python的爬虫案例

    案例1:使用爬虫爬取京东华为手机用户评论 本案例借鉴哔哩哔哩博客主视频教程,感谢其教程为我开启了爬虫之旅:https://www.bilibili.com/video/BV1Yt4y1Y7nt?t=3 ...

  9. 【迭代器设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

    简介 迭代器模式(Iterator Pattern),是一种结构型设计模式.给数据对象构建一套按顺序访问集合对象元素的方式,而不需要知道数据对象的底层表示. 迭代器模式是与集合共存的,我们只要实现一个 ...

  10. antv x6 神奇的图片边框

    昨天才把html节点中的图片转成base格式的,今天就发现一个用户体验的问题:那么是啥呢?就是我从左侧的树形菜单中拖拽节点的时候(鼠标按下也是同样问题),发现节点的图片区域那里会出现一个边框,持续时间 ...