您的位置:首页 > 新闻资讯 >文章内容
利用IP代理突破--获取、测试、使用IP
来源: 不剃头的一休哥 作者:admin 时间:2019-04-22 13:50:38

  利用IP代理突破,这是很多爬虫通常的做法,不过并不是说用就能用了的,因为优质的IP代理并不好找,在找的过程中,我们或许需要先进行获取、测试,再使用IP的。本文主要讲利用IP代理突破,一起去了解下。

  1.关于代理

  简单的说,代理就是换个身份。网络中的身份之一就是IP。比如,我们身在墙内,想要访问google、u2b、fb等,直接访问是404,所以要换个不会被墙的IP,比如国外的IP等。这个就是简单的代理。

  在爬虫中,有些网站可能为了防止爬虫或者DDOS等,会记录每个IP的访问次数,比如,有些网站允许一个IP在1s(或者别的)只能访问10次等,那么我们就需要访问一次换一个IP(具体什么策略,自己决定)。

  那么问题来了,这些代理从哪得到?对于公司来讲,买代理IP。但是对于个人的话,可能会有浪费。那么怎么办呢?网上有很多免费的代理IP网站,但是手动更改的话,很浪费时间,并且免费的IP有很多不可用。所以,我们可以用爬虫爬那么IP。用上一节的代码,完全可以做到。这里我们用http://www.xicidaili.com/nn/1测试,声明:仅学习交流,切勿用作商业用途等

  2.获取代理IP,代码如下:

  利用IP代理突破--获取、测试、使用IP

  代码说明:

    a).这里我们使用的urllib2模块,因为,这个请求有点特殊,服务器会验证请求中的header(如有疑问,可参考http的相关资料)

    b).urllib2与urllib的区别在于,urllib2发送请求的时候可携带参数(我现在只用到这点区别)

    c).open()用于打开文件,第一个参数是文件的路径可以填绝对路径,例如E:\\proxy("\"在编程中是特殊字符,要用"\\"代表实际的"\")。也可以是相对路径,比如"../src/proxy",就是文件相对于代码的位置。第二个参数"w",代表打开文件的权限,w代表写权限,r代表读权限。这个在很多系统中都通用。比如,linux等

    d).for循环,如果之前学过java或者其他高级语言,可能不太习惯,因为他们用的是for(;;)这样的。python中的for循环,in 表示X的取值,按顺序取到in后面的参数

 特别注意:别忘了for语句后面的冒号(":")

    c).range函数,代表生成一系列数,如果range(0,6,1),意思就是从0开始,到6结束(不包括6),每次增加1(也就是步长为1),生成一个数组,结果就是[0, 1, 2, 3, 4, 5]

    e).f.write()就是往文件里面写数据,如果打开文件的时候,没有"w"权限,则无法写入。

  页面截图:

利用IP代理突破--获取、测试、使用IP

  运行结果:

  利用IP代理突破--获取、测试、使用IP

  3.并不是所有的代理都能用,原因有很多,可能是我们所处的网络连不到这个代理,也有可能是这个代理,连不到我们的目标网址,所以,我们要验证一下。以http://ip.chinaz.com/getip.aspx作为目标网址为例(这个是测试ip地址的网址)代码如下:

  利用IP代理突破--获取、测试、使用IP

  代码说明:

    a).ip = lines[i].strip("\n").split("\t") 这个是去掉每行末尾的换行符(也就是"\n"),然后以制表符(也就是"\t")分割字符串为字符串数组

    b).proxy_temp = {"http":proxy_host}其中http代表代理的类型,除了http之外还有https,socket等这里就以http为例

    c).urllib.urlopen(url,proxies=proxy) 其中proxies就是代理。以代理模式访问目标网址

    d).socket.setdefaulttimeout(3)设置全局超时时间为3s,也就是说,如果一个请求3s内还没有响应,就结束访问,并返回timeout(超时)

  运行结果如图:

  利用IP代理突破--获取、测试、使用IP

  从结果看可用的并不是很多。但是也够个人用了。至此,IP代理的使用就结束了。

  利用IP代理突破就讲到这里,大家可以参考下上文的思路,如果还是觉得极其麻烦,耗时也多,如果也有成本支持,那么直接找个付费的IP代理使用也未尝不可的。


相关文章内容简介
推荐阅读
  • 27 2019-05
    开放代理都有哪些劣势?

    上文讲到不建议使用开放代理,这是为什么呢?因为开放代理的缺点太多啦!正是由于开放代理的一些特性,用于做项目,可能会坑到自己,故不建议的。那么开放代理都有哪些劣势?

  • 27 2019-06
    代理服务器隐藏IP地址效果如何

    代理服务器隐藏IP地址效果如何?首先说说隐藏真实IP的方法,最简单的方法就是使用代理服务器。与直接连接到Internet相比,使用代理服务器能保护上网用户的IP地址,从而保障上网安全。

  • 06 2019-08
    运行动态ip代理软件的方式

    运行动态ip代理软件的方式怎样?换IP,最简单的就是不断的拨号断开宽带连接,从而获取新的IP。但这不长久,也不怎么实用,建议使用动态ip代理软件,下面一起来看看:

  • 21 2019-03
    爬取大规模数据必备高效代理IP和分布式爬虫

    学习Python爬虫,必然是想要爬取大规模数据,如果还想单个单个来爬取数据,那还不如人工采集呢?何必花时间花成本去做网络爬虫进行采集,是吧。但是想要爬取大规模数据,我们需要准备一

  • 17 2020-12
    越来越多人对http代理ip感兴趣

    时代在发展,社会在进步,信息技术随着时代也开始发展得越来越好。http代理ip服务开始在人们的生活中普遍起来。因为现在很多普通大众对于电脑的了解都非常深,使用非常广泛,因此他们需

  • 22 2020-05
    改ip对我们日常工作的作用

    IP地址是我们上网的基础,更改ip地址一般都是通过第三方软件进行切换。更改ip地址之后就可以使用更改后的IP去做自己想要的工作,比如营销策略(游戏试玩游戏挂机QQ营销SEO)、网络推广(

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部