数据采集实战:电商详情页数据埋点
本文我们以电商产品的商品详情页为例,介绍如何做用户浏览以及点击行为的数据埋点。
案例中包含一个页面(商品详情页)以及该页面上的关键按钮(加购、收藏按钮),具体页面如下图所示。
(1)第一步是采集通用信息,包括设备及浏览器信息、数据采集SDK信息、网络信息、经纬度、时间信息等。电商数据采集目前主流的方式是通过电商API接口去采集商品详情数据。只要集成了数据采集SDK,数据采集SDK就会自动收集这些通用信息。具体字段参考表2-1。
表2-1 通用信息字段
字段类型 | 字段中文名称 | 字段英文名 | 字段类型 | 说明 | 举例 |
设备及浏览器信息 | 操作系统名称 | $os | string | 终端操作系统 | Windows |
操作系统版本 | $os_version | string | 终端操作系统的具体版本号 | 10 | |
屏幕高度 | $screen_height | numBEr | 屏幕的物理高度 | 1024 | |
屏幕宽度 | $screen_width | numBEr | 屏幕的物理宽度 | 768 | |
浏览器名称 | $browser | string | 访问该系统当前浏览器的名字 | IE | |
浏览器版本 | $browser_version | string | 当前浏览器版本 | 10.0 | |
当前SDK信息 | SDK名称 | $lib | string | 当前埋点采用的SDK的名称 | Jsdk |
SDK版本 | $lib_version | string | 当前SDK的版本号 | 1.6.0 | |
网络信息 | IP地址 | ip | string | 当前用户的公网IP | 10.190.22.91 |
国家 | country | string | 当前用户所在国家 | 中国 | |
省份 | province | string | 所在省份/州 | 广东 | |
城市 | city | string | 所城市 | 广州 | |
经纬度 | 纬度 | latitude | string | 当前用户所在纬度 | |
经度 | longitude | string | 当前用户所在经度 | ||
时间信息 | 服务器时间 | server_time | float | 事件发送到服务端处理后的时间 | |
客户端时间 | clienttime | float | 事件发生时客户端时间 | ||
来源渠道 | 流量来源ID | trafficsourceid | string | 识别用户是从哪里来的编码,也就是访问渠道ID | 如BaiduSEM等 |
(2)第二步是采集应用的公共信息,主要包含平台的信息和页面信息。具体字段参考表2-2。
表2-2 应用公共信息字段
字段类型 | 字段中文名 | 字段英文名 | 字段 类型 | 说明 | 举例 |
页面信息 | 唯一标识 | $distinct_id | string | 用户的唯一标识,如果有登录,则在传入登录账号;否则传入相应的设备ID | 13900000000 |
会员ID(登录名或者手机号) | $user_id | string | 用户注册的会员ID,如果未登录则为空 | ||
手机号码 | $phone | string | 用户登录的手机号码 | ||
页面名称 | page_name | string | 用户当前进入的是哪一个页面 | 比如Home主页 | |
页面浏览时长 | view_dur | float | 用户从进入页面到离开页面的时长 | 毫秒 | |
当前页面urL | $url_path | string | 当前页面的路径 | 如A/B/C | |
前向urL | $referrer | string | 跳转至当前页面的前向页面url | 如A/B/C | |
事件名称 | event | string | 只有两种时间类型:浏览及点击 浏览:$pageview 点击:$pageclick | ||
事件类型 | Event_type | string | 仅针对点击事件($pageclick)的情况才传入。 需要传入按钮的名称,例如是收藏按钮,则传入collect;加入购物车,则传入addshop | ||
$是否首次访问 | $is_first_time | bool | 是否首次访问 | ||
$是否首日访问 | $is_first_day | bool | 是否首日访问 | ||
平台信息 | 平台名称 | platform | string | 当前平台ID |
(3)第三步是要制作埋点的页面列表,这里只列举商品详情页涉及的相关业务参数。当用户进入商品详情页,系统要记录2个关键信息:第1个信息是当前商品的ID(commodityid),有了商品ID,就可以通过数据库查询商品的所有信息;
第2个信息是用户从哪个位置进入商品详情页,可以通过坑位ID(spmid)来记录流量的来源,有了流量的来源,我们就可以更加清楚用户访问的来龙去脉。具体字段参考表2-3。
表2-3 埋点页面列表
序号 | 页面名称 | 字段英文名称 | 字段中文名 | 字段类型 | 字段描述 |
1 | ProductDetail | commodityid | 商品ID | string | 用户浏览商品详情页传回来的相应商品id |
spmid | 流量位ID | string | 用来记录从哪个流量位进入商品详情页 |
(4)第四步是制作当前页面需要埋点的按钮列表。在本案例中,商品详情页包含两个关键按钮:第1个是收藏按钮(collect);第2个加购按钮(addshoppingcart)。
收藏按钮需要记录用户收藏商品的ID(commodityid)、商品当时的末级分类(lastcommodity)。
加购按钮需要记录当前加购商品的ID(commodityid)、skuID(Stock keeping Unit ID,即商品的库存单位ID,比如一件衣服有白色、黑色两种颜色,那么每种颜色都有一个库存单位ID)、商品的单价(pricepercommodity)、商品的加购数量(commoditynumber)。
有了这些埋点信息,我们就可以更加清楚地知道用户加购或者收藏了哪个商品、加购的是哪个颜色的商品、加购的金额等用户行为信息。具体字段参考表2-4。
表2-4 按钮埋点列表
事件名 | 字段英文名 | 字段中文名 | 字段类型 | 说明 |
收藏 collect | commodityid | 商品ID | string | 用户点击收藏按钮传回来的商品ID |
加入进货车(列表商品清单) addshoppingcart | commodityid | 商品ID | string | 用户点击加入进货车按钮传回来的商品ID |
skuid | skuID | string | 用户点击加入进货车按钮传回来的skuID | |
pricepercommodity | 商品单价 | number | 用户点击加入进货车按钮传回来的商品单价 | |
commoditynumber | 商品加购数量 | number | 用户点击加入进货车按钮传回来的商品数量 |
相关文章:
数据采集实战:电商详情页数据埋点
本文我们以电商产品的商品详情页为例,介绍如何做用户浏览以及点击行为的数据埋点。 案例中包含一个页面(商品详情页)以及该页面上的关键按钮(加购、收藏按钮),具体页面如下图所示。 (1…...

计算机网络——计算大题(七)
前言: 最近也是在准备计算机考试,我们的考试形式是上机考试,所以可能有些计算题是会给提供思路的,前面已经对本学期的计算机网络知识有了一个简单的认识与了解,现在我们就来对计算大题进行一个学习吧,这里的…...

子网掩码与IP段计算
一.什么叫子网掩码: 子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。 子网掩…...

【译文】IEEE白皮书 6G 太赫兹技术的基本原理 2023版
第一章 简介 太赫兹波是介于微波和光波之间的光谱区域,频率从 0.1THz ~ 10THz 之间,波长在 3mm ~ 30μm 之间。提供大块连续的频带范围以满足对 Tbit/s 内极高数据传输速率的需求,使该区域成为下一代无线通信(6G)的重…...
AUTOSAR从入门到精通-网络通信(UDPNm)(三)
目录 前言 原理 网络状态 初始化 执行 处理器架构 时间参数...
ubuntu 使用openssl制作一个自签名证书
我们需要为浏览器创建自己的根CA证书来信任自签名证书。因此,让我们首先创建根CA证书 创建根CA证书 创建文件夹 mkdir openssl && cd openssl执行以下openssl命令,生成 rootCA.key 以及 rootCA.crt. 用你的域名或者ip地址替换demo.mlopshub.c…...

WPF+Halcon 培训项目实战(1-5):Halcon安装,图像处理,Halcon简单模板匹配
文章目录 前言相关链接项目专栏我个人对就业市场的评价Halcon安装实战1-4:Halcon基础实战5:模板匹配[形状匹配]实战代码 结尾 前言 为了更好地去学习WPFHalcon,我决定去报个班学一下。原因无非是想换个工作。相关的教学视频来源于下方的Up主…...

虚函数的讲解
文章目录 虚函数的声明与定义代码演示基类Person派生类Man派生类Woman 测试代码动态绑定静态绑定访问私有虚函数总结一下通过成员函数指针调用函数的方式 虚函数的声明与定义 虚函数存在于C的类、结构体等中,不能存在于全局函数中,只能作为成员函数存在…...

Java强软弱虚引用
面试: 1.强引用,软引用,弱引用,虚引用分别是什么? 2.软引用和弱引用适用的场景? 3.你知道弱引用的话,能谈谈WeakHashMap吗? 目录 一、Java引用 1、强引用(默认支持模式…...

QCharView使用
QCharView概念:title、系列、图标Chart、视图 说明: 需要添加Qt组件charts 在使用QChart或者QChartView之前需要添加宏定义QT_CHARTS_USE_NAMESPACE (其实是使用了命名空间),不然不能识别QChart或者QChartView 3.在添加宏定义QT_CHARTS_USE_N…...

华为hcia之ipv6实验手册
R3: dhcp enable ipv6 dhcpv6 pool test address prefix 2000:23::/64 excluded-address 2000:23::2 dns-server 2000:23::2 interface GigabitEthernet0/0/0 ipv6 enable ipv6 address 2000:12::2/64 ipv6 address auto link-local undo ipv6 nd ra halt //无状态配置 inter…...

算法设计与分析-图算法小结BFS/DFS/Topologic/Dijkstra/Floyd/最大流
图 注:CSDN貌似不支持较长公式,可以复制到Markdown编辑器查看 图的表示 邻接矩阵 空间复杂度 Θ ( V 2 ) Θ(V^2) Θ(V2)邻接链表 空间复杂度 Θ ( V E ) Θ(VE) Θ(VE) BFS 邻接链表 时间复杂度 Θ ( V E ) Θ(VE) Θ(VE) void BFS(Graph G, int v) {//…...
CentOS 8 安装指定版本ansible
背景:想要练习ansible使用,用于面试,结果使用centos 8 的yum安装失败,提示版本不兼容(指的是python版本),故而使用python来安装指定版本的ansible,特此记录 环境:win11虚…...
策略模式(及案例)
策略模式 1.策略接口 定义一组算法或操作的通用接口,通常是一个抽象类或接口。该接口声明了策略类所必须实现的方法。 示例: class Strategy {doOperation() {} }2.具体策略 实现策略接口,提供具体的算法实现。每个具体策略类负责处理一…...

苹果CMS超级播放器专业版无授权全开源,附带安装教程
源码介绍 超级播放器专业版v1.0.8,内置六大主流播放器,支持各种格式的视频播放,支持主要功能在每一个播放器内核中都相同效果。 搭建教程 1.不兼容IE浏览器 2.php版本推荐7.4 支持7.1~7.4 3.框架引入不支持同时引入多个播放器 json对接教…...

项目记录:利用Redis实现缓存以提升查询效率
一、概述 当我们查询所有数据时,如果缓存中没有,则去数据库查询,如果有,直接查缓存的数据就行。注意定期更新缓存数据。 二、主体代码 private static final String ROOM_SCHEDULES_HASH "RoomSchedules";Overridepu…...

腾讯云16核32G28M轻量服务器CPU流量性能测评
腾讯云轻量16核32G28M服务器28M公网带宽下载速度峰值可达3584KB/s,折合3.5M/秒,系统盘为380GB SSD盘,6000GB月流量,折合每天200GB流量。腾讯云百科txybk.com来详细说下腾讯云轻量应用服务器16核32G28M配置性能、CPU主频型号、公网…...

【并发设计模式】聊聊等待唤醒机制的规范实现
在多线程编程中,其实就是分工、协作、互斥。在很多场景中,比如A执行的过程中需要同步等待另外一个线程处理的结果,这种方式下,就是一种等待唤醒的机制。本篇我们来讲述等待唤醒机制的三种实现,以及对应的应用场景。 G…...

CentOS:docker同一容器间通信
docker同一容器中不同服务以别名访问 1、创建bridge网络 docker network create testnet 2、查看Docker网络 docker network ls 3、运行容器连接到testnet网络 使用方法:docker run -it --name <容器名> —network --network-alias <网络别名> <…...

数据治理:释放数据价值的关键
随着数字化时代的到来,数据已成为组织和企业最重要的资产之一。然而,数据的快速增长和复杂性也给数据管理带来了巨大的挑战。为了确保数据的质量、安全性和合规性,数据治理已成为组织和企业必须面对的重要问题。数据治理是数据要素市场建设的…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
tomcat入门
1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效,稳定,易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...