【原创】验证代理IP是否有用

        /// <summary>
        /// 验证代理IP是否有用
        /// </summary>
        /// <param name="ip">IP地址</param>
        /// <param name="port">端口号</param>
        /// <returns>可用返回true</returns>
        static bool IsEnabled(string ip, int port)
        {
            try
            {
                HttpWebRequest Req = (HttpWebRequest)WebRequest.Create("http://www.whatismyip.com.tw/");
                WebProxy proxyObject = new WebProxy(ip, port);//IP地址,端口号
                Req.Proxy = proxyObject; //设置代理
                Req.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:31.0) Gecko/20100101 Firefox/31.0";
                HttpWebResponse Resp = (HttpWebResponse)Req.GetResponse();
                Encoding code = Encoding.GetEncoding("UTF-8");
                using (StreamReader sr = new StreamReader(Resp.GetResponseStream(), code))
                {
                    if (sr != null)
                    {

                        string strHtml = sr.ReadToEnd();

                        MatchCollection mc = Regex.Matches(strHtml, "<h2>(?<text>.*?)</h2>", RegexOptions.IgnoreCase);
                        if (mc.Count > 0)
                        {
                            GroupCollection gc = mc[0].Groups;
                            if (ip == gc["text"].Value)
                            {
                                return true;
                            }
                        }
                    }
                }
            }
            catch
            {
                return false;
            }
            return false;
        }
时间: 2024-10-05 13:30:31

【原创】验证代理IP是否有用的相关文章

c# 快速验证代理IP是否有用

public void yanzhen(string str, int port) { WebProxy proxyObject = new WebProxy(str, port);//str为IP地址 port为端口号 HttpWebRequest Req = (HttpWebRequest)WebRequest.Create("http://www.whatismyip.com.tw/"); Req.Proxy = proxyObject; //设置代理 HttpWebRespon

pytohn爬虫成长之路:抓取代理IP并多线程验证

上回说到,突破反爬虫限制的方法之一就是多用几个代理IP,但前提是我们得拥有有效的代理IP,下面我们来介绍抓取代理IP并多线程快速验证其有效性的过程. 一.抓取代理IP 提供免费代理IP的网站还挺多的,我在'西刺代理'上一阵猛抓后自己的IP就被其屏蔽了.只好换'IP巴士'并乖乖的减缓抓取速度了.贴上抓取代码 import urllib.request import urllib import re import time import random #抓取代理IP ip_totle=[] #所有页

Scrapy爬取美女图片第三集 代理ip(上) (原创)

首先说一声,让大家久等了.本来打算520那天进行更新的,可是一细想,也只有我这样的单身狗还在做科研,大家可能没心思看更新的文章,所以就拖到了今天.不过忙了521,522这一天半,我把数据库也添加进来了,修复了一些bug(现在肯定有人会说果然是单身狗). 好了,废话不多说,咱们进入今天的主题.上两篇 Scrapy爬取美女图片 的文章,咱们讲解了scrapy的用法.可是就在最近,有热心的朋友对我说之前的程序无法爬取到图片,我猜应该是煎蛋网加入了反爬虫机制.所以今天讲解的就是突破反爬虫机制的上篇 代理

Scrapy爬取美女图片第三集 代理ip(下)

这是我的公众号获取原创保护的首篇文章,原创的肯定将支持我继续前行.现在写这篇文章的时间是晚上11:30,写完就回寝室休息了,希望更多的朋友与我一起同行(当然需要一个善良的妹子的救济). 好了,废话不多说,咱们进入今天的主题.上一篇咱们讲解了代理ip上篇,本篇咱们继续讲解代理ip.这一篇是上一篇的扩展和优化,主要的改动是使用scrapy来进行爬取代理ip,同时演示在scrapy框架中怎么使用mongodb数据库,最后使用多线程批量验证代理ip的合理性,大大加快了速度. 这次我选择的依然是http:

Python3网络爬虫(十一):爬虫黑科技之让你的爬虫程序更像人类用户的行为(代理IP池等)

原文链接: Jack-Cui,http://blog.csdn.net/c406495762 运行平台: Windows Python版本: Python3.x IDE: Sublime text3 1 前言 近期,有些朋友问我一些关于如何应对反爬虫的问题.由于好多朋友都在问,因此决定写一篇此类的博客.把我知道的一些方法,分享给大家.博主属于小菜级别,玩爬虫也完全是处于兴趣爱好,如有不足之处,还望指正. 在互联网上进行自动数据采集(抓取)这件事和互联网存在的时间差不多一样长.今天大众好像更倾向于

Python 正则练习(一) 爬取国内代理ip

简单的正则表达式练习,爬取代理 ip. 仅爬取前三页,用正则匹配过滤出 ip 地址和 端口,分别作为key.value 存入 validip 字典. 如果要确定代理 ip 是否真的可用,还需要再对代理 ip 再进行筛查过滤,最终仅仅保存真实可用代理 ip. 可能需要修改的内容: xpath 替代正则进行抓取 ip 和端口: 验证代理 ip 是否可用: 再存入mogodb 数据库替代字典. import re import requests from collections import defa

.Net——做一个简单代理IP池

一.缘由. 抓取数据时,有一些网站 设置了一些反爬虫设置,进而将自己本地 IP 地址拉入系统黑名单.从而达到禁止本地 IP 访问数据的请求. 二.思路. 根据其他 代理 IP 网站,进行一个免费的代理 IP 进行搜集,然后进行统一 验证 管理 如下图: 三.抓取包含代理 IP 的网站页面. 抓取来网站代码之后,利用 HtmlAgilityPack 进行 html 的解析.并将代理 IP 验证,存放队列等操作. 四.直接看效果图. 运行效果. 浏览器 请求 :http://127.0.0.1:12

爬取代理IP

现在爬虫好难做啊,有些网站直接封IP,本人小白一个,还没钱,只能找免费的代理IP,于是去爬了西刺免费代理,结果技术值太低,程序还没调试好, IP又被封了... IP又被封了... IP又被封了... 于是又开始找其他的免费代理,找到了89免费代理,这个网站提供了API接口.在我调试过程中发现,这个API接口好像对爬虫没啥限制,哈哈哈!!! 下面附上代码: 1.这次找了好多User-Agent,以防万一. def __init__(self): self.get_ip_url = "http://

自动爬取代理IP例子

import time import json import datetime import threading import requests from lxml import etree from queue import Queue # 爬取免费代理IP 来源xicidaili.com # 多线程验证代理ip是否可用 class ProxyTest: def __init__(self): self.test_url = "http://pv.sohu.com/cityjson?ie=ut