python 爬虫库 Pyquery 常用选择器教程

发布于 2021-11-10 14:34:29

元素选择

语法举例说明
*$("*")所有元素
element$("p")<p>元素
ele1,ele2$("th,td")<th>或<td>元素
#id$("p#lastname")id="lastname" 的p元素
.class$("p.intro")class="intro" 的p元素
.class.class$("p.intro.demo")class="intro" 且 class="demo" 的p元素
ele:emtpy$("p:empty")不包含子元素的p元素
ele:parent$("p:parent")包含子元素的p元素
ele1.has(ele2)$("div:has(p.intro)")有p子元素且子元素属性为intro的div元素

属性选择

语法举例说明
[attr]$(p"[href]")有href属性的p元素
[attr=value]$("p[href='#']")href 属性等于"#"的p元素
attr1$("ptitle")同时有title和href属性的p元素
[attr!=value]$("p[href!='#']")href 属性不等于"#"的p元素
[attr$=value]$("p[href$='.jpg']")href 属性以".jpg"结尾的p元素
[attr^=value]$("p[href^='fb']")href 属性以"fb"开头的p元素
[attr*=value]$("p[href*='link']")href 属性包含"link"的p元素

内容选择

语法举例说明
:contains(value)$("p:contains('W3School')")包含指定字符串的p元素

反向选择

语法举例说明
:not()$("div:not(:has(p))")不包含子元素p的div元素
:not()$(p:not([href])")没有属性href的元素
:not()$("p:not(:contains('abc'))")不包含指定字符串的p元素

关系选择

语法举例说明
ele1 ele2$("div li")元素div的后代li元素
ele1 > ele2$("div > li")元素div的li子元素
:eq(index)$("ul li:eq(3)")选择第4个li元素
:gt(index)$("ul li:gt(3)")选择第4个以后的元素
:lt(index)$("ul li:lt(3)")选择第4个以前的元素
0 条评论

发布
问题