利用Jsoup解析HTML

简介:

  最近又要做html内容抽取,这次打算尝试一下除了用正则表达式以外的其他方式。自然第一个想到的就是HtmlParser,结果找到了以后发现最近的更新还是在06年,汗!这个时候很意外的发现了Jsoup,试用了一下感觉相当清爽,推荐一下。

    如果你很有兴趣,直接去官方网站看下说明文档,地址是http://jsoup.org/cookbook/。我这里给个小例子,目的是从下文中抽取出标题,大家可以看一下他的类jQuery语法。

  1. <div class="artHead">  
  2.   <div>  
  3.   
  4.     <span class="artType01" style="margin-right: 5px;"><a href="javascript:void(0)">原创</a></span>  
  5.   
  6.   <h3 class="artTitle"><a href="/2431658/483361">JAVA程序内存溢出问题的分析</a>  
  7.   
  8.   <a href="http://blog.51cto.com/artcommend" target="_blank"><img src="http://blog.51cto.com/image/skin/34/indextj.gif" width="15" height="15" /></a>  
  9.   
  10.   
  11.   </h3>  
  12.   </div>  

 

    这个内容是从我博客首页上摘取的,所以直接打开这个页面进行抽取,测试代码如下:

  1. package jsoup; 
  2.  
  3. import java.io.IOException; 
  4. import org.jsoup.Jsoup; 
  5. import org.jsoup.nodes.Document; 
  6. import org.jsoup.select.Elements; 
  7.  
  8. public class ParseTest { 
  9.  
  10.     public static void main(String[] args) { 
  11.         try { 
  12.             Document doc = Jsoup.connect("http://passover.blog.51cto.com/").get(); 
  13.             System.out.println(doc.title()); 
  14.             Elements eles = doc.select("div.artHead"); 
  15.             System.out.println(eles.first().select("h3[class=artTitle]")); 
  16.         } catch (IOException e) { 
  17.             e.printStackTrace(); 
  18.         } 
  19.     } 
  20.  

 

    是不是特别简单?!如果网页结构化比较好的话,这么抽取真的非常方便,我试了下,效率也很不错。推荐给有相关需求的朋友,网页解析又多了一个选择,:-)



本文转自passover 51CTO博客,原文链接:http://blog.51cto.com/passover/484673,如需转载请自行联系原作者

相关文章
|
1月前
|
JavaScript 前端开发 数据可视化
html解析过程
html解析过程【2月更文挑战第26天】
22 6
|
1月前
|
XML 前端开发 数据格式
请描述如何使用`BeautifulSoup`或其他类似的库来解析 HTML 或 XML 数据。
【2月更文挑战第22天】【2月更文挑战第67篇】请描述如何使用`BeautifulSoup`或其他类似的库来解析 HTML 或 XML 数据。
|
3月前
|
小程序 JavaScript 数据库
小程序解析富文本html内容
小程序解析富文本html内容
|
12天前
|
前端开发 JavaScript
HTML深度解析:更改文本颜色
【4月更文挑战第1天】
29 0
HTML深度解析:更改文本颜色
|
2月前
|
Java Maven
java获取文件编码,jsoup获取html纯文本
java获取文件编码,jsoup获取html纯文本
12 0
|
4月前
|
前端开发 BI 开发者
Javaweb之HTML,CSS的详细解析
新浪新闻-正文实现 2.3.2.1 正文排版 2.3.2.1.1 分析 整个正文部分的排版,主要分为这么四个部分: 1). 视频 (当前这种新闻页面,可能也会存在音频)
49 0

推荐镜像

更多