
qq:800819103
在线客服,实时响应
qq群
在线客服,实时响应
客服电话
400-998-9776转3怎么在Requests中设置代理ip?因为现在很多网站都有很强的反爬虫措施,如果不想办法进行突破,这就无法顺利抓取信息。其实对于采取了比较强的反爬措施网站来说,要想顺利爬取网站数据,设置随机User-Agent和代理ip是非常有效的两个方法。本文介绍怎么在Requests中设置代理ip。
本文的目标测试网页选择下面这个URL,请求该网页可以返回当前的ip地址:
http://icanhazip.com
下面,我们就先来说说怎么在Requests中设置代理ip,首先,先来看一下不使用代理ip的情况:
运行上面的程序,会返回我们电脑本机的ip,可以通过百度查询ip地址对比一下。
然后,我们测试一下使用代理ip后的情况:
常见的代理包括HTTP代理和SOCKS5代理,前者可以找一些免费代理ip进行测试,由于我电脑上使用的是Shadowsocks,所以就介绍一下SOCKS5代理的设置。
首先,电脑上要安装有Shadowsocks
启动该软件后默认会在1080端口下创建SOCKS5代理服务,代理为:127.0.0.1:1080,然后我们在Requests中使用该代理,方法很简单只需要添加一项proxies参数即可:
这里,proxies参数是字典类型,键名http表示协议类型,键值socks5://127.0.0.1:1080表示代理。
proxies添加了http和https两个代理,这样写是因为有些网页采用http协议,有的则是采用https协议,为了在这两类网页上都能顺利使用代理,所以一般都同时写上,当然,如果确定了某网页的请求类型,可以只写一种,比如这里我们请求的url使用的是http协议,那么使用http代理就可以,random函数用来随机选择一个代理,我们来看一下结果:
可以看到,这里随机选择了http协议的代理后,返回的ip就是我真实的ip代理地址,成功代理后就可以爬一些墙外的网页了。
延伸一下,假如随机选择的是https代理,那么返回的ip结果还一样么?我们尝试重复运行一下上面的程序:
可以看到这次使用了https代理,返回的ip却是本机的真实ip,也就是说代理没有起作用。
进一步地,我们将url改为https协议:https://icanhazip.com,然后再尝试分别用http和https代理请求,查看一下结果:
可以看到,两种请求的结果和之前的刚好相反了,由于url采用了https协议,则起作用的是https代理,而http代理则不起作用了,所以显示的是本机ip。
因此,可以得到这样的一个结论:
HTTP代理,只代理HTTP网站,对于HTTPS的网站不起作用,也就是说,用的是本机ip。HTTPS代理则同理。
随着网路的发展,人们对网络资源和服务的需求是日渐增长,连入的网络的计算机越来越多,我们的生活正随着网络而改变。网络的高速发展同时也伴随着一些问题,如IP地址耗尽,海量的主机
代理IP在爬虫业务的应用是越来越广泛,根据不同的布局,爬虫的质量效果也会有所不同,下面跟大家介绍以下3种分布式爬虫的方式,每个方案的优缺点都可以直观看到。
代理IP大家都知道,使用过程中却发现有的代理IP质量很好,但有的代理提供的IP质量却不尽人意。那么,不同代理IP质量为何有差距呢?
使用代理服务器的机会不多,很多人都不知道这是什么来着。其实很多时候,我们都使用了代理服务器,只是你不知道而已,那么代理服务器都有什么作用?代理服务器与代理IP有什么关系?代
代理IP的功能如何如何强大,这些已经被代理服务商介绍宣传得差不多了。但是其实代理IP的用途还是比较模糊,爬虫是大家都比较清楚的,因为一般都会把这一项作为宣传点来推广。机灵代理
为什么现在的换ip需求是越来越多了?是不是网站的限制要比以前严格了呢?这是一部分原因,还有一部分原因是因为我们对于网络的操作要更加的频繁。