java爬虫 之 搜狐新闻爬虫(三)

有了上两篇的文章,这篇简单的将两篇文章结合起来,得到一个可以抓取,搜狐新闻首页的所有新闻。

package com.sohu;
import java.io.IOException;
import java.util.*;

import org.jsoup.*;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class ClawerMain {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        try {
            Document doc = Jsoup.connect("http://news.sohu.com/").get();
            Elements links = doc.select("a[href]");
            for(Element link : links){
                String StrUrl = link.attr("abs:href");
                if(StrUrl.startsWith("http://news.sohu.com/2016"))//抓2016年的新闻
                {
                    System.out.println(StrUrl);
                    try {
                        Document TempDoc;

                        TempDoc = Jsoup.connect(StrUrl).get();

                        Elements h = TempDoc.select("h1[itemprop]");//标题

                        System.out.println(h.text());

                        Elements time = TempDoc.select("div.time");//时间

                        System.out.println(time.text());

                        Elements source = TempDoc.select("div[class=source]");//来源

                        System.out.println(source.text());

                        Elements body = TempDoc.select("div[itemprop=articleBody]");//内容

                        System.out.println(body.text());

                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }


            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}

得到的结果如下:
java爬虫 之 搜狐新闻爬虫(三)_第1张图片

你可能感兴趣的:(java,爬虫,新闻,搜狐)