首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Selenium中找到带有CSS选择器的非根元素的直系后代?

在Selenium中,要找到带有CSS选择器的非根元素的直系后代,可以使用CSS选择器中的子选择器(>)来实现。

子选择器(>)用于选择直接子元素,即只选择指定元素的直接子元素,而不包括孙子元素或更深层级的后代元素。

以下是使用子选择器来定位带有CSS选择器的非根元素的直系后代的步骤:

  1. 首先,找到根元素,可以使用driver.find_element_by_css_selector()方法,并指定根元素的CSS选择器。 例如:root_element = driver.find_element_by_css_selector("#root")
  2. 然后,通过根元素定位其直系后代元素,可以使用子选择器(>)和后代选择器(空格)来进行定位。 例如:direct_descendant = root_element.find_element_by_css_selector("> .direct-descendant")
  3. 在上述例子中,direct-descendant是根元素的直系后代元素的CSS类选择器。
  4. 最后,你可以继续操作找到的直系后代元素,比如获取其文本内容、执行点击操作等。

总结一下,要在Selenium中找到带有CSS选择器的非根元素的直系后代,可以使用子选择器(>)结合根元素来定位。这样可以准确地定位到指定的直系后代元素。

请注意,以上提供的是一种方法,实际应用中还可以根据具体情况选择其他方法进行元素定位。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

02.爬虫基础知识与简易爬虫实现

---- ID选择器 元素id属性 比如 id就是important #intro用于选择id=intro元素 可以结合元素选择器...*[title] 选择所有包含title属性元素 a[href]选择所有带有href属性元素 还可以选择多个属性,比如:a[href][title],注意这里是要同时满足。... ---- 后代(包含)选择器 选择某元素后代元素(层级不受限制) 选择h1元素em元素:h1 em ---- ---- XPath 节点 七种基本节点 元素、属性、文本 命名空间、处理指令、注释以及节点 节点之间关系 父、子、同胞(兄弟)、先辈、后代 ----.../title[@lang] 选择所拥有有名为lang属性title元素 /bookstore/book[price>35.00] ---- 与CSS选择器比较 CSS更加简洁 XPath选择功能更加强大

44100

Selenium系列(十三) - 自动化必备知识之Xpath详细使用

标签 选取此节点所有子节点,类似 css标签选择器 / > 从节点选取,也就是当前节点最顶层(默认情况下当前节点是 html 最顶层,若从某元素开始,当前节点为此元素) // 空格...,后代选择器 从匹配选择的当前节点选择文档中节点,而不考虑它们位置 ....它是从1开始 : //input[2] ,表示任意节点下第二个 input 标签 Xpath等价于CSS选择器栗子 首先我们访问:https://www.51job.com/ 然后按F12,选中...Elements,按Ctrl+F 将下面的表达式放进去,逐一验证匹配出来元素是否一致 注意:这里可能需要你懂CSS各种选择器写法哦,不太了解可以看这篇博文:https://www.cnblogs.com...【/可替代,略显多余】 descendant 选取当前节点所有后代元素(子、孙等)【//可替代,略显多余】 descendant-or-self 选取当前节点所有后代元素(子、孙等)以及当前节点本身

