基于网络爬虫的购物平台价格监测系统的设计与实现

通过对网络爬虫的购物平台价格监测系统的业务流程进行梳理可知,网络爬虫的购物平台价格监测系统主要由前台买家模块、后台卖家模块以及管理员模块构成。前台功能包含登录功能、注册功能、系统首页功能、唯品会商品详情浏览、唯品会商品收藏、唯品会商品点赞、唯品会商品价格监测、唯品会商品消息提醒、我的个人中心等等、爬虫功能。系统整体功能模块逻辑图如图2-1所示。

图2-1 系统模块图

2.2.1 功能需求

用户和商家操作流程分为以下五个步骤:

1.用户可以浏览唯品会商品的分类、分类下的唯品会商品。首页有轮播图播放,用户可以通过点击进入唯品会商品链接浏览单个(或单类)唯品会商品的具体信息。用户可以根据关键字搜索唯品会商品,然后选购唯品会商品。

2.用户可在线选购自己喜欢的商品进行浏览加购,在唯品会商品详情界面可以点赞、收藏或者取消收藏,加入价格监测等等。

3.用户通过加购到价格监测里的商品,对商品进行在线支付购买。

4.商品价格监测到指定价格,消息提醒到用户。

5.用户买家对自己购买的唯品会商品订单进行收货处理,然后进行评论,可上传图片。

用户成功登录之后,左边会展示唯品会商品分类,点击左边的唯品会商品分类,展示该分类下面的所有唯品会商品,可以根据唯品会商品的名称模糊搜索唯品会商品,对唯品会商品进行模糊匹配搜索操作。通过GoodsController[16]后台控制器,根据GoodsService的QueryGoodsLike方法查询唯品会商品,SQL语句中用到Like模糊匹配查询得到结果,浏览唯品会商品的界面如图4-3所示。

图4-3 浏览唯品会商品界面

4.1.4 唯品会商品搜索

用户登录电商用户唯品会商品购物平台系统之后,可以输入关键字模糊匹配,从而快速匹配关键字相关的唯品会商品,主要原理是通过数据库的“Like”关键字去模糊查询数据库里面的数据[17]。通过GoodsController后台控制器,根据GoodsService的QueryGoodsLike方法查询唯品会商品,SQL语句中用到Like模糊匹配查询得到结果,唯品会商品搜索界面如图4-4所示。

图4-4 唯品会商品搜索界面

4.1.5 查询唯品会商品详情

电商用户唯品会商品详情界面的界面设计是左边展示唯品会商品图片,右边展示唯品会商品名称、具体规格,详情界面具体的功能有加入价格监测,收藏或者取消收藏,超赞功能。

1.价格监测功能:对心仪的唯品会商品可以加入价格监测,进行快速结算;

2.收藏功能:对喜欢的唯品会商品可以加入收藏或者取消收藏;

3.超赞功能:这是本系统设计的特色之处,可以对喜欢的唯品会商品进行超赞,可以点击赞美,增加其次数,次数多的会推荐给用户。

通过CartController控制评论的后台流转,通过CartService对add接口进行操作;通过GuessController控制评论的后台流转,通过GuessService对add或者delete取消收藏接口进行操作。电商用户唯品会商品详情界面如图4-5所示。

图4-5 查询唯品会商品详情界面

4.1.6 加入价格监测

用户选购自己所需唯品会商品,选择数量,加入价格监测,用户可对价格监测进行管理。通过CartController控制评论的后台流转,通过CartService对add接口进行操作,通过add方法操作数据库,价格监测界面如图4-6所示。

图4-6 加入价格监测界面

4.1.7 我的商品监测

用户点击“价格监测”按钮之后,会添加到价格监测列表[18],通过定时任务去定时监测价格,通过MonitorController控制评论的后台流转,,价格监测界面如图4-7所示。

图4-7 订单结算界面

4.1.8 下单成功

用户对唯品会商品订单提交之后,生成订单号,会显示当前订单信息,则下单成功。下单时通过MonitorController控制评论的后台流转,通过MonitorService对commit接口进行操作,通过commit方法操作数据库,下单成功界面如图4-8所示。

图4-8 提交订单界面

4.1.9 支付成功

用户购买支付成功,完成交易。通过MonitorController控制评论的后台流转,通过MonitorService对pay接口进行操作,通过pay方法操作数据库,完成交易界面如图4-9所示。

图4-9 支付成功界面

4.2 爬虫部分的实现

