8.代理请求

目录

1  不使用代理请求

2  使用代理请求

3  代理IP的匿名度


有时爬着爬着人家把我们的IP给封了,这个时候我们可以使用代理IP再次进行请求

不用代理的时候就是A直接请求B,B给A响应

使用代理是A去请求C,C携带你的参数请求B。之后B给C响应,然后再由C把B的响应给A

8.代理请求_第1张图片

这样A和B就没有直接关系,B禁用A的IP,但没有禁用C的IP。如果C的IP也被禁用了,那就换一个代理D

  • 梯子工具使用的就是代理技术

和验证码一样,代理也有第三方的公司做,比如 快代理 快代理 - 企业级HTTP代理IP云服务

  • 百度上搜代理就有了

1  不使用代理请求

这里有一个查询ip地址的http协议的网站 显示查询自己的IP地址 直接访问可以获得我们当前的IP

  • https协议的代理相对于http协议的代理要难获取一些

8.代理请求_第2张图片

我们用代码请求一下

8.代理请求_第3张图片

发现可以请求到,并且IP与我们与浏览器访问的IP一致

8.代理请求_第4张图片

2  使用代理请求

快代理目前(2024.1.17)每小时会更新几个免费的,有时间限制的代理,我们再学习或购买之前可以用一下试试,我们现在就用这个IP试一下

8.代理请求_第5张图片

在requests.get中加入参数proxies

proxies本身是键值对,键是协议名称,值是代理的IP+端口,如果你想再添加一个https的代理,那么可以这样写

page_text = requests.get(url=url,headers=headers,proxies={'http':'36.134.91.82:8888','https':'36.134.91.82:1234'}).text

当你使用http协议请求的时候会自动走http的代理,如果你没添加http的代理就会使用本机IP进行访问

8.代理请求_第6张图片

请求后发现我们可以成功使用代理的IP

8.代理请求_第7张图片

3  代理IP的匿名度

大致分如下3个等级

  • 透明:服务器知道该次请求使用了代理,也知道请求的真实IP。可以讲透明的代理意义不大
  • 匿名:服务器知道使用了代理,不知道真实的IP
  • 高匿名:服务器不知道使用了代理,也不知道真实的IP

你可能感兴趣的:(爬虫笔记,python)