zoukankan      html  css  js  c++  java
  • jsoup解析HTML及简单实例

    jsoup 中文参考文献    http://www.open-open.com/jsoup/

           本文将利用jsoup,简单实现网络抓取的功能,并给出一个小实例,该实例效果为:获取作者本人在博客园写的所有文章的标题。

           一:建立一个java工程,导入jsoup包,junit(导入junit包,hamcrest包)。若不知junit为何要导入两个包,请点击链接‘junit的使用

           二:建立一个demo.java类,实现代码如下:        

    import java.io.IOException;
    
    import org.jsoup.Connection;
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.nodes.Element;
    import org.jsoup.select.Elements;
    import org.junit.Test;
    
    public class demo {
        @Test
        public void reasUrl() throws IOException {
            String url = "http://www.cnblogs.com/sky-";
            Connection conn = Jsoup.connect(url); // 建立与url中页面的连接
            Document doc = conn.get(); // 解析页面
            Elements links = doc.select("a[href]"); // 获取页面中所有的超链接
            int i = 1;
            for (Element link : links) {
                if ("阅读全文".equals(link.text())) { // 获取页面中每篇文章‘阅读全文’的链接,进入文章
                    Document doc2 = Jsoup.connect(link.attr("abs:href")).get(); // 解析每篇文章的页面
                    System.out.println("第" + i + "篇:" + doc2.title()); // 把该文章的标题打印出来
                    i++;
                }
            }
        }
    }

           三:运行项目即可得到作者本人在博客园写的所有文章的标题

    第1篇:jsoup解析HTML及简单实例 - sky_烁 - 博客园
    第2篇:面向接口编程及适配器模式 - sky_烁 - 博客园
    第3篇:数据库 SQL语句小结 - sky_烁 - 博客园
  • 相关阅读:
    LeetCode "Super Ugly Number" !
    LeetCode "Count of Smaller Number After Self"
    LeetCode "Binary Tree Vertical Order"
    LeetCode "Sparse Matrix Multiplication"
    LeetCode "Minimum Height Tree" !!
    HackerRank "The Indian Job"
    HackerRank "Poisonous Plants"
    HackerRank "Kundu and Tree" !!
    LeetCode "Best Time to Buy and Sell Stock with Cooldown" !
    HackerRank "AND xor OR"
  • 原文地址:https://www.cnblogs.com/sky-/p/4623501.html
Copyright © 2011-2022 走看看