后台管理是包含用户信息管理、唯品会商品分类管理、唯品会商品信息管理、唯品会商品订单管理、评论管理、账户管理等等功能,本章节将会对后台管理功能进行详细的介绍。

4.2.1 爬虫功能

管理员登录是需要进行管理员验证,第一步、打开唯品会网站  https://www.vip.com。然后随意搜索一种商品,比如"键盘",搜索之后下拉发现页面URL没有发生改变,但是商品信息在不断加载,那么这就是动态Ajax技术,遇到这种情况,第一反应就是找接口。

第二步、打开开发者工具,鼠标右键,点击检查,切换到Network选项卡,然后刷新唯品会页面,进行抓包,然后查看每个包的pirview,发现商品信息在‘ v2?callback=getMerchandise’中,我们来看一下URL,不看不要紧,一看吓一跳-_-,这URL也太长了,研究一下参数,发现主要是每件商品都有自己的pid,那么接下来,只要我们找到商品的pid就可以抓取数据了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/736985.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[蓝桥杯Java组] k倍区间

题目描述 给定一个长度为N的数列&#xff0c;A1, A2, … AN&#xff0c;如果其中一段连续的子序列Ai, Ai1, … Aj(i < j)之和是K的倍数&#xff0c;我们就称这个区间[i, j]是K倍区间。 你能求出数列中总共有多少个K倍区间吗&#xff1f; 输入&#xff1a; 第一行包含两个…

【Python】科研代码学习:八 FineTune PretrainedModel (用 trainer,用 script);LLM文本生成

【Python】科研代码学习&#xff1a;八 FineTune PretrainedModel [用 trainer&#xff0c;用 script] LLM文本生成 自己整理的 HF 库的核心关系图用 trainer 来微调一个预训练模型用 script 来做训练任务使用 LLM 做生成任务可能犯的错误&#xff0c;以及解决措施 自己整理的 …

ZYNQ实验--PDM波形生成

一、PDM简介 将信号的振幅变化按比例地变换成脉冲宽度的变化&#xff0c;得到脉冲宽度调制(PDM)。详细的原理理论可以参考该文&#xff1a;文献阅读–Pulse-Width Modulation&#xff0c;本文主要介绍PDM的FPGA实现&#xff0c;PDM的生成方式很多具体形式根据需求会有所不同 二…

【Stable Diffusion】入门:原理简介+应用安装(Windows)+生成步骤

【Stable Diffusion】入门&#xff1a;原理简介应用安装&#xff08;Windows&#xff09;生成步骤 原理简介应用安装 原理简介 稳定扩散生成模型(Stable Diffusion)是一种潜在的文本到图像扩散模型&#xff0c;能够在给定任何文本输入的情况下生成照片般逼真的图像。 应用安…

中国广电的独特优势:与三大运营商相比的亮点

2023年&#xff0c;中国广电正式上市了&#xff0c;发出了第一批号段192的号码&#xff0c;然而值得大家了解的是&#xff1a;在中国的通信市场中&#xff0c;中国移动、中国联通和中国电信长期以来占据主导地位。然而&#xff0c;随着中国广电的加入&#xff0c;市场格局正在发…

了解转义字符

了解转义字符 也许在前面的代码中你看到 \n , \0 很纳闷是啥。其实在字符中有⼀组特殊的字符是转义字符&#xff0c;转义字符顾名思义&#xff1a;转变原来的意思的字符。 比如&#xff1a;我们有字符 n &#xff0c;在字符串中打印的时候自然能打印出这个字符&#xff0c;如下…

景安空间不支持指定运行目录tp5

/WEB/public/.htaccess配置 <IfModule mod_rewrite.c> Options FollowSymlinks -Multiviews RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?s$1 [QSA,PT,L] </IfModule>. 2./WEB/.ht…

鸿蒙操作系统 HarmonyOS 3.2 API 9 Stage模型通过ArkTS接入高德地图

用鸿蒙ArkTS语言开发地图APP应用时&#xff0c;很多地图厂商只接入了鸿蒙Java&#xff0c;ArkTS版本陆续接入中&#xff0c;等一段时间才能面世&#xff0c;当前使用地图只能通过鸿蒙的Web组件&#xff0c;将HTML页面嵌入到鸿蒙APP中。具体方法如下&#xff1a;编写HTML <!…

C++容器适配器stack、queue、priority_queue

文章目录 C容器适配器stack、queue、priority_queue1、stack1.1、stack的介绍1.2、stack的使用1.3、stack的模拟实现 2、queue2.1、queue的介绍2.2、queue的使用2.3、queue的模拟实现 3、priority_queue3.1、priority_queue的介绍3.2、priority_queue的使用3.3、仿函数3.4、pri…

