指定URL的网络爬虫。。
2014-04-17 10:25
260 查看
package Spider; import org.apache.commons.httpclient.*; import org.apache.commons.httpclient.methods.*; import java.io.*; public class RetrivePage2 { /** * @param args */ private static HttpClient httpClient=new HttpClient(); //设置代理服务器 static{ //设置代理服务器的IP地址和端口 httpClient.getHostConfiguration().setProxy("162.168.2.112", 8080); } public static boolean downloadePage(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); System.out.println(statusCode); //针对状态码进行处理(简单起见,只处理返回值为200的状态码) if(statusCode==HttpStatus.SC_OK){ input=postMethod.getResponseBodyAsStream(); //得到文件名 String filename=path.substring(path.lastIndexOf('/')+1); //获得文件输出流 output=new FileOutputStream(filename); //输出到文件 int tempByte=-1; while((tempByte=input.read())>0){ output.write(tempByte); } //关闭输入输出流 if(input!=null){ input.close(); } if(output!=null){ output.close(); } return true; } return false; } public static void main(String[] args) { // TODO Auto-generated method stub //抓起lietu首页,输出 try{ RetrivePage2.downloadePage("http://www.baidu.com/"); }catch(HttpException e){ e.printStackTrace(); }catch(IOException e){ e.printStackTrace(); } } }
相关文章推荐
- JAVA TCP-UDP常用构造函数
- 解决网络ping内外网成功,但浏览器等应用程序连不上网(视个人情况而定)
- 没有网络时VirtualBox主机与虚拟机的通信
- W5500 - 高性能TCPIP网络集成电路
- Http开发模块
- TCPCopy的安装和使用
- 自己封装的android客户端http网络框架
- Android Volley完全解析(二),使用Volley加载网络图片
- 贝叶斯网络
- Linux socket编程:tcp
- 神经网络和BP算法
- 【网络系统集成】读书笔记 1
- 《TCP/IP详解卷2:实现》笔记--mbuf与输入输出(UDP篇)
- 网络命令
- apache强制使用https
- 使用 CoreTelephony 框架获取当前网络运营商
- 10gocm->session1->数据库和网络配置
- 使用 STHTTPRequest 框架解析 Soap1.2 教程
- HTTP请求 GET POST 网络编程实现(转)
- linux网络编程二十二:高性能定时器之时间轮