Java 爬虫(二)

18人阅读 评论(0) 收藏 举报
分类:

在前面的基础上做了一点修改,直接上源码,代码有注释

package test;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URL;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

public class Util {
    /**
     * 只下载一个页面
     * 编码:utf-8
     * @param uri
     * @throws Exception
     */
    public static void DownLoadPage(String uri) throws Exception{
        URL url=new URL(uri);
        Document doc=Jsoup.parse(uri);
        /**
         * 获取路径,根据路径创建目录,只有域名的需要单独创建目录,如:http://www.baidu.com/
         */
        String path=url.getPath();
        String title = null;//网页保存名字
        File mkd;//网页保存目录
        if(path.length()!=0){
            title=path.substring(path.lastIndexOf("/"));//路径为/Info/show-27818.html
            path=path.substring(path.indexOf("/"), path.lastIndexOf("/"));//截取路径/Info/做为目录
            mkd=new File("E:/NewPage"+path);
            if(!mkd.exists()){//目录不存在
                mkd.mkdirs();
            }
        }else{//路径不存在
            /**
             * 网页的标题有的包含特殊字符不能命名文件名称,这里就不过滤替换了
             */
            title=doc.getElementsByTag("title").text();
            if(title.length()==0){
                title="未识别.html";
            }else{
                title=title+".html";
            }
            mkd=new File("E:/NewPage/");
            if(!mkd.exists()){//目录不存在
                mkd.mkdir();
            }
        }
        BufferedReader br=new BufferedReader(new InputStreamReader(url.openStream(),"utf-8"));
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(mkd+title)),"utf-8"));
        String line;
        while((line=br.readLine())!=null){
            bw.write(line);
        }
        System.out.println("向本地写入完毕:"+mkd+title);
        br.close();
        bw.close();
    }
}
查看评论

java爬虫,爬虫,爬虫

  • 2010年06月08日 19:45
  • 12.8MB
  • 下载

Java爬虫系列之二网页解析【爬取知乎首页信息】

上一节以一个小Demo开始了Java的爬虫之旅,熟悉了HttpClient请求资源得到返回结果,得到初步处理的结果。但对于得到的网页是怎么解析的呢?这里讨论一下Jsoup的使用。         Js...
  • u012050154
  • u012050154
  • 2017-08-23 18:08:18
  • 1084

实战Java爬虫课程

大数据时代,如何形成大数据。 大用户量,每天很多日志。 搞个爬虫,抓几十亿数据过来分析分析。 并不是只有Python才能做爬虫,Java照样可以。 本课程将带领大家一步一步编写...
  • u010889990
  • u010889990
  • 2017-04-08 17:27:28
  • 832

爬虫 登陆 知乎 android java

  • 2018年02月07日 15:58
  • 23.22MB
  • 下载

知乎爬虫(二)

JAVA爬虫--增加多线程爬取 1.项目更新 由于工作原因,博主从上海飞到了遥远的呼和浩特→_→,继续上一篇文章之后,其实项目一直在更新,但是博客却没有跟上,过了好几个月才更新~我们的项...
  • u011397715
  • u011397715
  • 2016-01-12 22:41:27
  • 346

python3爬虫(二)实战- 爬糗事百科

python3 爬虫实战
  • youngbit007
  • youngbit007
  • 2017-03-09 23:00:34
  • 1962

Java学习-简单爬虫系统

简单的爬虫系统(java版)
  • www_131374
  • www_131374
  • 2017-09-06 07:18:18
  • 222

爬虫系列(二)——网页解析Jsoup

Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。     ...
  • Daybreak1209
  • Daybreak1209
  • 2017-02-20 17:35:36
  • 735

Python爬虫利器Beautiful Soup的用法

一个正则匹配稍有差池,那可能程序就处在永久的循环之中,而且有的小伙伴们也对写正则表达式的写法用得不熟练,没关系,我们还有一个更强大的工具,叫Beautiful Soup,有了它我们可以很方便地提取出H...
  • ccweb
  • ccweb
  • 2016-04-17 07:36:35
  • 606

自己动手写爬虫

  • 2011年11月24日 17:33
  • 1.4MB
  • 下载
    个人资料
    等级:
    访问量: 129
    积分: 82
    排名: 152万+
    文章分类
    文章存档