选择器

作者: 感光狗 | 来源:发表于2021-05-01 09:23 被阅读0次

    Xpath

    'article' 选取所有 article 元素的所有子节点
    '/article' 选取根元素 article
    'article/a' 选取所有属于 article 的子元素的 a 元素
    '//div' 选取所有 div 子元素( 无论出现在文档任何地方 )
    'article//div' 选取所有属于 article 元素的后代的 div 元素, 不管它出现在 article 之下的任何位置
    '//@class' 选取所有名为 class 的属性
    
    '/article/div[1]' 选取属于article子元素的第一个div元素
    '/article/div[last()]' 选取属于article子元素的最后一个div元素
    '/article/div[last()-1]' 选取属于 article 子元素的最后第二个div元素
    '//div[@lang]' 选取所有lang属性的div元素
    '//div[@lang="eng"]' 选取所有属性lang值为eng的div元素
    
    '/div/*' 选取属于div元素的所有子节点
    '//*' 选取所有元素
    '//div[@*]' 选取所有带属性的div元素
    '/div/a | //div/p' 
    '//span | //ul' 选取文档中所有的 span 和 ul 元素
    'article/div/p | //span' 选取所有article下的div下的p元素 和 文档中的所有span元素
    
    # 函数
    'div[contains(@id, "first")]' id是first的div元素
    'a[text() = "baidu"]' 文本是baidu的a元素
    'div[starts-with(@id, "first")]' id以first开头的div元素
    'input[@name="id" and not(contains(@class, "fuck"))]' name属性是id 并且 没有fuck类的input元素
    'input[not(@id)]' 不包含id属性的input元素
    

    CSS选择器

    '*' 选择所有节点
    '#container' 选择id为container的节点
    '.container' 选择所有class包含container的节点
    'li a' 选取所有li下的所有a节点
    'ul + p' 选择ul后面的第一个p元素
    'div#container > ul' 选取id为container的div的ul子元素
    
    ’p ~ ul' 选择前面有<p>元素的每个<ul>元素
    'a[title]' 选取所有有title属性的a元素
    'a[href="http://jobbole.com"]' 选取所有href属性为 jobbole.com 值的a元素
    'a[href*="jobole"]' 选取所有href属性包含 jobbole 的a元素
    'a[href^="http"]' 选取所有href属性值以http开头的a元素
    'a[href$=".jpg"]' 选取所有href属性值以.jpg结尾的a元素
    'input[type=radio]:checked' 选择选中的radio的元素
    
    'div:not(#container)' 选取所有id非container的div属性
    'ii:nth-child(3)' 选取第三个li元素
    'tr:nth-child(2n)' 第偶数个tr
    

    相关文章

      网友评论

          本文标题:选择器

          本文链接:https://www.haomeiwen.com/subject/cmdarltx.html