基于跨境电商场景的智能商品管理系统,采用Bootstrap+Django+MySQL技术架构,实现用户行为追踪、智能推荐、多维度商品展示等核心功能
1.绪论
1.1研究背景与意义
1.1.1研究背景
随着2020年《海南自由贸易港建设总体方案》的正式公布,离岛免税购物政策成为第一个实质性落地实施的自由贸易港优惠政策。受疫情全球化的影响,许多消费者的海外购物需求受到了限制,此时离岛免税政策提供优惠的购物条件,吸引这部分消费回流到国内减少外汇流出。
因此,随着美妆行业的蓬勃发展,彩妆类商品在免税市场中占据着重要地位。海口GDF免税城作为重要的免税购物场所,拥有丰富的彩妆品牌和商品资源。本研究旨在通过对该免税城购物平台上彩妆类商品的数据进行深入研究,挖掘消费者行为模式、偏好趋势等有价值信息,为优化平台商品展示、精准营销、库存管理等提供数据支持,从而提升消费者购物体验,提高平台运营效率和销售额。
1.2.2研究意义
彩妆类商品在海口GDF免税城购物平台的数据研究及应用是数字化运营和服务创新的积极探索。通过运用前沿的数据分析技术,深入挖掘消费者对彩妆产品的需求偏好和行为模式,为平台优化商品展示、精准营销以及库存管理等提供有力支持,从而为用户提供更优质、个性化的服务。
1.2国内外研究现状
1.2.1国外研究现状
国外免税店的发展经历了从起步到全球化的演变过程。最初,免税店主要设立在国际机场,为国际旅客提供免征关税和税收的商品。随着时间的推移,免税店逐渐扩展到边境商店、国际水域的游轮和渡轮上,以及国际航班上。在某些地区,如非欧盟的欧洲、澳大拉西亚、中东和拉丁美洲,旅客还可以选择在抵达时购买免税商品。
免税购物需求的准确预测在战略和运营决策过程中起着举足轻重的作用。尽管有大量关于免税购物环境下的可持续性、运营管理和消费者行为的文献,但明显缺乏用于精确需求预测的集成端到端解决方案[15]。
1.2.2国内研究现状
离岛免税购物政策是促进消费内循环和推动国内国际双循环相互交融的一项战略性税收工具,也是海南建设自由贸易港和国际旅游岛的重要支持政策。
国内免税市场近年来发展迅速,彩妆类商品成为其中的热门品类。学者们对免税购物消费者行为、市场趋势等方面进行了研究。例如,有研究分析了国内不同地区免税店消费者的购买偏好差异,发现一线城市消费者对国际高端彩妆品牌的需求较高,而二三线城市消费者更注重性价比产品。同时,随着电商平台的兴起,关于线上美妆购物的数据研究也日益增多,如通过对用户评论数据的情感分析来了解消费者对彩妆产品的满意度。然而,针对特定免税城(如海口 GDF 免税城)彩妆类商品购物平台的深入数据研究相对较少。
1.3主要研究内容与技术路线
1.3.1研究内容
海口GDF免税城彩妆数据平台的主要研究内容如下:
用户行为数据构建:设计多维度数据埋点方案,记录用户浏览、评分、购买、收藏等交互数据,建立涵盖多个指标的彩妆商品分析模型。
智能推荐系统开发:基于协同过滤算法实现推荐机制,结合用户历史行为(根据用户评分和浏览量等行为),构建推荐模型。
数据可视化分析平台:开发商品数据大屏,集成Echarts可视化技术,实现销售趋势分析、TOP10热销品排行、用户画像分析等功能。
1.3.2技术路线
本次研究拟采用pycharm开发平台,选择python3作为编程语言,依靠python的第三方库numpy、pandas、Echarts、Django、sklearn等工具辅助构造开发环境,完成可视化绘图与建模分析等操作。研究拟进行主要步骤如下流程如图 1所示:
图 1 技术路线
2.相关技术
2.1个性化推荐技术
基于协同过滤、基于内容推荐等方法的理论基础。协同过滤算法通过分析用户之间的行为相似性,为目标用户推荐其他相似用户喜欢的彩妆产品;基于内容推荐则根据用户历史购买或浏览的彩妆产品特征,推荐具有相似特征的其他产品;在彩妆购物平台上,为消费者提供符合其个人喜好和需求的个性化彩妆产品推荐,提升用户购物体验和购买转化率。
2.2 Django框架
Django是一个高级Python Web框架,它鼓励快速开发和简洁、实用的设计。Django基于MTV(Model-Template-View)架构,提供了强大的功能来简化Web应用的开发过程。
2.3 Boostrap框架
Bootstrap是一个流行的开源前端框架,由Twitter开发,旨在简化响应式Web设计的开发。它提供了一套预定义的HTML、CSS和JavaScript组件,帮助开发者快速构建现代化的网站和应用。
3.系统需求分析
3.1系统功能性需求分析
本系统围绕彩妆商品数据驱动运营的核心目标,构建以下功能性需求:
1. 用户端功能需求
商品多维度展示:支持按销量、评分、发布时间动态排序,实现“浏览/评分/购买TOP10榜单”的更新与展示。
个性化推荐引擎:基于用户行为(浏览、收藏)构建推荐模型,在推荐模块实现协同过滤推荐(用户相似度计算)。
个人管理:支持购物车下单,能够查看已评论的商品,对自己评分的商品进行查看和管理。
2. 后台管理需求
管理功能:能支持数据的管理,包括增删改查,以及系统日志管理、权限管理等。
数据监控分析:开发数据大屏,展示后台关键指标:销售额、订单数、热销品分布,用户评论分析等。
系统通过上述功能构建完整的“数据采集-分析-决策”闭环,支撑免税城彩妆品类的精细化运营与数字化转型。
3.2系统用例分析
3.2.1 登录注册功能
用户登录到系统的测试用例描述如表3.1所示,用户可以在系统登录页面输入正确的用户名和密码进行登录。
表3.1 登录功能测试用例
描述项目 | 说明 |
用例名称 | 系统用户登录 |
标识符 | 201 |
用例描述 | 描述了系统用户登录系统需要的整个过程 |
参与者 | 用户 |
前置条件 | 系统用户需要输入正确的用户名和密码 |
后置条件 | 系统给出登录成功的提示并跳转到系统界面 |
基本操作流程 | 1.打开前台页面2.输入用户名和密码并输入身份3.点击登录 |
分支流程 | 登录出错无法进行商品推荐 |
异常流程 | 用户未注册,登录失败。用户名或密码错误,登录失败 |
用户在系统中进行注册的测试用例描述如表3.2所示,未进行注册的用户可以在系统注册页面输入未注册过的用户名及密码进行注册。
表3.2 注册功能测试用例
描述项目 | 说明 |
用例名称 | 系统用户注册 |
标识符 | 201 |
用例描述 | 描述了系统用户注册账号需要的整个过程 |
参与者 | 未进行注册的用户 |
前置条件 | 系统用户需要输入未注册过的用户名 |
后置条件 | 系统给出注册成功的提示并跳转到登录界面 |
基本操作流程 | 1.打开前台页面2.输入用户名和密码并选择身份3.点击注册 |
分支流程 | 注册出错无法进入注册完成 |
异常流程 | 用户输入已经注册过的账号,登录失败。 |
3.2.2 展示评分最多的商品
用例用于展示评分最多的商品列表,用户可以通过该页面查看商品的评分情况、基本信息(如名称、商家、价格、描述等)以及与评分相关的数据。用户可以通过分页功能查看多个商品,获取更丰富的商品信息。用例描述如表3.3所示。
描述项目 | 说明 |
用例名称 | 展示评分最多的商品 |
标识符 | 201 |
用例描述 | 描述了显示商品的详细信息,包括商品名称、简介、商家、价格、评分等的整个过程 |
参与者 | 普通用户 |
前置条件 | 无 |
后置条件 | 系统跳转到其他界面 |
基本操作流程 | 1.用户请求评分最多的商品页面;2.后端处理:3; 前端展示:4用户分页浏览: |
分支流程 | 系统需要评分才可以显示评分最多商品 |
异常流程 | 主页异常无法进入这个页面。 |
3.2.3 展示浏览最多的商品
用户在系统中进行浏览量展示的测试用例描述如表3.3所示,如果在当前页面没有符合条件的商品,页面会提示“对不起没有商品”。
表3.3 浏览最多的商品
描述项目 | 说明 |
用例名称 | 展示浏览最多的商品 |
标识符 | 201 |
用例描述 | 描述了用于展示浏览最多的商品列表,用户可以通过该页面查看商品的浏览量、基本信息(如名称、商家、价格、描述等)以及与浏览相关的数据。用户可以通过分页功能浏览多个商品,了解哪些商品受到了最多用户的关注。 |
参与者 | 普通用户 |
前置条件 | 该商品存在 |
后置条件 | 系统跳转到其他界面 |
基本操作流程 | 1.用户请求浏览最多的商品页面;2.后端处理:3; 前端展示:4用户分页浏览: |
分支流程 | 系统需要按浏览量排序 |
异常流程 | 主页异常无法进入这个页面。 |
3.2.4 展示购买最多的商品
用户在系统中进行购买最多展示的测试用例描述如表3.4所示,如果在当前页面没有符合条件的商品,页面会提示“对不起没有商品”。
表3.4 购买最多的商品
描述项目 | 说明 |
用例名称 | 展示购买最多的商品 |
标识符 | 201 |
用例描述 | 描述了用于展示购买最多的商品列表,用户可以通过该页面查看商品的购买量、基本信息(如名称、商家、价格、描述等)以及相关的数据。用户可以通过分页功能浏览多个商品,了解哪些商品受到了最多用户的关注。 |
参与者 | 普通用户 |
前置条件 | 该商品存在 |
后置条件 | 系统跳转到其他界面 |
基本操作流程 | 1.用户请求购买最多的商品页面;2.后端处理:3; 前端展示:4用户分页浏览: |
分支流程 | 系统需要按购买量排序 |
异常流程 | 主页异常无法进入这个页面。 |
3.2.5 展示猜你喜欢的商品
用户在系统中进行猜你喜欢商品展示的测试用例描述如表3.5所示,如果在当前页面没有符合条件的商品,页面会提示“对不起没有商品”。
表3.5猜你喜欢的商品
描述项目 | 说明 |
用例名称 | 展示猜你喜欢的的商品 |
标识符 | 201 |
用例描述 | 该用例旨在展示一组“猜你喜欢”的商品列表,用户可以通过该页面查看商品的相关信息。商品是随机推荐的,每次加载页面时,商品的顺序都会有所不同。用户可以浏览不同商品的详细信息,同时支持分页功能,允许用户逐页查看更多的推荐商品。 |
参与者 | 普通用户 |
前置条件 | 用户需要登录 |
后置条件 | 登陆后自动调转这个页面,且推荐商品 |
基本操作流程 | 1.用户请求猜你喜欢商品页面:2.后端处理:3; 前端展示:4用户分页浏览: |
分支流程 | 用户登录 |
异常流程 | 若不登录,系统会提示登录注册才能进入。 |
3.2.6 用户推荐的功能
用户在系统中进行用户推荐功能的测试用例描述如表3.5所示,如果在当前页面没有符合条件的商品,页面会提示“对不起没有商品”。
表3.6用户推荐功能
描述项目 | 说明 |
用例名称 | 用户推荐功能 |
标识符 | 201 |
用例描述 | 用例为用户提供基于其行为或历史的商品推荐列表。用户登录后,根据其个人信息或历史数据,系统会展示一组个性化推荐的商品。该推荐结果会缓存一段时间,以提高性能并减少重复计算。如果缓存未命中,系统会通过调用推荐算法生成新的商品推荐列表。 |
参与者 | 普通用户 |
前置条件 | 用户需要登录 |
后置条件 | 登陆后自动调转这个页面,且推荐商品 |
基本操作流程 | 1.用户请求推荐商品页面:2.前端处理请求:3; 后端处理请求:4后端返回数据:5.前端展示商品信息;6.用户分页浏览: |
分支流程 | 用户登录 |
异常流程 | 若不登录,系统会提示登录注册才能进入。 |
4.系统设计
4.1系统功能设计
该系统为海口GDF免税城平台提供全面的商品浏览与管理功能,特别以彩妆类商品为例,支持用户的个性化推荐与管理功能,并提供后台数据分析与管理功能。系统采用前端基于Bootstrap框架、后端使用Django框架开发,数据库采用MySQL存储数据。功能设计如下图4-1所示,包括前端和后端功能两个方面:
图 4-1 系统功能图
4.2系统时序图设计
4.2.1 登录注册功能
用户注册功能允许新用户创建账户并访问系统的各项服务。
- 注册功能时序图
用户登录功能负责验证用户身份并授权用户访问系统。
- 登录功能时序图
展示了用户请求评分最多商品页面的流程,包括从前端发起请求到后端返回数据,再到前端渲染和分页的整个过程。
4.2.3 展示浏览最多的商品
用户请求并浏览浏览最多商品的整个过程。其功能时序图如图4-4所示。
4.2.4 展示购买最多的商品
用户请求并浏览购买最多商品的整个过程。其功能时序图如图4-5所示。
4.2.5 猜你喜欢的功能
用户请求并浏览“猜你喜欢”商品列表的完整流程,从用户发起请求到前端展示分页数据和商品信息的过程。其功能时序图如图4-6所示。
4.2.6 推荐的功能
用户如何通过基于个性化推荐的功能浏览商品。其功能时序图如图4-7所示。
4.3数据库设计
数据库设计是确保系统功能正常运行和数据管理有效进行的基础。。
用户表存储了用户的相关信息,包括用户id、用户名、密码、邮箱、地址、简介、手机等信息。其中用户ID为主键,具体设计如表4-1所示。
表4-1 user(用户表)
名称 | 字段类型 | 注释 | 能否为null | 是否为主键 |
id | int | 用户id | N | 是 |
username | varchar | 用户名 | Y | |
password | varchar | 密码 | Y | |
text | 邮箱 | Y | ||
content | text | 简介 | Y | |
address | text | 地址 | Y | |
phone | text | 手机 | Y |
表4-2 rate(评分表)
名称 | 字段类型 | 注释 | 能否为null | 是否为主键 |
id | integer | id | N | 是 |
mark | real | 评分 | Y | |
create_time | datetime | 评分时间 | Y | |
product_id | integer | 商品id | Y | |
user_id | integer | 用户id | Y |
表4-3 rate(评论表)
名称 | 字段类型 | 注释 | 能否为null | 是否为主键 |
id | integer | id | N | 是 |
content | varchar | 评论内容 | Y | |
create_time | datetime | 评分时间 | Y | |
good | integer | 点赞数 | Y | |
product_id | integer | 商品id | Y | |
user_id | integer | 用户id | N |
表4-4 comment(评论表)
名称 | 字段类型 | 注释 | 能否为null | 是否为主键 |
id | integer | id | N | 是 |
content | varchar | 评论内容 | Y | |
create_time | datetime | 评分时间 | Y | |
good | integer | 点赞数 | Y | |
product_id | integer | 商品id | Y | |
user_id | integer | 用户id | N |
表4-5 tags(分类表)
名称 | 字段类型 | 注释 | 能否为null | 是否为主键 |
id | integer | id | N | 是 |
name | varchar | 分类名 | Y |
表4-6 product(商品表)
名称 | 字段类型 | 注释 | 能否为null | 是否为主键 |
id | integer | id | N | 是 |
sump | integer | 数量 | Y | |
name | varchar | 标题 | Y | |
director | varchar | 店铺 | Y | |
country | varchar | 产地 | Y | |
years | varchar | 生产日期 | N | |
d_rate | varchar | 评分 | N | |
intro | text | 介绍 | Y | |
num | integer | 浏览量 | Y | |
pic | varchar | 图 | Y | |
leader | varchar | 价格 | Y |
5.系统实现
5.1协同过滤算法实现
基于用户的协同过滤(UserCF)通过分析用户行为相似性进行推荐,其核心原理是“相似用户喜欢的物品,目标用户也可能喜欢”。
5.2登录注册功能实现
登录注册功能为新用户登录系统提供了创建账户的入口,其设计实现图如图5-1所示。
5.3数据展示功能实现
用户可以浏览包括“浏览最多”、“评分最多”、“购买最多”、“最新商品”和“分类商品”等商品展示区。每个区展示相应的商品列表,用户可以点击查看商品详细信息。
5.4猜你喜欢功能实现
用户通过浏览“猜你喜欢”的商品列表,能够了解不同商品的相关信息,并通过分页功能查看更多的商品。如下图所示。
5.5推荐功能实现
本功能是为用户提供个性化的商品推荐服务。在推荐商品的获取过程中,缓存机制起着至关重要的作用。后端首先会检查缓存,如果数据存在,直接从缓存中返回商品列表。如下图所示。
5.6个人中心功能实现
个人中心功能通过Django的视图和前端模板实现,允许用户查看和修改个人信息。如下图所示。
5.7后台管理功能实现
5.7.1 后台商品管理功能
后台商品管理功能通过Django的admin.ModelAdmin和自定义的ListAdminMixin实现。自动获取与商品相关的所有字段,并在后台管理界面中展示这些字段。对商品数据进行增、删、改、查等基本操作。
5.7.2 后台评论管理功能
后台评论管理功能使管理员能够高效地管理用户评论。
5.7.3 后台用户管理功能
后台用户管理功能允许管理员对平台上的用户进行全方位的管理。