怎样用Java兑现网站数据采集.txt

怎样用Java实现网站数据采集.txt
怎样用Java实现网站数据采集
测试了一下,使用HttpClient读取网页的内容
整个过程分为六步
1. 创建 HttpClient 的实例

2. 创建某种连接方法的实例,在这里是 GetMethod。在 GetMethod 的构造函数中传入待连接的地址

3. 调用第一步中创建好的实例的 execute 方法来执行第二步中创建好的 method 实例

4. 读 response

5. 释放连接。无论执行方法是否成功,都必须释放连接

6. 对得到后的内容进行处理
实现如下:
import java.io.IOException;  
import org.apache.commons.httpclient.*;  
import org.apache.commons.httpclient.methods.GetMethod;  
import org.apache.commons.httpclient.params.HttpMethodParams;  
public class HttpClientTest...{  
  public static void main(String[] args) {  
  //构造HttpClient的实例  
  HttpClient httpClient = new HttpClient();  
  //创建GET方法的实例  
  GetMethod getMethod = new GetMethod("http://www.crazyjava.org");  
  //使用系统提供的默认的恢复策略  
  getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,  
    new DefaultHttpMethodRetryHandler());  
  try {  
   //执行getMethod  
   int statusCode = httpClient.executeMethod(getMethod);  
   if (statusCode != HttpStatus.SC_OK) {  
    System.err.println("Method failed: " 
      + getMethod.getStatusLine());  
   }  
   //读取内容  
   byte[] responseBody = getMethod.getResponseBoy();  
   //处理内容  
   System.out.println(new String(responseBody));  
  } catch (HttpException e) {  
   //发生异常,可能是协议不对或者返回的内容有问题  
   System.out.println("Please check your provided http address!");  
   e.printStackTrace();  
  } catch (IOException e) {  
   //发生网络异常  
   e.printStackTrace();  
  } finally {  
   //释放连接  
   getMethod.releaseConnection();  
  }  
}  

这样得到的是页面的源代码,再进行处理