开发者社区> 沉默术士> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

简介:
+关注继续查看

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


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

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


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


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


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


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


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

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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
《淘宝推荐业务介绍》
立即下载
京东3D数据平台
立即下载
外卖广告架构实践
立即下载