喜欢爬虫的伙伴都知道,在爬网站的内容的时候并不是一爬就可以了,有时候就会遇到一些网站的反爬虫,折回让你爬不到数据,给你返回一些404,403或者500的状态码,这有时候会让人苦不堪言,在你爬的数据较多时,网站认为你是一个机器,就不让你爬了。反爬虫主要有以下几种方式:

通过UA判断。这是最低级的判断,一般反爬虫不会用这个做唯一判断,因为反反爬虫非常容易,直接随机UA即可解决。

通过单IP频繁访问判断。这个判断简单,而且反反爬虫比较费力,反爬虫绝佳方案。需采用多IP抓取。

通过Cookie判断,例如通过会员制账号密码登陆,判断单账号短时间抓取次数判断。这个反反爬虫也很费力。需采用多账号抓取。

动态页面加载。这个考验前端工程师的功底,如果前端写的好,各种JS判断,各种逻辑,像百度,淘宝一样,post登录很难。较好的方法,但是对于大牛,还是防不胜防。反反爬虫多采用渲染浏览器抓取,效率低下。

采用验证码。这里要么是登录的时候有验证码,要么是判断是爬虫时,不封IP,而是采用验证码验证,例如链家网。验证码是反爬虫性价比较高的方案。反反爬虫一般接入OCR验证码识别平台或者人工打码平台,亦或者利用Tesseract OCR识别,亦或者采用神经网络训练识别验证码等。

代理IP是最常见的一种多IP爬虫方法。在请求Headers中加入代理IP地址,即可实现代理IP抓取。缺陷是爬取速度和代理IP的速度息息相关。而且好的IP费用较高,免费的速度普遍不高。

当使用熊猫代理ip时可按照以下动态代理接入文档进行操作

1.说明
使用动态代理:

1.动态并发产品和动态按量包时产品代理设置为 dynamic.xiongmaodaili.com:8089;动态按量产品需将代理设置为 dynamic.xiongmaodaili.com:8088
2.在请求的header里面添加Proxy-Authorization参数(下面有详细的说明)
3.访问https协议头需要先忽略证书验证

2.使用方法
签名算法参数:
secret 个人密钥
orderno 订单号
timestamp 时间戳/1000(也就是10位时间戳)

注:change参数不加入签名算法,不传默认为true(即使用每次访问都改变ip策略)

认证流程
2.1客户根据三个参数拼接出字符串
txt=“orderno=xxxx,secret=xxxxxxxxx,timestamp=xxxxxxxxxx”

2.2签名根据planText 拼接出的字符串 进行MD5() ,然后再转成大写 例如
sign = org.apache.commons.codec.digest.DigestUtils.md5Hex(txt).toUpperCase();

2.3客户通过head中添加Proxy-Authorization 例如
Proxy-Authorization:sign=38UDHCCXXXXX&orderno=DT2017230151xxxxxxx&timestamp=1487753521&change=true

2.4 服务器接受到请求,认证成功则开始执行代理服务,失败则返回错误提示,用utf-8编码即可查看错误原因。

示例代码请参照:https://github.com/XMPROXY/XM-PROXY

