java實現代理ip有效檢測,依賴Apache的HttpClient
正式版:
/**
* 批量代理IP有效檢測
*
*
@param
proxyIpMap
*
@param
reqUrl
*/
public
static
void
checkProxyIp(Map<String, Integer> proxyIpMap, String reqUrl) {
for
(String proxyHost : proxyIpMap.keySet()) {
Integer proxyPort = proxyIpMap.get(proxyHost);
int
statusCode = 0;
try
{
HttpClient httpClient =
new
HttpClient();
httpClient.getHostConfiguration().setProxy(proxyHost, proxyPort);
// 連接超時時間(默認10秒 10000ms) 單位毫秒(ms)
int
connectionTimeout = 10000;
// 讀取數據超時時間(默認30秒 30000ms) 單位毫秒(ms)
int
soTimeout = 30000;
httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(connectionTimeout);
httpClient.getHttpConnectionManager().getParams().setSoTimeout(soTimeout);
HttpMethod method =
new
GetMethod(reqUrl);
statusCode = httpClient.executeMethod(method);
}
catch
(Exception e) {
//
TODO
Auto-generated catch block
e.printStackTrace();
}
System.
out
.format(
"%s:%s-->%s\n"
, proxyHost, proxyPort, statusCode);
}
}
/**
* 代理IP有效檢測
*
*
@param
proxyIp
*
@param
proxyPort
*
@param
reqUrl
*/
public
static
void
checkProxyIp(String proxyIp,
int
proxyPort, String reqUrl) {
Map<String, Integer> proxyIpMap =
new
HashMap<String, Integer>();
proxyIpMap.put(proxyIp, proxyPort);
checkProxyIp(proxyIpMap, reqUrl);
}
public
static
void
main(String[] args) {
Map<String, Integer> proxyIpMap =
new
HashMap<String, Integer>();
proxyIpMap.put(
"114.80.136.112"
, 7780);
proxyIpMap.put(
"114.80.136.166"
, 7780);
proxyIpMap.put(
"114.80.136.167"
, 7780);
proxyIpMap.put(
"114.80.136.168"
, 7780);
proxyIpMap.put(
"114.80.136.169"
, 7780);
proxyIpMap.put(
"114.80.136.170"
, 7780);
proxyIpMap.put(
"114.80.136.171"
, 7780);
proxyIpMap.put(
"123.129.207.102"
, 7780);
proxyIpMap.put(
"123.129.207.100"
, 7780);
proxyIpMap.put(
"123.129.207.103"
, 7780);
proxyIpMap.put(
"123.129.207.104"
, 7780);
proxyIpMap.put(
"123.129.207.105"
, 7780);
proxyIpMap.put(
"123.129.207.108"
, 7780);
proxyIpMap.put(
"114.80.136.164"
, 7780);
proxyIpMap.put(
"123.129.207.107"
, 7780);
proxyIpMap.put(
"180.153.251.3"
, 7780);
proxyIpMap.put(
"180.153.251.4"
, 7780);
proxyIpMap.put(
"180.153.251.5"
, 7780);
proxyIpMap.put(
"180.153.251.6"
, 7780);
proxyIpMap.put(
"180.153.251.7"
, 7780);
proxyIpMap.put(
"180.153.251.8"
, 7780);
proxyIpMap.put(
"180.153.251.9"
, 7780);
proxyIpMap.put(
"180.153.251.10"
, 7780);
proxyIpMap.put(
"180.153.251.11"
, 7780);
proxyIpMap.put(
"180.153.251.12"
, 7780);
proxyIpMap.put(
"180.153.251.13"
, 7780);
proxyIpMap.put(
"180.153.251.14"
, 7780);
proxyIpMap.put(
"180.153.251.15"
, 7780);
proxyIpMap.put(
"180.153.251.16"
, 7780);
proxyIpMap.put(
"180.153.251.2"
, 7780);
checkProxyIp(proxyIpMap,
"http://t.sohu.com/new_index"
);
}