天猫、淘宝运营数据抓取技术概述

jopen 9年前

对通用网站的数据抓取,比如:谷歌和百度,都有自己的爬虫,当然,爬虫也都是有程序写出来的。根据百度百科的定义:网络爬虫(又被称为网页蜘 蛛,网络机器人),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁,自动索引,模拟程序或者蠕虫。不过,淘 宝为了屏蔽网络爬虫对自身数据(例如商品价格、月销量、收藏量、评价、月成交记录等等)的抓取,往往是采取一种名叫 Ajax 的技术,在网页加载完成后,再次加载这些数据,所以通用的网络爬虫抓取技术对抓取淘宝的这些数据是无效的。针对淘宝本身的特点,天猫、淘宝数据抓取的技术 无外乎以下四种技术:

 1、通用的网页解析技术,适合解析一些常见的数据,例如:关键词排名数据的抓取、宝贝标题、宝贝下架时间等等。

 2、通过浏览器插件技术:无论是 IE、火狐(Firefox)还是谷歌浏览器(Chrome),都有自己的插件技术,淘宝无论如何增强反爬虫技术,最终总是要在浏览器里按照正常的数据格 式显示出来的,所以等这些数据(例如商品价格、月销量、收藏量、评价、月成交记录等等)在浏览器里正常显示后,那么通过浏览器插件接口就可以抓取到这些数 据了。有的公司就是这么做的。

 3、做一个客户端,在客户端里模拟一个浏览器,模拟用户搜索,还是那句话,淘宝无论如何增强反爬虫技术,最终总是要在浏览器里按照正常的数据格式显示出来的,现在很多的刷流量的工具就是这么做的。

     4、通过一些网页分析工具,分析淘宝网页显示过程,找到呈现商品价格、月销量、收藏量、评价、月成交记录等等的 Ajax 链接,也是模拟一个浏览器请求这些 Ajax 链接,从而无须解析网页,直接解析这些 Ajax 返回来的数据就可以了。

由于淘宝对数据的抓取采取的措施越来越严,只用某一种方法有时是不能达到目的的。例如最简便的无疑是第三种,通过网页分析工具,直接找到这些 Ajax 调用,但是淘宝对通过 Ajax 链接调用的次数是有限制的,调用次数一多,触发了淘宝反爬虫引擎,就会出现弹出验证码、或者返回“你已经被反爬虫作弊引擎发现”等等申明,就会抓取不到想 要的这些数据了。所以最好的数据抓取方式就是三种方式相结合。

来自: weibo.com