`
zhangdaiscott
  • 浏览: 449270 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
8fb25857-16b4-3681-ab5e-e319f45c42a8
Jeecg快速开发平台
浏览量:0
文章分类
社区版块
存档分类

JSOUP初探

 
阅读更多

JSOUP是偶然看到的一个处理HTML的JAVA 类库,其官方网址是:http://jsoup.org/

1、编写相关的试用程序(只需要在工程中引用jsoup-1.3.3.jar即可):

  1. importjava.io.File;
  2. importjava.io.IOException;
  3. importorg.jsoup.Jsoup;
  4. importorg.jsoup.nodes.Document;
  5. importorg.jsoup.select.Elements;
  6. publicclassTest{
  7. publicstaticvoidmain(String[]args){
  8. Testt=newTest();
  9. t.parseFile();
  10. }
  11. publicvoidparseString(){
  12. Stringhtml="<html><head><title>blog</title></head><bodyonload='test()'><p>ParsedHTMLintoadoc.</p></body></html>";
  13. Documentdoc=Jsoup.parse(html);
  14. System.out.println(doc);
  15. Elementses=doc.body().getAllElements();
  16. System.out.println(es.attr("onload"));
  17. System.out.println(es.select("p"));
  18. }
  19. publicvoidparseUrl(){
  20. try{
  21. Documentdoc=Jsoup.connect("http://www.baidu.com/").get();
  22. Elementshrefs=doc.select("a[href]");
  23. System.out.println(hrefs);
  24. System.out.println("------------------");
  25. System.out.println(hrefs.select("[href^=http]"));
  26. }catch(IOExceptione){
  27. e.printStackTrace();
  28. }
  29. }
  30. publicvoidparseFile(){
  31. try{
  32. Fileinput=newFile("input.html");
  33. Documentdoc=Jsoup.parse(input,"UTF-8");
  34. //提取出所有的编号
  35. Elementscodes=doc.body().select("td[title^=IA]>a[href^=javascript:view]");
  36. System.out.println(codes);
  37. System.out.println("------------------");
  38. System.out.println(codes.html());
  39. }catch(IOExceptione){
  40. e.printStackTrace();
  41. }
  42. }
  43. }


2、parseString的输出:

  1. <html>
  2. <head>
  3. <title>blog</title>
  4. </head>
  5. <bodyonload="test()">
  6. <p>ParsedHTMLintoadoc.</p>
  7. </body>
  8. </html>
  9. test()
  10. <p>ParsedHTMLintoadoc.</p>


3、parseUrl的输出:

  1. <ahref="/gaoji/preferences.html">设置</a>
  2. <ahref="http://passport.baidu.com/?login&tpl=mn">登录</a>
  3. <ahref="http://news.baidu.com">新闻</a>
  4. <ahref="http://tieba.baidu.com">贴吧</a>
  5. <ahref="http://zhidao.baidu.com">知道</a>
  6. <ahref="http://mp3.baidu.com">MP3</a>
  7. <ahref="http://image.baidu.com">图片</a>
  8. <ahref="http://video.baidu.com">视频</a>
  9. <ahref="http://map.baidu.com">地图</a>
  10. <ahref="#"name="ime_hw">手写</a>
  11. <ahref="#"name="ime_py">拼音</a>
  12. <ahref="#"name="ime_cl">关闭</a>
  13. <ahref="http://hi.baidu.com">空间</a>
  14. <ahref="http://baike.baidu.com">百科</a>
  15. <ahref="http://www.hao123.com">hao123</a>
  16. <ahref="/more/">更多>></a>
  17. <aid="st"onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.baidu.com')"href="http://utility.baidu.com/traf/click.php?id=215&url=http://www.baidu.com">把百度设为主页</a>
  18. <ahref="http://e.baidu.com/?refer=888">加入百度推广</a>
  19. <ahref="http://top.baidu.com">搜索风云榜</a>
  20. <ahref="http://home.baidu.com">关于百度</a>
  21. <ahref="http://ir.baidu.com">AboutBaidu</a>
  22. <ahref="/duty/">使用百度前必读</a>
  23. <ahref="http://www.miibeian.gov.cn"target="_blank">京ICP证030173号</a>
  24. ------------------
  25. <ahref="http://passport.baidu.com/?login&tpl=mn">登录</a>
  26. <ahref="http://news.baidu.com">新闻</a>
  27. <ahref="http://tieba.baidu.com">贴吧</a>
  28. <ahref="http://zhidao.baidu.com">知道</a>
  29. <ahref="http://mp3.baidu.com">MP3</a>
  30. <ahref="http://image.baidu.com">图片</a>
  31. <ahref="http://video.baidu.com">视频</a>
  32. <ahref="http://map.baidu.com">地图</a>
  33. <ahref="http://hi.baidu.com">空间</a>
  34. <ahref="http://baike.baidu.com">百科</a>
  35. <ahref="http://www.hao123.com">hao123</a>
  36. <aid="st"onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.baidu.com')"href="http://utility.baidu.com/traf/click.php?id=215&url=http://www.baidu.com">把百度设为主页</a>
  37. <ahref="http://e.baidu.com/?refer=888">加入百度推广</a>
  38. <ahref="http://top.baidu.com">搜索风云榜</a>
  39. <ahref="http://home.baidu.com">关于百度</a>
  40. <ahref="http://ir.baidu.com">AboutBaidu</a>
  41. <ahref="http://www.miibeian.gov.cn"target="_blank">京ICP证030173号</a>


3、parseFile的输出:

  1. <ahref="javascript:view('67530','67530','0');">IA100908-002</a>
  2. <ahref="javascript:view('67529','67529','0');">IA100908-001</a>
  3. <ahref="javascript:view('67544','67544','0');">IA100908-016</a>
  4. <ahref="javascript:view('67364','67364','0');">IA100903-008</a>
  5. <ahref="javascript:view('67363','67363','0');">IA100903-007</a>
  6. <ahref="javascript:view('66104','66104','0');">IA100710-013</a>
  7. <ahref="javascript:view('57916','57916','0');">IA100515-013</a>
  8. <ahref="javascript:view('56962','56962','0');">IA100430-022</a>
  9. <ahref="javascript:view('66958','66958','0');">IA100830-001</a>
  10. <ahref="javascript:view('66319','66319','0');">IA100713-003</a>
  11. <ahref="javascript:view('66317','66317','0');">IA100713-001</a>
  12. <ahref="javascript:view('66321','66321','0');">IA100713-005</a>
  13. <ahref="javascript:view('66967','66967','0');">IA100830-010</a>
  14. <ahref="javascript:view('66999','66999','0');">IA100831-001</a>
  15. <ahref="javascript:view('67377','67377','0');">IA100904-004</a>
  16. <ahref="javascript:view('67378','67378','0');">IA100904-005</a>
  17. <ahref="javascript:view('3271','3271','0');">IA080115-031</a>
  18. ------------------
  19. IA100908-002
  20. IA100908-001
  21. IA100908-016
  22. IA100903-008
  23. IA100903-007
  24. IA100710-013
  25. IA100515-013
  26. IA100430-022
  27. IA100830-001
  28. IA100713-003
  29. IA100713-001
  30. IA100713-005
  31. IA100830-010
  32. IA100831-001
  33. IA100904-004
  34. IA100904-005
  35. IA080115-031


补充下,input.html的基本结果如图:

JSOUP是偶然看到的一个处理HTML的JAVA 类库,其官方网址是:http://jsoup.org/

1、编写相关的试用程序(只需要在工程中引用jsoup-1.3.3.jar即可):

  1. importjava.io.File;
  2. importjava.io.IOException;
  3. importorg.jsoup.Jsoup;
  4. importorg.jsoup.nodes.Document;
  5. importorg.jsoup.select.Elements;
  6. publicclassTest{
  7. publicstaticvoidmain(String[]args){
  8. Testt=newTest();
  9. t.parseFile();
  10. }
  11. publicvoidparseString(){
  12. Stringhtml="<html><head><title>blog</title></head><bodyonload='test()'><p>ParsedHTMLintoadoc.</p></body></html>";
  13. Documentdoc=Jsoup.parse(html);
  14. System.out.println(doc);
  15. Elementses=doc.body().getAllElements();
  16. System.out.println(es.attr("onload"));
  17. System.out.println(es.select("p"));
  18. }
  19. publicvoidparseUrl(){
  20. try{
  21. Documentdoc=Jsoup.connect("http://www.baidu.com/").get();
  22. Elementshrefs=doc.select("a[href]");
  23. System.out.println(hrefs);
  24. System.out.println("------------------");
  25. System.out.println(hrefs.select("[href^=http]"));
  26. }catch(IOExceptione){
  27. e.printStackTrace();
  28. }
  29. }
  30. publicvoidparseFile(){
  31. try{
  32. Fileinput=newFile("input.html");
  33. Documentdoc=Jsoup.parse(input,"UTF-8");
  34. //提取出所有的编号
  35. Elementscodes=doc.body().select("td[title^=IA]>a[href^=javascript:view]");
  36. System.out.println(codes);
  37. System.out.println("------------------");
  38. System.out.println(codes.html());
  39. }catch(IOExceptione){
  40. e.printStackTrace();
  41. }
  42. }
  43. }


2、parseString的输出:

  1. <html>
  2. <head>
  3. <title>blog</title>
  4. </head>
  5. <bodyonload="test()">
  6. <p>ParsedHTMLintoadoc.</p>
  7. </body>
  8. </html>
  9. test()
  10. <p>ParsedHTMLintoadoc.</p>


3、parseUrl的输出:

  1. <ahref="/gaoji/preferences.html">设置</a>
  2. <ahref="http://passport.baidu.com/?login&tpl=mn">登录</a>
  3. <ahref="http://news.baidu.com">新闻</a>
  4. <ahref="http://tieba.baidu.com">贴吧</a>
  5. <ahref="http://zhidao.baidu.com">知道</a>
  6. <ahref="http://mp3.baidu.com">MP3</a>
  7. <ahref="http://image.baidu.com">图片</a>
  8. <ahref="http://video.baidu.com">视频</a>
  9. <ahref="http://map.baidu.com">地图</a>
  10. <ahref="#"name="ime_hw">手写</a>
  11. <ahref="#"name="ime_py">拼音</a>
  12. <ahref="#"name="ime_cl">关闭</a>
  13. <ahref="http://hi.baidu.com">空间</a>
  14. <ahref="http://baike.baidu.com">百科</a>
  15. <ahref="http://www.hao123.com">hao123</a>
  16. <ahref="/more/">更多>></a>
  17. <aid="st"onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.baidu.com')"href="http://utility.baidu.com/traf/click.php?id=215&url=http://www.baidu.com">把百度设为主页</a>
  18. <ahref="http://e.baidu.com/?refer=888">加入百度推广</a>
  19. <ahref="http://top.baidu.com">搜索风云榜</a>
  20. <ahref="http://home.baidu.com">关于百度</a>
  21. <ahref="http://ir.baidu.com">AboutBaidu</a>
  22. <ahref="/duty/">使用百度前必读</a>
  23. <ahref="http://www.miibeian.gov.cn"target="_blank">京ICP证030173号</a>
  24. ------------------
  25. <ahref="http://passport.baidu.com/?login&tpl=mn">登录</a>
  26. <ahref="http://news.baidu.com">新闻</a>
  27. <ahref="http://tieba.baidu.com">贴吧</a>
  28. <ahref="http://zhidao.baidu.com">知道</a>
  29. <ahref="http://mp3.baidu.com">MP3</a>
  30. <ahref="http://image.baidu.com">图片</a>
  31. <ahref="http://video.baidu.com">视频</a>
  32. <ahref="http://map.baidu.com">地图</a>
  33. <ahref="http://hi.baidu.com">空间</a>
  34. <ahref="http://baike.baidu.com">百科</a>
  35. <ahref="http://www.hao123.com">hao123</a>
  36. <aid="st"onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.baidu.com')"href="http://utility.baidu.com/traf/click.php?id=215&url=http://www.baidu.com">把百度设为主页</a>
  37. <ahref="http://e.baidu.com/?refer=888">加入百度推广</a>
  38. <ahref="http://top.baidu.com">搜索风云榜</a>
  39. <ahref="http://home.baidu.com">关于百度</a>
  40. <ahref="http://ir.baidu.com">AboutBaidu</a>
  41. <ahref="http://www.miibeian.gov.cn"target="_blank">京ICP证030173号</a>


3、parseFile的输出:

  1. <ahref="javascript:view('67530','67530','0');">IA100908-002</a>
  2. <ahref="javascript:view('67529','67529','0');">IA100908-001</a>
  3. <ahref="javascript:view('67544','67544','0');">IA100908-016</a>
  4. <ahref="javascript:view('67364','67364','0');">IA100903-008</a>
  5. <ahref="javascript:view('67363','67363','0');">IA100903-007</a>
  6. <ahref="javascript:view('66104','66104','0');">IA100710-013</a>
  7. <ahref="javascript:view('57916','57916','0');">IA100515-013</a>
  8. <ahref="javascript:view('56962','56962','0');">IA100430-022</a>
  9. <ahref="javascript:view('66958','66958','0');">IA100830-001</a>
  10. <ahref="javascript:view('66319','66319','0');">IA100713-003</a>
  11. <ahref="javascript:view('66317','66317','0');">IA100713-001</a>
  12. <ahref="javascript:view('66321','66321','0');">IA100713-005</a>
  13. <ahref="javascript:view('66967','66967','0');">IA100830-010</a>
  14. <ahref="javascript:view('66999','66999','0');">IA100831-001</a>
  15. <ahref="javascript:view('67377','67377','0');">IA100904-004</a>
  16. <ahref="javascript:view('67378','67378','0');">IA100904-005</a>
  17. <ahref="javascript:view('3271','3271','0');">IA080115-031</a>
  18. ------------------
  19. IA100908-002
  20. IA100908-001
  21. IA100908-016
  22. IA100903-008
  23. IA100903-007
  24. IA100710-013
  25. IA100515-013
  26. IA100430-022
  27. IA100830-001
  28. IA100713-003
  29. IA100713-001
  30. IA100713-005
  31. IA100830-010
  32. IA100831-001
  33. IA100904-004
  34. IA100904-005
  35. IA080115-031


补充下,input.html的基本结果如图:

分享到:
评论

相关推荐

    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-...

    JsoupAPI(jsoup帮助文档)

    **Jsoup API 深入解析** Jsoup 是一个用于处理和解析HTML的Java库,它提供了强大的功能,使得在Java程序中操作HTML文档变得简单而直观。在Jsoup 1.10.2版本中,这个API进一步优化了对HTML的处理能力,提供了丰富的...

    jsoup中文帮助文档

    Jsoup 提供 DOM 风格的方法(如 `getElementById()`, `getElementsByTag()`, `select(String cssQuery)` 等)来遍历 Document 对象并抽取所需数据。例如,你可以通过 CSS 选择器选取元素,然后提取它们的属性、文本...

    jsoup-jar包

    **JSoup:Java的网页抓取与解析库** JSoup是一个用Java编写的开源库,专为处理HTML文档而设计。它提供了丰富的API,使得开发者能够轻松地抓取、解析和操作网页内容。JSoup的核心功能包括从网络或本地文件系统获取...

    jsoup-1.14.3-API文档-中文版.zip

    赠送jar包:jsoup-1.14.3.jar; 赠送原API文档:jsoup-1.14.3-javadoc.jar; 赠送源代码:jsoup-1.14.3-sources.jar; 赠送Maven依赖信息文件:jsoup-1.14.3.pom; 包含翻译后的API文档:jsoup-1.14.3-javadoc-API...

    Jsoup 1.5.2 和jsoup 1.6

    Jsoup在Web抓取、数据分析和网页爬虫项目中广泛应用。本文将深入探讨Jsoup 1.5.2和1.6这两个版本的主要特性、变化以及如何在项目中使用它们。 首先,让我们了解Jsoup的基本功能。Jsoup的核心功能包括: 1. **HTML...

    jsoup-1.12.1.rar

    **jsoup库详解** jsoup是一个Java库,用于处理实际世界中的HTML。它提供了一种易于使用的API,用于提取和操作数据,具有浏览器一样的解析和筛选能力。在Java爬虫领域,jsoup扮演着至关重要的角色,使得开发者能够...

    jsoup-jsoup-1.6.1.zip

    在jsoup 1.6.1版本中,我们可以看到这个库已经相当成熟,提供了丰富的功能和优化。以下是一些关于jsoup的关键知识点: 1. **HTML解析**:jsoup的核心能力在于它强大的HTML解析机制。它使用了名为"Jsoup Parser"的...

    Jsoup库文件;Jsoup解析Java包

    1. `jsoup.jar`:Jsoup的主要库文件,包含了所有的类和方法,导入此文件即可在项目中使用Jsoup。 2. `README.md`或`README.txt`:文件说明,介绍如何使用Jsoup以及可能的注意事项。 3. `LICENSE`:Jsoup的许可协议,...

    Jsoup

    Jsoup的核心功能包括: 1. HTML解析:Jsoup能够解析各种各样的HTML源码,无论是干净的结构化HTML还是充满乱七八糟标签的真实网页。它能处理HTML5和HTML4,甚至一些常见的错误格式也能被正确解析。 2. DOM操作:...

    jsoup-annotations是Jsoup注解的POJO

    **JSoup库与JSoup-Annotations** JSoup是一款强大的Java库,专为处理HTML文档而设计,它提供了方便的API,使得抓取和解析HTML变得简单易行。JSoup能够模拟浏览器的行为,理解和构建DOM树,进而允许开发者通过CSS...

    org.jsoup.jar

    《深入理解Java库:Jsoup解析与应用》 在Java编程世界中,Jsoup是一个非常重要的库,尤其在处理HTML文档和数据抓取时。标题中的"org.jsoup.jar"是Jsoup库的核心组件,它是Jsoup项目的二进制发布形式,包含了所有...

    jsoup1.10.3包和jsoupApi帮助文档

    **jsoup1.10.3包和jsoupApi帮助文档** Jsoup是一个非常流行的Java库,用于处理和解析HTML。在IT行业中,特别是在Web爬虫和数据抓取领域,jsoup扮演着至关重要的角色。jsoup1.10.3是这个库的一个稳定版本,提供了...

    使用jsoup获取网页内容并修改

    **使用Jsoup获取网页内容并修改** Jsoup是一款强大的Java库,它允许开发者方便地解析、操作和提取HTML内容。在Android开发中,Jsoup常用于网页数据抓取和页面内容的处理。以下将详细解释如何使用Jsoup来实现这个...

    jsoup-1.11.3.jar

    `jsoup-1.11.3-javadoc.jar`包含了该版本的API文档,方便开发者查阅和理解每个方法的功能和用法,而`jsoup-1.11.3-sources.jar`则包含源代码,对于学习和调试Jsoup的内部实现非常有帮助。 Jsoup 的核心功能主要包括...

    jsoup的jar包

    **jsoup库详解** jsoup是一个Java库,它专注于处理HTML和XML文档,提供了一种简单、优雅的方式来抓取和操作网页数据。这个库的名字来源于"JavaScript Object Soup"的缩写,暗示了它能将HTML文档转化为易于操作的...

    org.jsoup 架包

    org.jsoup 架包

    Jsoup.jar 包及说明文档

    **Jsoup.jar 包及说明文档** Jsoup是一款在Java平台上广泛使用的HTML解析库,它的主要功能是解析HTML文档,并提供了强大的数据提取和操作能力。Jsoup的核心特性在于其能够模拟浏览器的行为,对HTML进行理解和解析,...

    jsoup基于java爬虫项目

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

Global site tag (gtag.js) - Google Analytics