一个简单的下载html页面的程序
来源:互联网 发布:服务器防火墙软件 编辑:程序博客网 时间:2024/05/17 06:34
package com.xdd.RetrivePage;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
public class RetrivePage {
private static HttpClient httpClient = new HttpClient();
//设置代理服务器
static{
//设置代理服务器的ip地址和端口号
//httpClient.getHostConfiguration().setProxy("127.0.0.1", 8080);
}
private static boolean downloadPage(String path)throws HttpException,
IOException{
InputStream input = null;
OutputStream output = null;
//得到post方法
PostMethod postMethod = new PostMethod(path);
//设置post方法的参数
NameValuePair[] postData = new NameValuePair[2];
postData[0] = new NameValuePair("name","lietu");
postData[1] = new NameValuePair("password","*****");
postMethod.addParameters(postData);
//执行,返回状态码
int statusCode = httpClient.executeMethod(postMethod);
//针对状态码进行处理,暂时处理200的状态
if(statusCode == HttpStatus.SC_OK)
{
input = postMethod.getResponseBodyAsStream();
//得到文件名
String fileName = path.substring(path.lastIndexOf('/')+1);
//获取文件输出流
output = new FileOutputStream(fileName);
//输出到文件
int tmpByte = -1;
while((tmpByte = input.read()) > 0)
{
output.write(tmpByte);
}
//关闭输入输出流
if(input != null)
{
input.close();
}
if(output != null)
{
output.close();
}
return true;
}
return false;
}
/*********
* 测试代码
*/
public static void main(String[] args) {
//抓取猎兔首页,输出
try {
RetrivePage.downloadPage("http://www.lietu.com");
} catch (HttpException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
public class RetrivePage {
private static HttpClient httpClient = new HttpClient();
//设置代理服务器
static{
//设置代理服务器的ip地址和端口号
//httpClient.getHostConfiguration().setProxy("127.0.0.1", 8080);
}
private static boolean downloadPage(String path)throws HttpException,
IOException{
InputStream input = null;
OutputStream output = null;
//得到post方法
PostMethod postMethod = new PostMethod(path);
//设置post方法的参数
NameValuePair[] postData = new NameValuePair[2];
postData[0] = new NameValuePair("name","lietu");
postData[1] = new NameValuePair("password","*****");
postMethod.addParameters(postData);
//执行,返回状态码
int statusCode = httpClient.executeMethod(postMethod);
//针对状态码进行处理,暂时处理200的状态
if(statusCode == HttpStatus.SC_OK)
{
input = postMethod.getResponseBodyAsStream();
//得到文件名
String fileName = path.substring(path.lastIndexOf('/')+1);
//获取文件输出流
output = new FileOutputStream(fileName);
//输出到文件
int tmpByte = -1;
while((tmpByte = input.read()) > 0)
{
output.write(tmpByte);
}
//关闭输入输出流
if(input != null)
{
input.close();
}
if(output != null)
{
output.close();
}
return true;
}
return false;
}
/*********
* 测试代码
*/
public static void main(String[] args) {
//抓取猎兔首页,输出
try {
RetrivePage.downloadPage("http://www.lietu.com");
} catch (HttpException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
0 0
- 一个简单的下载html页面的程序
- 一个简单的html页面
- 一个简单的下载程序
- 最简单的一个html页面
- 一个简单的页面扫描程序Scan
- 简单的投票页面,只有一个html页面
- 使用JavaScript设计一个简单的HTML倒计时页面
- 一个最简单的爬虫-HTML下载器
- 一个简单的html
- 一个简单的html
- 一个简单的html
- 一个简单的html
- 一个简单的下载网页上图片的程序
- 简单的HTML登录页面
- 一个简单的多线程、断点下载Java程序
- 一个简单的下载程序VB.NET示例
- 一个java实现的简单文件下载程序
- 简单的一个程序
- 内存管理
- 调用系统相机照相,照完后没有调用onActivityResult
- 虚拟实验——安装XenServer 6.2(二)
- Swift - Lesson2(上)
- thinkphp js路径问题
- 一个简单的下载html页面的程序
- 【剑指offer】用两个栈实现队列
- /etc/ld.so.conf.d/目录下文件的作用
- OCP 1Z0 053 39
- hdu 1163 Eddy's digital Roots (数论)
- 1111
- CloudShare.IM 云享,享受云端文档以及即时通讯服务
- Linux内核链表的研究与应用
- 带图标的列表对话框