如何抓取天猫和淘宝的运营数据?

  1. 云栖社区>
  2. 博客>
  3. 正文

如何抓取天猫和淘宝的运营数据?

沉默术士 2017-05-02 11:54:00 浏览1038
展开阅读全文

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


技术向:基于java社会化海量数据采集爬虫框架搭建(附代码)

数据收集或比数据挖掘更有意义


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


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


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


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


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

本文来源于"中国人工智能学会",原文发表时间"2015-03-06"

网友评论

登录后评论
0/500
评论
沉默术士
+ 关注