IAR全面支持小华全系芯片,强化工控及汽车MCU生态圈

IAR Embedded Workbench for Arm已全面支持小华半导体系列芯片&#xff0c;加速高端工控MCU和车用MCU应用的安全开发 嵌入式开发软件和服务的全球领导者IAR与小华半导体有限公司&#xff08;以下简称“小华半导体”&#xff09;联合宣布&#xff0c;IAR Embedded Workbench fo…

C语言——递归题

对于递归问题&#xff0c;我们一定要想清楚递归的结束条件&#xff0c;每个递归的结束条件&#xff0c;就是思考这个问题的起始点。 题目1&#xff1a; 思路&#xff1a;当k1时&#xff0c;任何数的1次方都是原数&#xff0c;此时返回n&#xff0c;这就是递归的结束条件&#…

基于FPGA加速的bird-oid object算法实现

导语 今天继续康奈尔大学FPGA 课程ECE 5760的典型案例分享——基于FPGA加速的bird-oid object算法实现。 &#xff08;更多其他案例请参考网站&#xff1a; Final Projects ECE 5760&#xff09; 1. 项目概述 项目网址 ECE 5760 Final Project 模型说明 Bird-oid object …

企业计算机服务器中了mkp勒索病毒如何解密,mkp勒索病毒解密流程

网络技术的应用与发展&#xff0c;为企业的生产运营提高了效率&#xff0c;越来越多的企业利用网络开展多项工作业务&#xff0c;利用网络的优势&#xff0c;可以为企业更好的服务&#xff0c;但是稍不注意就会被网络威胁所盯上。近日&#xff0c;云天数据恢复中心接到多家企业…

CAP告诉你系统没法做到完美,只能做到权衡和适当

一、CAP介绍 CAP原理&#xff0c;全称为Consistency&#xff08;一致性&#xff09;、Availability&#xff08;可用性&#xff09;和Partition tolerance&#xff08;分区容错性&#xff09;&#xff0c;是分布式系统设计中的基本原理。它强调了在设计分布式系统时&#xff0c…

微信公众号文章汇总

微信公众号&#xff1a;捡田螺的小男孩 被问懵了&#xff0c;加密后的数据如何进行模糊查询&#xff1f; https://mp.weixin.qq.com/s/GecypiBwqFNNwIfGq71aZA 一个你可能不曾注意的小东西&#xff0c;Spring依赖注入Bean类型的8种情况 https://mp.weixin.qq.com/s/ls3Rk4wMCS…

面试题:分布式锁用了 Redis 的什么数据结构

在使用 Redis 实现分布式锁时&#xff0c;通常使用 Redis 的字符串&#xff08;String&#xff09;。Redis 的字符串是最基本的数据类型&#xff0c;一个键对应一个值&#xff0c;它能够存储任何形式的字符串&#xff0c;包括二进制数据。字符串类型的值最多可以是 512MB。 Re…

大语言模型中,role为user、assistant、system有什么区别

在大语言模型中&#xff0c;通常涉及到三种角色&#xff1a;用户&#xff08;user&#xff09;、助手&#xff08;assistant&#xff09;和系统&#xff08;system&#xff09;。它们的区别在于其在对话或交互过程中扮演的角色和功能。 用户&#xff08;user&#xff09;&#…

二次供水无人值守解决方案

二次供水无人值守解决方案 二次供水系统存在一定的管理难题和技术瓶颈&#xff0c;如设备老化、维护不及时导致的水质安全隐患&#xff0c;以及如何实现高效运行和智能化管理等问题。在一些地区&#xff0c;特别是老旧小区或农村地区&#xff0c;二次供水设施建设和改造滞后&a…

grpc的metadata机制

引言 gRPC让我们可以像本地调用一样实现远程调用&#xff0c;对于每一次的RPC调用中&#xff0c;都可能会有一些有用的数据&#xff0c;而这些数据就可以通过metadata来传递。metadata是以key-value的形式存储数据的&#xff0c;其中key是 string类型&#xff0c;而value是[]s…

编程笔记 html5cssjs 002 一些基本概念 50以内的加法算式

编程笔记 html5&css&js 002 一些基本概念 50以内的加法算式 一、代码二、解释 50以内的加法算式。 一、代码 <!DOCTYPE html> <html lang"en"> <head><title>50以内的加法算式</title><meta charset"UTF-8">…