反反爬虫利器!教你怎么用熊猫代理ip相关推荐

  1. python爬虫免费代理池_【Python3爬虫】教你怎么利用免费代理搭建代理池

    一.写在前面 有时候你的爬虫刚开始的时候可以正常运行,能够正常的爬取数据,但是过了一会,却出现了一个"403 Forbidden",或者是"您的IP访问频率太高" ...

  2. Python3网络爬虫(四):使用User Agent和代理IP隐藏身份

    运行平台:Windows Python版本:Python3.x IDE:Sublime text3 转载请注明作者和出处:http://blog.csdn.net/c406495762/article ...

  3. 反网络爬虫以及解决方案

    做技术的或者是互联网行业的人可能都比较清楚,网络爬虫对于互联网的共享是非常大的,其中有超过一半的流量都是网络爬虫的贡献,如果一个网站不设置发爬虫机制,那就会成为一个透明的研究所一样,所有的信息都会公开 ...

  4. python爬虫ip代理没有作用_可能是一份没什么用的爬虫代理IP指南

    写在前面 做爬虫的小伙伴一般都绕不过代理IP这个问题. PS:如果还没遇到被封IP的场景,要不你量太小人家懒得理你,要不就是人家压根不在乎... 爬虫用户自己是没有能力维护一系列的代理服务器和代理IP ...

  5. 可能是一份没什么用的爬虫代理IP指南

    写在前面 做爬虫的小伙伴一般都绕不过代理IP这个问题. PS:如果还没遇到被封IP的场景,要不就是你量太小人家懒得理你,要不就是人家压根不在乎- 爬虫用户自己是没有能力维护一系列的代理服务器和代理IP ...

  6. python爬虫 - 代理ip正确使用方法

    主要内容:代理ip使用原理,怎么在自己的爬虫里设置代理ip,怎么知道代理ip是否生效,没生效的话哪里出了问题,个人使用的代理ip(付费). 目录 代理ip原理 输入网址后发生了什么呢? 代理ip做了什 ...

  7. python爬虫代理ip_Python爬虫如何获取代理ip及ip验证?

    如何获取大量的公开数据信息,这是我们互联网在竞争激烈的环境中的生存之道,不管在什么环境下都要学习和了解用户市场,客户需求,竞争对手,如何能获取到大量的数据信息,那么就需要用到网络爬虫. 在我们从事py ...

  8. selenium+python设置爬虫代理IP

    selenium+python设置爬虫代理IP 1. 背景 在使用selenium浏览器渲染技术,爬取网站信息时,一般来说,速度是很慢的.而且一般需要用到这种技术爬取的网站,反爬技术都比较厉害,对IP ...

  9. 代理IP在HTTP爬虫中的应用

    网络爬虫是一种重要的技术,用于从互联网上获取和分析数据.为了提高爬虫的效率和稳定性,使用代理IP成为一种常见的实践.本文将介绍代理IP的概念及其在HTTP爬虫中的应用.我们将讨论代理IP的选择与获取. ...

  10. python爬虫的用途_python爬虫用代理ip有什么用途?

    以下文章来源于腾讯云 作者:py3study ( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020pytho ...

最新文章

  1. 深入理解C++中public、protected及private用法
  2. 深度学习未来发展的三种学习范式:混合学习,成分学习和简化学习
  3. cf559C. Gerald and Giant Chess(容斥原理)
  4. linux ssh互免密配置
  5. 调用模块,加入系统路径
  6. php实现文本替换,php 如何实现文字替换
  7. LATEX数学式哪种字号比较漂亮
  8. 在Ubuntu上以服务方式运行Java程序
  9. Mybatis Plus条件查询
  10. 成都睿铂盘点无人机航测三个极端恶劣环境的人员与设备防护指南
  11. 小米 samba linux,解决小米路由器升级固件后samba无法访问一例
  12. 产品经理必备 [Axure组件、PRD模板、竞品分析、数据分析等模板]
  13. 网络安全之DOS攻击
  14. VM虚拟机安装CentOS 7详解
  15. 日期转换和日历的使用方法
  16. php 前端 java培训哪个好,php培训、前端培训、java培训哪个好
  17. php doctrine,数据库和Doctrine ORM
  18. 微信公众平台 微接口 接口100 API100 接口大全
  19. Sequence定义
  20. win10重装系统后连不上公司服务器,Win10电脑重装系统后不能上网怎么办?

热门文章

  1. 计算机桌面工作提醒,有什么好用的电脑桌面日程安排提醒软件?
  2. Python 进行 Cholesky分解
  3. win7计算机序列号怎么查,怎么查看win7序列号
  4. pdf-xchange pro注册码
  5. [常用工具] Python视频处理库VidGear使用指北
  6. 机器学习——周志华(1)
  7. Visual studio C++:LQR轨迹跟踪仿真
  8. 账龄分析表excel模板_Excel技巧 | 简单而强大的功能 数据统计分析必备—数据透视表...
  9. 数字图像处理:时域、频域和空间域
  10. 对于数据链路层滑动窗口协议中窗口大小的总结