博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
代理IP对爬虫的重要性以及Python3如何设置代理
阅读量:6896 次
发布时间:2019-06-27

本文共 1029 字,大约阅读时间需要 3 分钟。

对于从事互联网工作的朋友来说,代理ip并不是一个陌生的存在,如果你恰好是负责网络爬虫的相关工作,那么每天跟你打交道比较多的就是代理ip了。

我们都知道,网络爬虫能够在大数据里起到重要的作用就是因为用爬虫抓取网页信息便捷、高效、迅速。但是,也不得不小心IP地址受限制。很简单的一个道理,比如说我们自己有一个网站,有很多恶意竞争的对象,专门用恶意程序爬虫抓取我们的数据,服务器的承载力总归是有限的,如果有程序一直超负荷抓取服务器信息,服务器很容易就崩溃了。因此,现在很多网站,为了保护网站的安全,都会设置防爬机制,拒绝网络爬虫。

这个时候如果还想继续访问这个网站,代理ip就很重要,如果当前的ip地址受限制,可以换一个新的ip地址,保证爬虫的顺利进行。站大爷HTTP代理可以提供高质量的代理ip资源,保证爬虫程序的顺利进行。但并不是说有代理IP就可以恶意的超负荷爬取别人的网站了,凡事要掌握一个度,不然使用了代理IP也依然会受到限制。

有了代理IP,那么怎么使用呢,这里以Python3为例,简单的说明下。

1、首先导入urllib的request,然后我们调用ProxyHandler,它可以接收代理IP的参数。

from urllib import request

px=request.ProxyHandler()

2、接着把IP地址以字典的形式放入其中,这个IP地址是我胡编的,切勿当真,只是用来举例。设置键为http,当然有些是https的。

st.ProxyHandler({'http':'66.66.66.66:88888'})

3、接着再用build_opener()来构建一个opener对象

opener=request.build_opener(px)

4、然后调用构建好的opener对象里面的open方法来发生请求。实际上urlopen也是类似这样使用内部定义好的opener.open(),这里就相当于我们自己重写。

req=request.Request('网址')

res=opener.open(req)

with open('a.html','wb') as f:

f.write(res.read())

最后再来说说使用代理遇到的错误,提示目标计算机积极拒绝,这就说明可能是代理IP无效,或者端口号错误,这就需要使用有效的IP才行哦。

转载于:https://blog.51cto.com/13152774/2373471

你可能感兴趣的文章
How To Set Up Nginx Server Blocks (Virtual Hosts) on Ubuntu
查看>>
简单钩子
查看>>
常用的php函数库
查看>>
lucene之排序、设置权重、优化、分布式搜索(转)
查看>>
百度地图移动版API 1.2.2版本(Android)地图偏移的最佳解决办法
查看>>
第五周总结
查看>>
spring boot ajax post 前后端
查看>>
作业1测试
查看>>
sqlite3 小结
查看>>
linux 简单命令
查看>>
深入围观MaskEdit组件
查看>>
鱼油账号记录程序
查看>>
表单验证插件——validate
查看>>
【1500】Message Flood (SDUTOJ)
查看>>
Tomcat启动一闪而过
查看>>
递增的三元子序列
查看>>
预定义数组(超全局数组变量)
查看>>
吃了一惊!
查看>>
Tableau 字段及文件
查看>>
【FPGA】xilinx IOBUF的用法
查看>>