1.4K30
  • web自动化04-css定位

    用来描述html元素显示样式   选择器是一种模式,用于选择需要添加样式元素   selenium中推荐使用css定位,比XPath定位要快  2、如何定位?   ...css定位方法:通过css选择器语法定位元素   element = driver.find_element_by_css_selector(css策略)  3、常用定位?   ...element1米定位element2,并且element2为element1后代元素   例如2:祖辈策略  后代策略 注意:父子层级关系也可以使用空格连接上下层级策略 4、CSS延伸[了解] input...***扩展8种元素定位底层实现**********:   方式:driver.find_element(By.xxx, 'value')   参数说明:     By.xxx :为By类类型 :By.ID...    value: 元素定位值 : "userA" By类:需要导包 位置: from selenium.webdriver.common.by import By

    22660

    【UI自动化-2】UI自动化元素定位专题

    路径匹配有以下几个符号: 用/表示节点路径,/A/B/C表示节点A子节点B子节点C,/表示节点。...元素选择器 选择input类型元素: By.cssSelector("input") 7.1 css类与id选择器 id选择器以 # 来定义,class类选择器以一个.显示,有以下几种例子: 选择id...'ch'].bg") 7.3 css元素选择器 何为子元素?...):By.cssSelector("form#form > span > input") 7.4 css后代元素定位 后代元素与子元素区别是,A元素元素元素,也是A后代元素。...后代元素标志符号是空格,例如同样定位百度搜索框,用后代元素方式: By.cssSelector("form#form input[name='wd']") 7.5 css相邻兄弟选择器 相邻兄弟选择器

    1.9K30

    Web 自动化实战经验硬核总结

    一、元素定位常用方法 1. xpath规则说明 "/" : 表示从节点选取 "//" : 从匹配选择的当前节点选择 "@" : 选取属性 "*" : 匹配任何元素节点 "@*" : 匹配任何属性节点...CSS选择器css selector) 作用:用于定位页面上标签元素,找到符合选择器标签元素,然后应用样式。...css定位语法 选择器 表达示例 含义 id选择器(id用 #表示) #abc 匹配id为abc标签 class选择器(class用 .表示) .abc 匹配class为abc标签 标签选择器 p...a[title] 匹配属性有titlea标签 属性选择器—匹配单词边界 a[title~=“hello”] 匹配title包含helloa标签 后代选择器(空格表示),可选取当前层级下任意层级元素...直接子元素 XPATH 中直接子元素是使用“/”定义,而在 CSS 上,它是使用“>”定义 XPATH://div/input CSS: div>input 后代元素 如果一个元素在另一个元素内部

    94420

    软件测试测试开发|Python selenium CSS定位方法详解

    简介CSS选择器是一种用于选择HTML元素模式。它允许我们根据元素标签名、类名、ID、属性等属性进行选择。CSS选择器语法简单而灵活,是前端开发中常用定位元素方式。...seleniumcss定位,实际是通过css选择器来定位到具体元素css选择器来自于css语法。...4属性名|='属性值' type|="submit" 选择所有type以"submit"开头元素备注:某些元素属性有多个值(class属性),值表现为以空格隔开,使用时需要单个取出使用组合选择器组合选择器就是同时使用多个基础选择器...元素1>元素2 div>p 选择所有父级是\\元素后代 元素1 元素2 div p...\元素使用示例通过id选择器查找通过css定位id属性查找百度首页输入框元素,代码如下:from selenium import webdriverfrom selenium.webdriver.common.by

    36110

    selenium css定位

    说明:本篇博客基于selenium 4.1.0 selenium-css定位 element_css = driver.find_element(By.CSS_SELECTOR, 'css表达式')...css定位说明 seleniumcss定位,实际是通过css选择器来定位到具体元素css选择器来自于css语法 css定位优点 语法简洁 对比其他定位方式,定位效率更快 对比其他定位方式,定位更稳定...type|="submit" 选择所有type以"submit"开头元素 备注:某些元素属性有多个值(class属性),值表现为以空格隔开,使用时需要单个取出使用 组合选择器 组合选择器就是同时使用多个基础选择器...div>和\元素 父子 元素1>元素2 div>p 选择所有父级是\\元素 后代...伪属性选择器是指元素在html中实际并不存在该属性,是由css定义拓展描述属性 选择器 格式 示例

    86800

    软件测试|selenium css定位

    说明:本篇博客基于selenium 4.1.0selenium-css定位element_css = driver.find_element(By.CSS_SELECTOR..., 'css表达式')css定位说明seleniumcss定位,实际是通过css选择器来定位到具体元素css选择器来自于css语法css定位优点语法简洁对比其他定位方式,定位效率更快对比其他定位方式...(class属性),值表现为以空格隔开,使用时需要单个取出使用组合选择器组合选择器就是同时使用多个基础选择器,从而更好地筛选出目标元素选择器 格式 示例...>\元素后代 元素1 元素2 div p 选择\中所有\元素相邻 元素1+元素...选择\同级后所有\元素伪属性选择器伪属性选择器是指元素在html中实际并不存在该属性,是由css定义拓展描述属性选择器 格式

    72320

    《最新出炉》系列初窥篇-Python+Playwright自动化测试-5-元素定位大法-上篇

    1.简介说到元素定位,小伙伴或者童鞋们肯定会首先想到 selenium 八大元素定位大法。同理Playwright也有自己元素定位方法。...选择器(Selector)是用于创建定位器字符串。Playwright 支持许多不同选择器,比如 Text、CSS、XPath 等。...当然除了这些,还有其他定位方法,selenium8种by元素定位,id、xpath、css等都可使用,还有W3C标准规定webDriver协议为5种定位方式CSS、Link text、Partial...3.4.1何时使用文本定位器建议使用文本定位器来查找交互式元素div, span, p 等。对于交互式元素请button, a, input, 使用角色定位器。...()创建一个定位器,该定位器采用描述如何在页面中定位元素选择器

    3.5K31

    何在Selenium WebDriver中查找元素?(一)

    建议网站开发人员避免使用唯一ID或动态生成ID,但是某些MVC框架(– ADF)可能会导致页面具有动态生成ID。...如果任何网站具有唯一ID或具有动态生成ID,则不能使用此策略唯一地查找元素,而是将返回与定位器匹配第一个Web元素。我们将如何克服这种情况,将在XPATH / CSS选择器策略中进行说明。...现在,让我们了解如何使用CSS选择器Selenium中查找元素。...相反,我们必须使用CSS选择器或XPath选择器。 XPATHSelector XPATH使用标准XML查询语法,因此更具可读性,学习曲线也不那么陡峭。...但是,CSS选择器虽然具有更简单语法支持,但不像XPATH和其他文档支持那样是标准,与XPATH不同。

    6K10

    自动化测试——selenium(环境部署和元素定位篇)

    ) 6、partial_link_text(定位超链接 a 标签 包含关系) 7、xpath (路径) 8、css (元素选择器) 注意:这是 selenium 框架中提供八大元素定位方法,只要能够定位目标元素...定位 ☆ 通过 css 选择器语法定位元素 1、Selenium框架官方推荐使用 css ,因为定位效率高于xpath 2、 CSS一种标记语言,焦点:数据样式。...控制元素显示样式,就必须先找到元素,在css标记语言中找元素使用css选择器; 3、css选择策略也有很多,但是无论选择哪一种选择策略都是用同一种定位方法 # 方法: driver.find_element_by_css_selector...="全部属性值"]) 3、属性选择器 语法1:[属性名=“属性值”] 语法2:标签名[属性名=“属性值”] 4、标签选择器 语法:标签名 input,button 5、层级选择器 父子层级关系...:父层级策略 > 子层级策略 (也可以使用空格连接上下层级策略) 祖辈后代层级关系:祖辈策略 后代策略 提示:>与空格区别,大于号必须为子元素,空格则不用。

    1.5K10

    CSS复合选择器

    交集选择器 交集选择器由两个选择器构成,其中第一个为标签选择器,第二个为class选择器,两个选择器之间不能有空格,h3.special。 ? 记忆技巧: 交集选择器 是 并且意思。...后代选择器 后代选择器又称为包含选择器,用来选择元素元素后代,其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签后代。 ?  ...子孙后代都可以这么选择。 或者说,它能选择任何包含在内 标签 子元素选择器元素选择器只能选择作为某元素元素元素。...属性选择器 选取标签带有某些特殊属性选择器 我们称为属性选择器         /* 选择input中带有value属性 */         input[value] {             ...(CSS3) E::first-letter文本第一个单词或字(中文、日文、韩文等) E::first-line 文本第一行; E::selection 可改变选中文本样式; p

    45840

    CSS选择符】后代选择符

    以下是结构示意图 祖辈:外层HTML标签是内层标签祖辈。标签是其内部所有标签(、 和标签)祖辈。 后代:标签里其他标签是后代。标签是标签后代, 标签即使标签后代,也是标签后代。...标签直接包含在 标签里,所以是 标签子代。 同辈:父辈相同标签叫同辈标签,相当于兄弟姐妹。和是同辈标签,和 也是同辈标签。...在CSS中,后代选择器写法是: 祖辈 后代 { 样式 ; } 首先,先找到祖辈,然后中间有一个空格,空格后面跟着后代。...后代选择符可以由2个以上元素组成,例如: ul li a body li a html li a html body ul li a 以上四个选择符作用相同,因此表明,无需指明目标标签所有直系。...同样后代选择符也不局限于只能使用类型选择符。 可以使用不同类型选择符构建复杂后代选择符。

    76950

    CSS快速入门(一)

    目录 CSS快速入门 简介 语法结构 如何注释 引入方式 选择器 简介 选择器列表 选择器优先级 基本选择器 标签选择器选择器 id选择器 通用选择器(不重要) 组合选择器 后代选择器 儿子选择器...它是元素和其他部分组合起来告诉浏览器哪个HTML元素应当是被选为应用规则中CSS属性值方式。选择器所选择元素,叫做“选择器对象”; css是用来调节标签样式 那为什么需要学选择器呢?...{ color: deeppink; } 属性选择器 CSS 属性选择器通过已经存在属性名或属性值匹配元素; 语法 [attr] 表示带有以 attr...[attr=value] 表示带有以 attr 命名属性,且属性值为 value 元素。...a[title] { } 标签属性选择器 伪类选择器 p:first-child { } 伪类 伪元素选择器 p::first-line { } 伪元素 后代选择器 article p 后代运算符 子代选择器

    94020

    CSS选择器世界》读书笔记

    概述 CSS选择器可分为4类:选择器body{})、选择符(相邻兄弟关系选择符+)、伪类(:hover)和伪元素::before)。...精通CSS选择符 四大选择符:后代选择符(空格),孩子选择器(>),相邻兄弟选择符(+)、后面兄弟选择符(~)。...焦点伪类:focus可以生效元素disabled状态表单元素; 包含href属性a元素元素,不过可生效CSS属性有限; HTML5中元素。...树结构伪类 :root匹配元素,IE9以上才支持,在XHTML中元素就是html,另外也可以匹配SVG元素,但不能匹配Shadow DOM元素,Shadow DOM元素是:host...:root最常用是声明CSS变量。 :empty用来匹配空元素,这里元素包括前后闭合元素,甚至这种闭合标签。如果标签内有空格、换行、注释则不能匹配:empty。

    8710

    CSS选择器分类

    简单选择器 根据标签名、id、类名来选取。id:是标签id属性值,类名:是标签class属性值。 元素选择器:根据标签名来选择html元素p、h1、div、input等待。...组合类选择器 css有四种不同组合器: 后代选择器(空格) 子选择器(>) 相邻兄弟选择器(+) 通用兄弟选择器(~) 实例:内容 后代选择器:div p{ font-size...伪元素选择器元素用于设置元素指定部分样式,元素首行、之前、之后等插入内容。...在元素之前加入内容 p::first-line 文本首行添加样式或内容 p::first-letter 文本首字母添加样式或内容 属性选择器带有特定属性 [attribute] html元素设置样式...[class*="top"]{ },选取class属性包含top元素css选择器很多,css3也新增了很多选择器,我们后期在讲css3选择器

    1.3K50

    CSS 常见面试题速查

    标签选择器 .className class 选择器 #footer id 选择器元素组合选择器 E, F 多元素选择器,同时匹配所有 E 元素 或 F 元素 E F 后代选择器,匹配所有属于...E 元素后代 F 元素 E > F 子元素选择器,匹配所有 E 元素元素 F E + F 相邻元素选择器,匹配所有紧随着 E 元素之后同级元素 F E ~ F CSS3,匹配任何在 E 元素之后同级...F 元素 属性选择器 CSS 2.1 E[attr] 匹配所有具有 attr 属性 E 元素(E 可以省略, [checked]) E[attr=val] 匹配所有 attr 属性值为 val... E 元素 E[attr~=val] 匹配所有 attr 属性具有多个空格分隔值、其中一个值等于 val E 元素具有多个 class 名元素 CSS 3 E[attr^="val"]...,此时 相对 是相对于正常文档流位置 absolute 相对于最近 static 定位祖先元素偏移,来确定元素位置 如一个绝对定位元素父级和祖父级都为 relative,会相对父级来产生偏移

    90710

    CSS选择器分类

    简单选择器 根据标签名、id、类名来选取。id:是标签id属性值,类名:是标签class属性值。 元素选择器:根据标签名来选择html元素p、h1、div、input等待。...组合类选择器 css有四种不同组合器: 后代选择器(空格) 子选择器(>) 相邻兄弟选择器(+) 通用兄弟选择器(~) 实例:内容 后代选择器:div p{ font-size...伪元素选择器元素用于设置元素指定部分样式,元素首行、之前、之后等插入内容。...在元素之前加入内容 p::first-line 文本首行添加样式或内容 p::first-letter 文本首字母添加样式或内容 属性选择器带有特定属性 [attribute] html元素设置样式...[class*="top"]{ },选取class属性包含top元素css选择器很多,css3也新增了很多选择器,我们后期在讲css3选择器

    95620
    领券