Java解析html之JSOUP(译)-jsoup Cookbook(1)

解析和遍历文档

解析HTML文档:

String html = "<html><head><title>First parse</title></head>"

+ "<body><p>Parsed HTML into a doc.</p></body></html>";

Document doc = Jsoup.parse(html);

解析器尽可能的解析给出的HTML文件,无论HTML文件是否格式良好。它可以很好的处理:

(1)未结束的标签(例如:<p>Lorem<p>Ipsum  解析为  <p>Lorem</p> <p>Ipsum</p>)

(2)未指明的标签(例如:将<td>Table data</td> 包装成 <table><tr><td>Table data </td></tr></tabel>)

(3)可靠地创建文档结构(包含一个head和一个body的html,在head中只有适当的元素)

文档的对象模型

文档包含Elements和TextNodes(以及其他几个misc节点:见包树的节点)。

继承链是:文档扩展元素扩展节点。TextNode扩展节点。

一个元素包含一系列的孩子节点,有一个父元素。他们也提供过滤的子元素列表。

原文:http://jsoup.org/cookbook/introduction/parsing-a-document

时间: 2024-10-18 08:33:59

Java解析html之JSOUP(译)-jsoup Cookbook(1)的相关文章

JSoup——用Java解析html网页内容

当需要从网页上获取信息时,需要解析html页面.筛选指定标签,并获取其值是必不可少的操作,解析html页面这方面的利器,Python有BeautifulSoup,Java一直没有好的工具,之前的HtmlParser非常难用,虽能解析,但不能过滤,只能从头到尾地遍历各个节点,非常不便,而Jsoup是甚至比BeautifulSoup更加方便的工具,Jsoup支持类似于CSS(或jquery)的选择器语法,来实现非常强大和灵活的查找功能. 下面说说其基本用法: 1)Jsoup.parse(html)/

Atitit.html解析器的选型&amp;#160;jsoup&amp;#160;nsoup&amp;#160;,java&amp;#160;c#&amp;#160;.net&amp;#160;版本号

Atitit.html解析器的选型 jsoup nsoup ,java c# .net 版本号 1. 框架选型的要求 1 1.1. 文档多 1 1.2. 跨平台 1 2. html解析器特性: 1 2.1. jQuery 风格的 CSS 选择器 1 2.2. 操作 HTML 文档. 1 3. 浏览器解析html的原理以及防止乱码 2 4. 把meta标签放在head区域的最前面 4 5. HTML解析器 4 6. 參考 8 6.1.1. atitit. java?jsoup?html table

java解析页面包

http://www.open-open.com/jsoup/parsing-a-document.htm jsoup: Java HTML Parser jsoup is a Java library for working with real-world HTML. It provides a very convenient API for extracting and manipulating data, using the best of DOM, CSS, and jquery-lik

JAVA解析XML之SAX方式

JAVA解析XML之SAX方式 SAX解析xml步骤 通过SAXParseFactory的静态newInstance()方法获取SAXParserFactory实例factory 通过SAXParserFactory实例的newSAXParser()方法返回SAXParser实例parser 创建一个类继承DefaultHandle,重写方法进行业务处理并创建这个类的实例handle 重写DefaultHandle类的方法 startElement方法用来遍历xml文件的开始标签; endEle

Java解析JSON对象

今天学习一下Java 解析 JSON 准备工作 参考文档 1) www.json.org 2 ) 参考公司其他人的代码(这个就不说了) 依赖jar包 1) org.json.jar 提供以下我的网盘链接 http://pan.baidu.com/s/1jG2zSwe 主要的类 JSON主要有两种结构 1)name/value 的集合 2)value 的集合,在大多数语言中的list,array等,这里的 value 个人觉得就是一个JSON,也就是说是JSON的集合 JAVA处理JSON的类 1

HexDump.java解析

从包名我们可以看出该类并没有对应用开发者开放,也就是说在google开放的Android API文档中并没有该类的相关介绍:好在Android系统源码是开源的,因此我在解决framework中问题的时候发现了这个工具类,由于工作原因一直没有回头在细细的领会这个工具类的精髓,因此今天花点时间对这个类进行全面的分析一遍,以备不时之需. 首先分析之前,我们需要了解该类使用来进行16禁止转换的,我之前也写过相关的工具类,但是去了解Google的精神还是有必要的. package com.android.

java解析xml的三种方法

java解析XML的三种方法 1.SAX事件解析 package com.wzh.sax; import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers.DefaultHandler; // public class Saxhandler extends DefaultHandler { @Override public void startDocument() throws

java解析xml汇总

转载于http://www.cnblogs.com/jiugehuanying/archive/2012/01/12/2320058.html [目录] 一.[基础知识——扫盲] 二.[DOM.SAX.JDOM.DOM4j简单使用介绍] 三.[性能测试] 四.[对比] 五.[小插曲XPath] 六.[补充] 关键字:Java解析xml.解析xml四种方法.DOM.SAX.JDOM.DOM4j.XPath [引言] 目前在Java中用于解析XML的技术很多,主流的有DOM.SAX.JDOM.DOM

Java 解析汉字拼音

需要java包 :pinyin4j-2.5.0.jar pinyin4j的使用很方便,一般转换只需要使用PinyinHelper类的静态工具方法即可: String[] pinyin = PinyinHelper.toHanyuPinyinStringArray('赵'); //该类还有其他的拼音转换形式,但是基本上用不到,就不介绍了 返回的数组即是该字符的拼音,如上例就是pinyin[0]=zhao,后面的数字代表声调,声调为5表示轻读,无声调.之所谓返回数组,是因为被判定的汉字有可能有多个读