`

jsoup 的选择器一览表[转]

阅读更多
File input = new File("/tmp/input.html");   
Document doc = Jsoup.parse(input, "UTF-8", "http://example.com/");   
  
Elements links = doc.select("a[href]"); // a with href   
Elements pngs = doc.select("img[src$=.png]");   
  // img with src ending .png   
  
Element masthead = doc.select("div.masthead").first();   
  // div with class=masthead   
  
Elements resultLinks = doc.select("h3.r > a"); // direct a after h3 


下面是 jsoup 所支持的选择器列表:
Selector overview

tagname: find elements by tag, e.g. a
ns|tag: find elements by tag in a namespace, e.g. fb|name finds <fb:name> elements
#id: find elements by ID, e.g. #logo
.class: find elements by class name, e.g. .masthead
[attribute]: elements with attribute, e.g. [href]
[^attr]: elements with an attribute name prefix, e.g. [^data-] finds elements with HTML5 dataset attributes
[attr=value]: elements with attribute value, e.g. [width=500]
[attr^=value], [attr$=value], [attr*=value]: elements with attributes that start with, end with, or contain the value, e.g. [href*=/path/]
[attr=~regex]: elements that have the attribute key, that its value matches the supplied regular expression; e.g. img[src~=(?i)\.(png|jpe?g)]
*: all elements, e.g. *

Selector combinations

el#id: elements with ID, e.g. div#logo
el.class: elements with class, e.g. div.masthead
el[attr]: elements with attribute, e.g. a[href]
Any combination, e.g. a[href].highlight
ancestor child: child elements that descend from ancestor, e.g. .body p finds p elements anywhere under a block with class "body"
parent > child: child elements that descend directly from parent, e.g. div.content > p finds p elements; and body > * finds the direct children of the body tag
siblingA + siblingB: finds sibling B element immediately preceded by sibling A, e.g. div.head + div
siblingA ~ siblingX: finds sibling X element preceded by sibling A, e.g. h1 ~ p
el, el, el: group multiple selectors, find unique elements that match any of the selectors; e.g. div.masthead, div.logo

Pseudo selectors

el:lt(n): find elements whose sibling index (i.e. its position in the DOM tree relative to its parent) is less than n; e.g. td:lt(3)
el:gt(n): find elements whose sibling index is greater than n; e.g. div p:gt(2)
el:eq(n): find elements whose sibling index is equal to n; e.g. form input:eq(1)
el:has(seletor): find elements that contain elements matching the selector; e.g. div:has(p)
el:contains(text): find elements that contain the given text. The search is case-insensitive; e.g. p:contains(jsoup)
el:matches(regex): find elements whose text matches the specified regular expression; e.g. div:matches((?i)login).
Note that all of the above indexed pseudo-selectors are 0-based, that is, the first element is at index 0, the second at 1, etc.

资源来自:http://www.oschina.net/bbs/thread/10224
分享到:
评论

相关推荐

    jsoup 选择器(一)常规选择器

    **jsoup选择器(一)常规选择器** jsoup是一个Java库,专门设计用于处理HTML文档,它提供了方便且强大的API来抓取和操作结构化数据。本篇将重点介绍jsoup中的基本选择器,帮助你高效地在HTML文档中找到所需的信息。...

    JSoup CSS选择器用法大全

    下面将详细介绍 JSoup 支持的各种 CSS 选择器及其用法。 1. **基本选择器**: - `*`: 通配符选择器,匹配任何元素。 - `tag`: 按照元素名称选择,如 `div` 选择所有的 `&lt;div&gt;` 元素。 - `#id`: 通过元素的 ID ...

    jsoup 网页信息 抓取 选择器

    在新浪高尔夫频道的新闻抓取中,我们可以先通过jsoup连接到目标URL,然后使用CSS选择器找到新闻列表的元素。例如,如果新闻标题在class为"news-item-title"的元素中,我们可以这样获取: ```java Document doc = ...

    Jsoup select选择器的简单使用案例

    Jsoup select选择器基本的使用方法,一般套路都是打开浏览器开发者工具,找到需要爬取的网页信息所在的网页标签,标记。然后用选择器把子标签所在的“路径”用语句拼接起来。。select(".slst.mtw&gt;ul&gt;li&gt;h3&gt;a");例如要...

    Jsoup语法详解

    Jsoup的选择器语法类似于CSS选择器,包括: * 元素选择器:使用标签名,例如"a",可以选择所有的超链接元素。 * 属性选择器:使用"[attribute]",例如"a[href]",可以选择所有具有href属性的超链接元素。 * 后缀...

    JsoupAPI(jsoup帮助文档)

    Jsoup支持CSS选择器,这使得选取HTML元素变得极其方便。例如: - `select("tag")` 选取所有指定标签的元素。 - `select(".class")` 选取所有具有指定类名的元素。 - `select("#id")` 选取具有指定ID的元素。 - `...

    Jsoup 1.5.2 和jsoup 1.6

    2. **CSS选择器**:Jsoup支持CSS选择器,这意味着你可以通过类似于jQuery的语法选取页面上的特定元素。 3. **数据提取**:通过元素选择器,可以方便地获取元素的文本、属性值等信息。 4. **数据修改**:除了读取,...

    Jsoup

    3. CSS选择器:Jsoup支持CSS选择器,使得定位网页元素变得简单易行。例如,`doc.select("div.container")` 将选取所有class为container的div元素。 4. 清理和规范化:Jsoup提供了一种安全的方式来清理HTML,移除...

    jsoup中文帮助文档

    Jsoup 支持 CSS 选择器语法,这使得定位特定元素变得非常容易。例如,`doc.select("h1.title")` 将选取所有的 class 为 title 的 h1 元素。 8.从元素集合抽取属性、文本和 HTML 内容 `attr(String attributeKey)` ...

    jsoup-1.15.3.jar

    jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jarjsoup-...

    jsoup操作手册 API

    jsoup的选择器语法与CSS选择器相似,支持ID、类名、标签名选择,以及更复杂的组合选择。例如: - `$("#content")`:选择id为`content`的元素。 - `$(".link")`:选择所有class为`link`的元素。 - `"div.content a"`...

    jsoup基于java爬虫项目

    2)使用DOM或CSS选择器来查找、取出数据 3)可操作HTML元素、属性、文本 注意:jsoup是基于MIT协议发布的,可放心使用于商业项目。 Jsoup的主要功能 1)从一个URL,文件或字符串中解析HTML 2)使用DOM或CSS选择...

    SpringBoot+jsoup爬虫

    - 解析HTML文档,使用Jsoup的CSS选择器定位需要的数据,如商品名称、价格、评价等。 - 将提取的数据保存到本地,可以是文本文件、数据库或者其他合适的形式。 5. **异常处理**:在爬取过程中,可能会遇到网络问题...

    jsoup-1.7.1 chm

    jsoup还引入了对CSS选择器的支持,这使得从HTML文档中选取元素变得非常直观,尤其是对于熟悉Web开发的开发者来说。例如,`doc.select("div.classname")`将返回所有class为"classname"的`&lt;div&gt;`元素。这种选择器的...

    jsoup-jar包

    你可以通过CSS选择器选择元素,就像在jQuery中那样: ```java Elements links = doc.select("a[href]"); for (Element link : links) { System.out.println(link.attr("href")); } ``` **3. 数据提取** JSoup...

    jsoup-1.6.3.rar HTML解析器

    jsoup支持CSS选择器,这使得从HTML中选择特定元素变得轻而易举。使用类似jQuery的语法,如`select("div.container p")`,可以轻松地选取页面上所有class为"container"的div元素内的段落(p)。这种特性极大地提高了...

    基于Java和Jsoup技术的多表数据爬取与存储设计源码

    该项目为基于Java语言的爬虫系统,采用Jsoup技术进行多表数据爬取与存储设计,共计537个文件。其中,包含391个Java类文件,67个SVN基础文件,57个Java源文件,6个SQL脚本文件,3个属性文件和2个配置文件。系统通过...

    jsoup的jar包

    5. **选择器API**:jsoup支持CSS3选择器,这使得定位网页上的特定元素变得非常容易,例如,我们可以使用`select("div#myId p")`来选取id为"myId"的div内的所有段落元素。 6. **输入输出流操作**:jsoup可以方便地从...

    jsoup常用包下载

    jsoup支持CSS选择器,这使得定位HTML元素变得极其简单。CSS选择器语法广泛应用于网页设计中,现在也可以在jsoup中用于查找和操作HTML元素。例如,你可以使用".class"、"#id"、"[attribute=value]"等语法来选取元素。...

    jsoup1.11.2

    2. **选择器API**:jsoup提供了类似jQuery的选择器API,允许开发者通过CSS选择器来选取页面元素,如`select("div.classname")`,这极大地方便了网页内容的检索。 3. **数据提取**:提取网页上的文本、链接、图片等...

Global site tag (gtag.js) - Google Analytics