• 简单的网络爬虫程序(Web Crawlers)


           程序比较简单,但是能体现基本原理。

    package com.wxisme.webcrawlers;
    
    import java.io.*;
    import java.net.*;
    
    /**
     * Web Crawlers * @author wxisme
     *
     */
    public class WebCrawlers {
    
        public static void main(String[] args) {
            URL url = null;
            try {
                url = new URL("http://www.baidu.com");
            } catch (MalformedURLException e) {
                System.out.println("域名不合法!");
                e.printStackTrace();
            }
            InputStream is = null;
            try {
                is = url.openStream();
            } catch (IOException e) {
                e.printStackTrace();
            }
            
            FileOutputStream fos = null;
            try {
                fos = new FileOutputStream("E:\baidu.txt");
            } catch (FileNotFoundException e) {
                System.out.println("文件创建失败!");
                e.printStackTrace();
            }
            //使用转换流设置字符集
            BufferedReader br = null;
            try {
                br = new  BufferedReader(new InputStreamReader(
                        is,"utf-8"));
            } catch (UnsupportedEncodingException e) {
                System.out.println("字符集设置失败!");
                e.printStackTrace();
            }
            
            BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
                    fos));
            
            String msg = null;
            try {
                while((msg = br.readLine()) != null) {
                    bw.write(msg);
                    bw.newLine();
                }
            } catch (IOException e) {
                System.out.println("文件操作失败!");
                e.printStackTrace();
            } finally {
                try {
                    bw.flush();
                } catch (IOException e) {
                    e.printStackTrace();
                }
                closeAll(is, fos, br, bw);
            }
            
            
            
    
        }
        
        public static void closeAll(Closeable ... io) {
            for(Closeable temp : io) {
                if(temp != null) {
                    try {
                        temp.close();
                    } catch (IOException e) {
                        System.out.println("文件关闭失败!");
                        e.printStackTrace();
                    }
                }
            }
        }
    
    }
  • 相关阅读:
    mysql truncate
    蠕虫复制
    mysql 一对多,多对多
    php实现文件下载
    JetBrains PhpStorm 整个项目中查找一个词语
    vim
    程序员减少代码BUG的7种方法,拒绝编程5分钟,查代码2小时!
    创建你的第一个Composer/Packagist包
    Elasticsearch
    Laravel 实践之路: 数据库迁移与数据填充
  • 原文地址:https://www.cnblogs.com/wxisme/p/4385513.html
Copyright © 2020-2023  润新知