python做网页爬虫需要注意的问题
2015-10-16 10:41
579 查看
为了网站的性能和保证正常用户对网站的访问,很多网站都对来自客户端非正常的访问进行了屏蔽。
爬虫由于是自动运行,很容易访问过快过多甚至造成DDOS攻击。
第一步:首先你得爬虫要伪装成一个正常的用户,比如设置reffer、cookie、browser client、token等信息,这些通过分析HTTP包可以进行分析和伪造。
第二步:其次,来自同一个IP的多次访问也会被服务器禁止并将IP加入黑名单。你可以去淘宝买m个IP,然后起m个线程,每个线程绑定不同的IP代理,
并且每个线程平均5秒访问一次网站,不然你的IP会被很快全部被加入黑名单。
另外,很多网站都提供了移动入口,比如手机访问入口是wap.baidu.com、wap.weibo.com,这些入口往往技术还不太成熟,对客户端的访问限制较少,你的爬虫直接请求这些入口成功率会更高(有个叫中国爬萌的组织,每天都在爬取新浪微博,访问的就是微博的移动入口)。
爬虫不要给目标网站过多压力,比如对方只有1台服务器,你开个while(true)一直扫,会影响正常用户的访问的。
爬虫由于是自动运行,很容易访问过快过多甚至造成DDOS攻击。
第一步:首先你得爬虫要伪装成一个正常的用户,比如设置reffer、cookie、browser client、token等信息,这些通过分析HTTP包可以进行分析和伪造。
第二步:其次,来自同一个IP的多次访问也会被服务器禁止并将IP加入黑名单。你可以去淘宝买m个IP,然后起m个线程,每个线程绑定不同的IP代理,
并且每个线程平均5秒访问一次网站,不然你的IP会被很快全部被加入黑名单。
另外,很多网站都提供了移动入口,比如手机访问入口是wap.baidu.com、wap.weibo.com,这些入口往往技术还不太成熟,对客户端的访问限制较少,你的爬虫直接请求这些入口成功率会更高(有个叫中国爬萌的组织,每天都在爬取新浪微博,访问的就是微博的移动入口)。
爬虫不要给目标网站过多压力,比如对方只有1台服务器,你开个while(true)一直扫,会影响正常用户的访问的。
相关文章推荐
- 在Arcgis中基于Python对地图分级别进行四色填充
- Python的对象和类型
- 用Python实现一个简易的WebSocket Server
- python框架(flask/django/tornado)比较
- import,reload,__import__在python中的区别
- python os.path模块
- python __all__
- python-ConfigParser模块学习
- Python3利用PyMySql连接MySQL数据库
- Windows二进制文件的Python扩展包
- 64bit的python及32bit的office2010情况下pywin32无法操作access的解决方法
- 使用python的logging模块(转)
- python脚本前两行
- pyinfo():一个像 phpinfo 一样的 Python 脚本
- Python中基本的日期时间处理的学习教程
- Python中的模块导入和读取键盘输入的方法
- 解读Python编程中的命名空间与作用域
- 详解Python编程中包的概念与管理
- Python编程中的文件操作攻略
- 详解在Python程序中自定义异常的方法