本篇主要介绍目前网站数据采集的主流方式,之后篇章会介绍客户端数据采集目前主流的实现方式。 目前有很多数据采集云平台,如Google anylytics,百度统计,腾讯统计等等,还有一些平台也非常不错: 一.友盟+,支持移动端和web端数据采集,个性化场景数据定制采集方案。官网给的一些demo可以参考来设计大数据的分析展现,例如:友盟的: https://web./main.php?c=site&a=frame&siteid=1255975670#!/1493738363987/site/overview/1/1255975670/2017-05-02/2017-05-02 百度的: https://tongji.baidu.com/web/5473605/overview/index?siteId=1942168 值得借鉴~
二。count.ly,支持web,iot,移动端数据采集,并且所有相关源码都是开放的,地址:https://github.com/Countly,可以从源代码看一下数据采集实现的思路,基本上和其他家的采集实现方案类似。
三. growingio(除了web外,主推移动端无埋点可配置数据采集)
四。cobub(代码开源,但是github上好久没更新了,貌似~~)
五.神策数据,支持web和移动端数据采集,提供多种语言的sdk。而且支持可视化埋点方案,web数据采集也支持可视化配置埋点.更多内容:https://www./manual/vtrack_intro.html#
六。heap,可视化配置事件(Heap并不自动采集各种行为,而且要你配置,但是它提供了一个非常方便的可视化配置功能)
七。Mouseflow,可记录所有的鼠标滑动轨迹,点击动作,表单项操作等。 还有很多很多...
对于网站采集数据的主流实现方式是通过javascript脚本引入,记录页面动作与变化,搜集数据后作为参数,通过gif图片(gif图片格式请求可以解决跨域问题)请求上报。 比如一些大型网站,可以看到他们的数据采集方式: 淘宝: https://log./1.gif?logtype=1&title=淘宝网 - 淘!我喜欢&pre=https://www.taobao.com/&cache=fda9e4a&scr=1680x1050&cna=5Hb+EOi5CB0CAd3Yh2b/NJpD&spm-cnt=a21bo.50862.0.0.jLJLtF&category=&uidaplus=&aplus&yunid=&tfujsVWMaHw7&asid=AQAAAABhqghZIZwQEwAAAABKVzXhhdT/Jw==&thw=cn&p=1&o=mac&b=firefox52&s=1680x1050&w=gecko&ism=mac&lver=7.2.6&jsver=aplus_std&isAplusInternal=Y&tag=1&stag=-1 聚划算: https://log./v.gif?logtype=1&title=【聚划算】无所不能聚&pre=https://www.taobao.com/&cache=a33321d&scr=1680x1050&cna=5Hb+EOi5CB0CAd3Yh2b/NJpD&spm-cnt=608.2291429.0.0.jlAKVM&category=&uidaplus=&at_bucketid=jhs_ju_1&aplus&&yunid=&tfujsVWMaHw7&trid=0bb44f8b14937400146176466efb6f&asid=AQAAAADuqQhZBJAqAAAAAAC8/B6w8Q5mBg==&sidx=3oCNVu6pCFl4cac9cTewHKaVaGLLd6xM&ckx=jutaobaocom|wwwtaobaocom&thw=cn&p=1&o=mac&b=firefox52&s=1680x1050&w=gecko&ism=mac&lver=7.3.4&jsver=aplus_std&isAplusInternal=Y&tag=1&stag=-1 京东: https://mercury.jd.com/log.gif?t=www.100000&m=UA-J2011-1&pin=-&uid=1819884645&sid=1819884645|1&v=je=0$sc=24-bit$sr=1680x1050$ul=zh-cn$cs=UTF-8$dt=京东(JD.COM)-正品低价、品质保障、配送及时、轻松购物!$hn=www.jd.com$fl=24.0 r0$os=mac$br=firefox$bv=52.0$wb=1484228834$xb=1484228834$yb=1493740206$zb=1$cb=1$usc=direct$ucp=-$umd=none$uct=-$lt=0$ct=1493740205944$tad=-$pinid=-$jdv=122270672|direct|-|none|-|1493740205947$dataver=0.1&ref=&rm=1493740205948
百度: http://hm.baidu.com/hm.gif?cc=0&ck=1&cl=24-bit&ds=1680x1050&et=0&fl=24.0&ja=0&ln=zh-cn&lo=0&nv=1&rnd=204781663&si=e9e114d958ea263de46e080563e254c4&st=3&su=https://www.baidu.com/&v=1.2.14&lv=1&ct=!!&tt=百度新闻搜索——全球最大的中文新闻平台&sn=63188
基本实现方式都是类似的,比如google Analytics,使用的时候先需要在采集数据的页面中引入下面脚本: <!-- Google Analytics --> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www./analytics.js','ga'); ga('create', 'UA-XXXXX-Y', 'auto'); ga('send', 'pageview'); </script> <!-- End Google Analytics --> 页面加载的时候会执行脚本,下载analytics.js,这个js文件中定义了数据搜集的函数和变量,用户可以自定义事件,基本通过一个ga函数不同传参即可实现,上面就初始化了ga的create和send两个动作,一个创建跟踪器对象,一个发送页面浏览的动作给服务器,send函数的实现就是发送一个gif图片请求,把搜集的参数拼接到url中。你可以定义自己的事件,详细可以参考: https://developers.google.com/analytics/devguides/collection/analyticsjs/ 另外可以看一下google analytics的js分析代码(之前版本ga.js)实现来加深了解,下载地址 http://download.csdn.net/detail/xuannxuan/5276625
个人设计的web采集数据方案:
|
|