`
林奇峰
  • 浏览: 40961 次
  • 性别: Icon_minigender_1
  • 来自: 濮阳
社区版块
存档分类
最新评论

java URL链接,下载所访问的网页

    博客分类:
  • j2se
阅读更多

 

 

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
/**
 * URL链接,下载所访问的网页
 */
public class UrlConnection {

    public static void main(String[] args) {
    	
    	//URL地址数组
    	String[] urls = new String[]{"http://991690137.iteye.com/blog/1946378",
    	"http://991690137.iteye.com/blog/1946173","http://991690137.iteye.com/blog/1946149",
    	"http://991690137.iteye.com/blog/1946149","http://991690137.iteye.com/blog/1946119",
    	"http://991690137.iteye.com/blog/1946123","http://991690137.iteye.com/blog/1946133",
    	"http://991690137.iteye.com/blog/1944394","http://991690137.iteye.com/blog/1944245",
    	"http://991690137.iteye.com/blog/1942772","http://991690137.iteye.com/blog/1942767",
    	"http://991690137.iteye.com/blog/1942736","http://991690137.iteye.com/blog/1942736",
    	"http://991690137.iteye.com/blog/1942717"};
    	
    	//遍历数组
    	for(int i=0;i<urls.length;i++){
    		//循环访问100次
    		for(int j=1;j<100;j++){
        		System.out.println("beging...");
        		//将访问的网页下载并保存在L:/html/indexn.html
        		DownLoadPages(urls[i],"L:/html/index"+i+".html");
        		System.out.println("end.");
        		try {
        			//每次访问休息1.5s,目的是减轻所访问网页所在服务器的压力,再者访问过快会导致很多意想不到的问题
    				Thread.sleep(1500);
    			} catch (InterruptedException e) {
    				e.printStackTrace();
    			}
        	}
    	}
    }

    /**
     * 下载网页 或 文件
     * @param urlStr 网页地址 比如: http://www.163.com
     * @param outPath 文件输出路径
     */
    public static void DownLoadPages(String urlStr, String outPath)
    {
        /** 读入的输入流是字节流
         * chByte是读入的每个字节所转成int类型的表示
         * */
        int chByte = 0;
        
        /** 网络的url地址 */
        URL url = null;
        
        /** http连接 */
        HttpURLConnection httpConn = null;
        
        /** 输入流 */
        InputStream in = null;
        
        /** 文件输出流 */
        FileOutputStream out = null;
        try
        {
            url = new URL(urlStr);
            httpConn = (HttpURLConnection) url.openConnection();
            HttpURLConnection.setFollowRedirects(true);
            httpConn.setRequestMethod("GET"); 
            httpConn.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)"); 
            
            in = httpConn.getInputStream();
            out = new FileOutputStream(new File(outPath));

            chByte = in.read();
            while (chByte != -1)
            {
                out.write(chByte);
                chByte = in.read();
            }
        }
        catch (MalformedURLException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        finally
        {
            try
            {
                out.close();
                in.close();
                httpConn.disconnect();
            }
            catch (Exception ex)
            {
                ex.printStackTrace();
            }
        }
    }


}

 

 

分享到:
评论

相关推荐

    java 使用URL访问网页

    java 使用URL访问网页 java 使用URL访问网页 java 使用URL访问网页

    java禁止直接url访问图片

    NULL 博文链接:https://lbovinl.iteye.com/blog/2394004

    java使用HttpClient通过url下载文件到本地

    Eclipse下完整的java程序,包含HttpClient的全部jar包。通过java类文件,实现通过链接将文件下载本地

    java使用HttpURLConnection获取百度搜狗360搜索链接重定向真实目标链接地址url

    本人原创测试了百度,搜狗,360搜索都可以获取重定向后的真实地址,直接运行就可以,也可以根据自己项目具体修改功能。java使用HttpURLConnection获取百度搜狗360搜索链接重定向真实目标链接地址url。

    java解析给定url

    * 现在要求用Java编写一个程序,该程序访问上面的URL,并从页面中, * 提取出上图所示位置的页面信息(仅图中所要求的内容),将其内容按如下格式,输出到控制台 * GrapWeatherInfo * @author lihsh * @version ...

    java通过url下载文件并输出的方法

    下面小编就为大家分享一篇java通过url下载文件并输出的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    java多线程下载

    b)通过URL对象的openConnection()方法打开连接,返回一个连接对象 c)设置请求头 i.setRequestMethod ii.setConnectTimeout iii.setReadTimeout d)判断是否响应成功 e)获取文件长度(getContentLength()) f)随机访问...

    Java根据url生成二维码

    NULL 博文链接:https://decao.iteye.com/blog/2414944

    JAVA上百实例源码以及开源项目

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    java开源包10

    它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...

    搜索链接Java网络爬虫(蜘蛛)源码-zhizhu.zip

    URL管理器负责管理待抓取的URL队列,网页下载器负责根据URL下载网页内容,网页解析器负责从网页中提取所需的信息,数据存储器负责将提取到的信息进行整理和存储。此外,项目还提供了一些辅助功能,如代理IP池、用户...

    java开源包101

    它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...

    java通过url读取远程数据并保持到本地的实例代码

    本文通过实例代码给大家介绍了java通过url读取远程数据并保持到本地的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

    javaURL抓取知乎explore页面上热门问题和回答的爬虫程序.zip

    如果您下载了本程序,但是该程序无法运行,或者您不会部署,那么您可以选择退款或者寻求我们的帮助(如果找我们帮助的话,是需要追加额外费用的) 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。...

    java开源包4

    它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...

    JAVA上百实例源码以及开源项目源代码

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    JsUrl-java的爬虫.zip

    如果您下载了本程序,但是该程序无法运行,或者您不会部署,那么您可以选择退款或者寻求我们的帮助(如果找我们帮助的话,是需要追加额外费用的) 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。...

    java开源包11

    它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...

    java开源包6

    它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...

Global site tag (gtag.js) - Google Analytics