关键字:网站统计 设计 实现 
作者:方倍工作室
原文: http://www.cnblogs.com/txw1958/p/website-statistic-analysis.html

本文简要介绍网站统计功能的设计与实现。

本文分为以下五个部分:

  1. 埋点设计与实现
  2. 页面引入
  3. 数据接收
  4. 数据入库
  5. 统计分析

一、埋点设计与实现

在JavaScript中,包含了很多对象,可以用于获取用户的数据。比如Document对象用于分析每个载入浏览器的 HTML 文档,可以获得当前文档的域名、URL、及当前文档的标题;Navigator对象包含有关浏览器的信息,可以得到运行浏览器的userAgent的值,当前系统的语言;而Screen对象则可以获得当前屏幕的相关信息。通过这些对象,我们可以得到一个相当完备的用户信息。
另外,通过其他接口,还可以得到用户的mac地址及IP地址,继而可以分析出用户的机器及所在省市区地址等。

我们使用javascript获取访问信息,将统计代码伪装成图片通过浏览器访问触发,代码实现如下。

二、页面引入

在要做统计的web页面中引入统计脚本,并主动将其他接口获得的mac及ip地址另外传入,一个简易的页面设计如下代码所示。

三、数据接收

在后台接口中接收上报上来的数据。我们使用php程序获取get及post的数据来接收。

上述接口程序获得的文件日志中数据如下所示。

17:38:25 http://www.fangbei.org?domain=www.fangbei.org&url=http%3A%2F%2Fwww.fangbei.org%2F_test%2Fstat.html&title=%e6%96%b9%e5%80%8d%e5%b7%a5%e4%bd%9c%e5%ae%a4&referrer=&sh=1920&sw=1080&cd=24&useragent=Mozilla%2F5.0%20(Linux%3B%20U%3B%20Android%205.1.1%3B%20zh-cn%3B%20Mi-4c%20Build%2FLMY47V)%20AppleWebKit%2F533.1%20(KHTML%2C%20like%20Gecko)Version%2F4.0%20MQQBrowser%2F5.4%20TBS%2F025483%20Mobile%20Safari%2F533.1%20MicroMessenger%2F6.3.9.48_refecd3e.700%20NetType%2FWIFI%20Language%2Fzh_CN&platform=Linux%20aarch64&language=zh-CN&usermac=185E0F88F5EF&apmac=185E0F88F5F0
17:38:25
17:38:25 _GET: Key: domain; Value: www.fangbei.org
17:38:25 _GET: Key: url; Value: http://www.fangbei.org/_test/stat.html
17:38:25 _GET: Key: title; Value: 方倍工作室
17:38:25 _GET: Key: referrer; Value:
17:38:25 _GET: Key: sh; Value: 1920
17:38:25 _GET: Key: sw; Value: 1080
17:38:25 _GET: Key: cd; Value: 24
17:38:25 _GET: Key: useragent; Value: Mozilla/5.0 (Linux; U; Android 5.1.1; zh-cn; Mi-4c Build/LMY47V) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025483 Mobile Safari/533.1 MicroMessenger/6.3.9.48_refecd3e.700 NetType/WIFI Language/zh_CN 17:38:25 _GET: Key: platform; Value: Linux aarch64 17:38:25 _GET: Key: language; Value: zh-CN 17:38:25 _GET: Key: usermac; Value: 185E0F88F5EF 17:38:25 _GET: Key: apmac; Value: 185E0F88F5F0 17:38:43 http://www.fangbei.org?domain=www.fangbei.org&url=http%3A%2F%2Fwww.fangbei.org%2F_test%2Fstat.html&title=%e6%96%b9%e5%80%8d%e5%b7%a5%e4%bd%9c%e5%ae%a4&referrer=&sh=1184&sw=720&cd=24&useragent=Mozilla%2F5.0%20(Linux%3B%20U%3B%20Android%204.4.2%3B%20zh-cn%3B%20H60-L01%20Build%2FHDH60-L01)%20AppleWebKit%2F533.1%20(KHTML%2C%20like%20Gecko)Version%2F4.0%20MQQBrowser%2F5.4%20TBS%2F025489%20Mobile%20Safari%2F533.1%20MicroMessenger%2F6.3.9.48_refecd3e.700%20NetType%2FWIFI%20Language%2Fzh_CN&platform=Linux%20armv7l&language=zh-CN&usermac=185E0F88F5EF&apmac=185E0F88F5F0 17:38:43 17:38:43 _GET: Key: domain; Value: www.fangbei.org 17:38:43 _GET: Key: url; Value: http://www.fangbei.org/_test/stat.html 17:38:43 _GET: Key: title; Value: 方倍工作室 17:38:43 _GET: Key: referrer; Value: 17:38:43 _GET: Key: sh; Value: 1184 17:38:43 _GET: Key: sw; Value: 720 17:38:43 _GET: Key: cd; Value: 24 17:38:43 _GET: Key: useragent; Value: Mozilla/5.0 (Linux; U; Android 4.4.2; zh-cn; H60-L01 Build/HDH60-L01) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025489 Mobile Safari/533.1 MicroMessenger/6.3.9.48_refecd3e.700 NetType/WIFI Language/zh_CN 17:38:43 _GET: Key: platform; Value: Linux armv7l 17:38:43 _GET: Key: language; Value: zh-CN 17:38:43 _GET: Key: usermac; Value: 185E0F88F5EF 17:38:43 _GET: Key: apmac; Value: 185E0F88F5F0 17:38:50 http://www.fangbei.org?domain=www.fangbei.org&url=http%3A%2F%2Fwww.fangbei.org%2F_test%2Fstat.html&title=%e6%96%b9%e5%80%8d%e5%b7%a5%e4%bd%9c%e5%ae%a4&referrer=&sh=592&sw=360&cd=32&useragent=Mozilla%2F5.0%20(Linux%3B%20Android%204.4.2%3B%20H60-L01%20Build%2FHDH60-L01)%20AppleWebKit%2F537.36%20(KHTML%2C%20like%20Gecko)%20Version%2F4.0%20Chrome%2F30.0.0.0%20Mobile%20Safari%2F537.36&platform=Linux%20armv7l&language=zh-CN&usermac=185E0F88F5EF&apmac=185E0F88F5F0 17:38:50 17:38:50 _GET: Key: domain; Value: www.fangbei.org 17:38:50 _GET: Key: url; Value: http://www.fangbei.org/_test/stat.html 17:38:50 _GET: Key: title; Value: 方倍工作室 17:38:50 _GET: Key: referrer; Value: 17:38:50 _GET: Key: sh; Value: 592 17:38:50 _GET: Key: sw; Value: 360 17:38:50 _GET: Key: cd; Value: 32 17:38:50 _GET: Key: useragent; Value: Mozilla/5.0 (Linux; Android 4.4.2; H60-L01 Build/HDH60-L01) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36 17:38:50 _GET: Key: platform; Value: Linux armv7l 17:38:50 _GET: Key: language; Value: zh-CN 17:38:50 _GET: Key: usermac; Value: 185E0F88F5EF 17:38:50 _GET: Key: apmac; Value: 185E0F88F5F0

四、数据入库

要做统计分析,最终数据都要放放数据库,

数据库表设计如下

入库后如下所示

五、统计分析

最后,将获得的数据进行分析

比如昨天访问量的SQL查询语句如下

六、图形化输出

其他生成的统计图表如下

基于访问次数的二次分析-客户忠诚度的统计如下

转载于:https://www.cnblogs.com/txw1958/p/website-statistic-analysis.html

网站统计功能的设计与实现相关推荐

  1. 网站统计功能的设计和实现

    本文简要介绍网站统计功能的设计与实现. 本文分为以下五个部分: 埋点设计与实现 页面引入 数据接收 数据入库 统计分析 一.埋点设计与实现 在JavaScript中,包含了很多对象,可以用于获取用户的 ...

  2. java实现网站统计功能_网站统计功能的设计与实现

    本文分为以下五个部分: 埋点设计与实现 页面引入 数据接收 数据入库 统计分析 一.埋点设计与实现 在JavaScript中,包含了很多对象,可以用于获取用户的数据.比如Document对象用于分析每 ...

  3. clicki网站统计系统logo设计

    clicki网站统计系统logo 小编最近给博客增加了个个性的统计工具<clicki网站统计>刚开始就因为其独特的界面所吸引,其中很多工具都显得很实用,其中最经典的应该莫属于Widgets ...

  4. 简单网站统计功能的实现 PV IP 真实访客数(UV)

    主要统计三个数值,网站的pv 和ip 以及UV 真实访客数 因为有详细的统计记录,所以可以实现的功能还有很大的扩展!把tallydate使用内存表的话,速度就会更快了 需要用到二张表 CREATE T ...

  5. 网站评论功能数据库设计和开发

    本文主要分享了我在设计评论模块中的一些心得,希望对读者有些许帮助. 需求分析 现阶段评论做的最好的我想应该是网易新闻(app)里面的评论模块了,其"盖楼"的方式让人印象深刻,评论已 ...

  6. 如何设计电子商务网站的功能

    摘要:本文从商家的商业战略规划(客户关系管理和大规模定制)以及消费者购买决策支持这两个方面分析了应如何进行电子商务网站功能设计,提出了网站设计应该是以企业商业战略为主导,以客户为中心,以技术为辅助的观 ...

  7. 利用HttpSessionListener实现网站在线人数统计功能

    为什么80%的码农都做不了架构师?>>>    在网站中经常需要进行在线人数的统计.过去的一般做法是结合登录和退出功能,即当用户输入用户名密码进行登录的时候计数器加1,然后当用户点击 ...

  8. 自建站的博客网站添加百度统计功能统计流量

    有了自己的网站后,想要知道自己网站的访问情况怎么办,有两种方法,一种是自己写代码进行ip地址获取并解析IP地址来源从而得到IP地址属地,进一步进行统计.另一种方法就是使用现有的统计工具,我这里使用的是 ...

  9. PHP设计网站登录功能

    设计一个网站登录功能的基本步骤如下: 创建登录表单:在网站上创建一个HTML表单,包含用户名和密码输入框.表单应提交到一个PHP文件,例如login.php. 验证输入:在login.php文件中,验 ...

最新文章

  1. mysql压缩表语句_MYSQL静态表、动态表、压缩表总结
  2. websocket / 使用 wireshark 分析 websocket 连接过程
  3. Spingboot定时任务与多线程
  4. Java基础-Collection集合接口(List及Set)
  5. php mysql切换版本5.7_phpstudy里升级mysql版本到5.7
  6. Oracle 备份与恢复学习笔记(14)
  7. 6、vueJs基础知识06
  8. 手撸一个基于Springboot+Vue的书籍论坛系统,可用于课程设计和毕业设计或者练手
  9. 数学作图工具_推荐工作学习中用到的三款在线作图神器!
  10. st7789 旋转_玩转 ESP32 + Arduino(二十八) TFT_eSPI库驱动ST7789
  11. npm ------ npm 安装删除命令(rimraf)删除本地依赖包
  12. Win10系统Anaconda+TensorFlow+Keras 环境搭建教程
  13. 手游刚开服就就被攻击怎么办?如何防御DDOS
  14. OpenGL---GLUT教程(十) GLUT菜单
  15. Beyond Compare v3.3.13 中文版
  16. 高通终端修改nv值后,不重启终端即生效
  17. DNF域名解析全过程
  18. 用CSS样式完成作业
  19. 小改下把tio-websocket-showcase变成可集群方式
  20. TCPMP中的Splitter机制

热门文章

  1. python123第六周作业,马哥2016全新Linux+Python高端运维班第六周作业
  2. 每个电商企业都应该分析的9种数据
  3. linux 如何选择新的内核,如何更新内核??__boot_内核_vmlinuz_linux_System__169IT.COM
  4. 交换排序图解_排序算法(一):初级比较排序
  5. python2升级_Python2 升级 Python3
  6. 目标检测(三)--DPM
  7. 汇编学习--7.10--程序编写
  8. 编译原理教程_3 词法分析
  9. “21天好习惯“第一期-2
  10. Hive metastore入门