注册
登录
提问时间:2019/5/31 15:32:09    楼主:未知网友   阅读量:321

昨天有个朋友问我,你家代理IP都是髙匿代理吗?

我说:是啊,我们的付费代理都是髙匿代理IP。

他说:不可能的,我用了你们的短效优质代理IP,其实还是有很多不是高匿的。

我说:您是怎么判断我们的代理IP不是髙匿的呢?

他说:我做的爬虫,用你们的代理,有的代理IP没事,有的代理IP直接重定向,你解释下,除了代理透明还有什么可能?

我说:这并不能说明我们的代理IP不是髙匿,至于为什么会重定向,很有可能是触发了反爬策略。

他说:对啊,这就说明这些代理IP不是髙匿。

我说:照您这么理解,一个代理IP一开始没有被爬虫识别,那么他就是髙匿代理,访问一段时间后被爬虫识别后,那么他就变成透明代理了吗?

他说:对啊。

……

这个朋友对于如何判断代理IP是否髙匿,只是看会不会被反爬识别。很多朋友也有这样的观点,认为用了髙匿代理IP就一定能成功,不然就是透明代理IP,普匿代理IP。其实这样的观点是不正确的,并不是用了髙匿代理IP,就可以忽略反爬虫策略了,那样的话,也就不用反反爬虫了,用上髙匿代理IP,一路爬过去就完事了。


那么如何判断一个代理IP是否髙匿代理IP呢?

其实要想识别IP代理的匿名等级并不复杂,只需要通过脚本程序(如ASP PHP JSP等)即可在服务器端识别出来,识别的办法就是抓数据包里的相关字段:REMOTE_ADDR,HTTP_VIA以及HTTP_X_FORWARDED_FOR。

1、透明代理

REMOTE_ADDR = Proxy IP

HTTP_VIA = Proxy IP

HTTP_X_FORWARDED_FOR = Your IP

2、普通匿名代理

REMOTE_ADDR = proxy IP

HTTP_VIA = proxy IP

HTTP_X_FORWARDED_FOR = proxy IP

3、高匿代理

REMOTE_ADDR = Proxy IP

HTTP_VIA = not determined

HTTP_X_FORWARDED_FOR = not determined

透明代理会向目标服务器透露自己的真实IP,普匿代理会向目标服务器透露用了代理,髙匿代理什么都不透露给目标服务器。

由此可见,用透明代理和普匿代理被识别的几率非常大,只要好好做了反爬策略的网站一般都可以轻而易举的识别,使用髙匿代理IP的话,虽然不能轻而易举的被识别,但也不是说就不能被识别了,触发了反爬策略依然会被识别,被限制,比如访问频率,次数,User-Agent,cookies,reprefer等等很多因素,而且反爬策略是会不断的升级的,相应的反反爬策略也要不断的升级。