您的位置:首页 > 其它

代理IP有效检测

2015-11-06 14:30 211 查看
在网上搜索了很多关于代理IP有效检测的方法,好像没有找到用java实现的,一下是自己实现的方法。

package com.xiaojiang.spidertest;

import java.io.IOException;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;

import com.xiaojiang.httpclient.HttpConnectionManager;
import com.xiaojiang.httpclient.HttpUserAgent;

public class IpTest {

/**
* 代理IP有效检测
*
* @param proxyIp
* @param proxyPort
* @param reqUrl
*/
public static Boolean checkProxyIp(String proxyIp, int proxyPort, String reqUrl) {

HttpClient client = HttpConnectionManager.getHttpClient(proxyIp, proxyPort);

HttpGet httpGet = new HttpGet(reqUrl);
httpGet.setHeader("Accept-Language", "zh-cn,zh;q=0.5");
httpGet.setHeader("Accept-Charset", "GB2312,utf-8;q=0.7,*;q=0.7");
httpGet.setHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
httpGet.setHeader("Accept-Encoding", "gzip, deflate");
httpGet.setHeader("User-Agent", HttpUserAgent.get());

try {

HttpResponse response = client.execute(httpGet);
int statuCode = response.getStatusLine().getStatusCode();

if(statuCode == 200)
return true;
else
return false;

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {

if(httpGet != null){
httpGet.abort();
}

}
return false;
}

public static void main(String[] args) {

String url = "http://www.baidu.com";
String proxyIp="122.72.0.242";
int proxyPort=8080;

System.out.println(checkProxyIp(proxyIp,proxyPort,url));

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: