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");
 
      }
 

java代理ip有效检测的更多相关文章

  1. python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性)

    python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性) 目录 随机User-Agent 获取代理ip 检测代理ip可用性 随机User-Agent fake_usera ...

  2. springboot实现java代理IP池 Proxy Pool,提供可用率达到95%以上的代理IP

    一.背景 前段时间,写java爬虫来爬网易云音乐的评论.不料,爬了一段时间后ip被封禁了.由此,想到了使用ip代理,但是找了很多的ip代理网站,很少有可以用的代理ip.于是,抱着边学习的心态,自己开发 ...

  3. 对代理IP进行检测是否可用

    第一种方法是使用telnetlib import telnetlib import requests from lxml import etree #解析此url页面的IP url = 'http:/ ...

  4. java 检测代理IP是否准确

    我这里提供2个方法都可以实现:第一个是createIPAddress()和convertStreamToString() import java.io.IOException; import java ...

  5. Java 验证代理ip

    原文地址:http://www.cnblogs.com/junrong624/p/5416503.html 1 import java.io.IOException; import java.io.I ...

  6. python代理池的构建5——对mongodb数据库里面代理ip检查

    上一篇博客地址:python代理池的构建4--mongdb数据库的增删改查 一.对数据库里面代理ip检查(proxy_test.py) #-*-coding:utf-8-*- ''' 目的:检查代理I ...

  7. Java实现Ip代理池

    设置Ip代理很多时候都会有用到,尤其是在写爬虫相关项目的时候.虽然自己目前没有接触这种需求,但由于最近比较闲,就写着当作练习吧 爬取代理IP 爬取 关于爬取代理IP,国内首先想到的网站当然是 西刺代理 ...

  8. [爬虫进阶]使用Jsoup取代你的一切网络请求方法(java,post,get,代理IP)

    [爬虫进阶]使用Jsoup取代你的一切网络请求方法(java,post,get,代理IP) 原文链接:https://www.cnblogs.com/blog5277/p/9334560.html 原 ...

  9. java模拟http请求(代理ip)

    java实现动态切换上网IP (ADSL拨号上网) java动态设置IP java模拟http的Get/Post请求 自动生成IP模拟POST访问后端程序 JAVA 动态替换代理IP并模拟POST

随机推荐

  1. (七)ubuntu下编译openwrt内核的环境配置

    首先安装基本开发环境: sudo apt-get install ssh vim samba tftp nfs 安装编译openwrt须要的包: 解压openwrt包编译出错: Build depen ...

  2. 【linux高级程序设计】(第十三章)Linux Socket网络编程基础 3

    使用之前的函数实现的简单聊天程序 TCP协议 双方实时发送/接收消息 实现后的问题: 可能是我虚拟机的IP地址配得有问题吧.在一台电脑上面开两个终端,用127.0.0.1的IP收发可以互通.但是两个虚 ...

  3. 计蒜客 18488.Extreme Sort (German Collegiate Programming Contest 2015 ACM-ICPC Asia Training League 暑假第一阶段第三场 E)

    E.Extreme Sort 传送门 代码: #include<iostream> #include<cstdio> #include<cstring> #incl ...

  4. HDU 2553 N皇后问题(回溯 + 剪枝)

    本文链接:http://i.cnblogs.com/EditPosts.aspx?postid=5398797 题意: 在N*N(N <= 10)的方格棋盘放置了N个皇后,使得它们不相互攻击(即 ...

  5. Python的程序结构[4] -> 函数/Function[2] -> 匿名函数

    匿名函数 / Anonymous Function 匿名函数是一种不需要绑定函数名的函数 (i.e. functions that are not bound to a name).匿名函数通过 la ...

  6. SpringBoot日志管理

    一.简介 小张:开发一个大型系统:1.System.out.println(""):将关键数据打印在控制台:去掉?写在一个文件?2.框架来记录系统的一些运行时信息:日志框架 : z ...

  7. [BZOJ4398]福慧双修/[BZOJ2407]探险

    题目大意: 给定一个$n(n\leq40000)$个点$m(m\leq100000)$条边的有向图,求从$1$出发回到$1$的不经过重复结点的最短路. 思路: 首先Dijkstra求出从1出发到每个结 ...

  8. C语言基础之指针

    1.指针的定义 格式:变量类型 *变量名; 1: // 定义了一个指针变量p 2: // 指针变量只能存储地址 3: // 指针就一个作用:能够根据一个地址值,访问对应的存储空间 4: // 指针变量 ...

  9. UIActivityIndicatorView活动指示器

    活动指示器(UIActivityIndicatorView)可以告知用户有一个操作正在进行中.派生自UIView,所以他是视图,也可以附着在视图上. 一.创建 UIActivityIndicatorV ...

  10. 【Linux】Linux下 环境变量/etc/profile、/etc/bashrc、~/.bashrc的区别【转】

    转自:http://blog.csdn.net/qiao1245/article/details/44650929 ------------------------------------------ ...