zoukankan      html  css  js  c++  java
  • java 利用jsoup 爬取知乎首页问题

    今天学了下java的爬虫,首先要下载jsoup的包,然后导入,导入过程:首先右击工程:Build Path ->configure Build Path,再点击Add External JARS,进行导包。

    学习参考文档:https://jsoup.org/

    但是有一点小问题:就是利用java爬虫爬去了知乎的问题,但是却只爬到了前三条,大体思路应该还是正确的。不知怎么解决,如果各位大佬有思路,望指教:

    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.nodes.Element;
    import org.jsoup.select.Elements;
    import java.io.IOException;
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.nodes.Element;
    import org.jsoup.select.Elements;
    
    public class worm0{
        public static void main(String[] args) throws IOException {
        
            Document document=Jsoup.connect("https://www.zhihu.com/").get();
            Elements main=document.select(".ContentLayout-mainColumn");
            
            Elements url=main.select("h2[class=ContentItem-title]").select("a");
            System.out.println("url"+url);
            for(Element question:url){
                //输出href后的值,即主页上每个关注问题的链接
                String URL=question.attr("abs:href");
                //下载问题链接指向的页面
                Document document2=Jsoup.connect(URL).get();
                //问题
                Elements title=document2.select(".QuestionHeader-title");
                //问题描述
                Elements detail=document2.select("span[class=RichText ztext]");
                //回答
                Elements answer=document2.select(".RichContent-inner");
                System.out.println("
    "+"链接:"+URL
                        +"
    "+"标题:"+title.text()
                        +"
    "+"问题描述:"+detail.text()
                        +"
    "+"回答:"+answer.text());
            }   
        }
    }
  • 相关阅读:
    HTTP协议
    DNS解析原理
    数据库 怎么配置多实例
    mysql回表
    Oracle进程说明
    Oracle动态和静态参数文件和控制文件
    Oracle数据库的启动和关闭过程
    Mysql索引
    sqlserver备份还原
    oracle undo表空间异常激增排查
  • 原文地址:https://www.cnblogs.com/xr210/p/9338974.html
Copyright © 2011-2022 走看看