设计 任务书 文档 开题 答辩 说明书 格式 模板 外文 翻译 范文 资料 作品 文献 课程 实习 指导 调研 下载 网络教育 计算机 网站 网页 小程序 商城 购物 订餐 电影 安卓 Android Html Html5 SSM SSH Python 爬虫 大数据 管理系统 图书 校园网 考试 选题 网络安全 推荐系统 机械 模具 夹具 自动化 数控 车床 汽车 故障 诊断 电机 建模 机械手 去壳机 千斤顶 变速器 减速器 图纸 电气 变电站 电子 Stm32 单片机 物联网 监控 密码锁 Plc 组态 控制 智能 Matlab 土木 建筑 结构 框架 教学楼 住宅楼 造价 施工 办公楼 给水 排水 桥梁 刚构桥 水利 重力坝 水库 采矿 环境 化工 固废 工厂 视觉传达 室内设计 产品设计 电子商务 物流 盈利 案例 分析 评估 报告 营销 报销 会计
 首 页 机械毕业设计 电子电气毕业设计 计算机毕业设计 土木工程毕业设计 视觉传达毕业设计 理工论文 文科论文 毕设资料 帮助中心 设计流程 
垫片
您现在所在的位置:首页 >>计算机毕业设计 >> 文章内容
                 
垫片
   我们提供全套毕业设计和毕业论文服务,联系微信号:biyezuopinvvp QQ:2922748026   
基于网络爬虫的商品询价系统的设计与实现 开发文档+项目源码+截图
文章来源:www.biyezuopin.vip   发布者:毕业作品网站  
56%" valign="center">

Int(8)

备用字段1

spare_field1

Varchar(128)

模糊评价模型三级指标表Indicators3

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

类目名称

Indicators_3_name

varchar(64)

类目权重

Indicators_3_weight

Double(4,2)

对应二级类目id

Indicators_2_id

Int(8)

备用字段1

spare_field1

Varchar(128)

模块节点信息表(module-info)

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

模块名称

module_name

varchar(64)

模块所在ip

Module_ip

Varchar(64)

模块所在端口号

Module_port

Varchar(8)

延迟(ms)

Module_latency

Int(8)

带宽占用率

OccupiedRate_of _Bandwidth

Double(4,2)

内存占用率

OccupiedRate_of_memory

Double(4,2)

Cpu占用率

OccupiedRate_of_cpu

Double(4,2)

模块运行状况

Module_condition

boolean

模块运行正常与否

参与贡献

1. Fork 本仓库

2. 新建 Feat_xxx 分支

3. 提交代码

4. 新建 Pull Request

,



商品询价系统

介绍

商品询价系统(基于网络爬虫)

· 模块介绍:

1. crawler:采用的是selenium框架(java实现),用它来爬虫,并将爬取的商品数据入库。

2. display:是网页展示模块,你可以在该模块搜索需要比价的商品。查看商品的价格变化曲线,商品评分等。

3. search:查询模块,采用lucene全文检索框架,建立倒排索引以及分词搜索

4. evaluate:商品信息分析,对库中的数据进行分析打分,将更优秀的商品展示给用户。(基于商品销量、商品评论量、商品收藏量、粉丝数等条件打分)

5. management:项目模块管理,心跳机制,可以监控当前各模块的健康状况。

软件架构

由springboot开发、各模块之间通过Dubbo进行方法调用、Zookeeper作为服务注册中心、消息队列采用了activeMq(目前生产都不用了,原因是开发社区、性能因素),版本控制采用Maven、Mysql8.0

后续改进方向

1. crawler:目前采用的是java爬虫,如果需要更专业的爬虫,你可以采用 python实现 。另外需要考虑的是电商网站的反爬技术,否则会出现如下场景:

还有如果你需要登录一个天猫淘宝账号进行爬虫,那么一段时间后,你的登录token也会过期,此时就会出现如下页面:

1. crawler:由于后续业务发展,爬虫获取到的数据量会非常大,单机Mysql已无法承载,你需要考虑进行 分库分表

2. search: lucene是一个比较老的全文检索框架,它没有集群方案。面对大数据量、准实时的商品信息搜索,你需要使用当前比较流行的 ElasticSearch 去优化它。我在代码里已经留了接口,你可以增加一个实现。

3. evaluate:当前的商品评价模型相对比较简易,如果需要更加可靠的商品评价方案,你需要去改进它。

效果展示

1. 用户进入商品比价网站,在页面上方搜索框输入想要搜索的商品关键词,点击搜索,就可以搜索到相关商品的信息。在搜索结果中,可以查看搜索到相关商品的数量、商品的图片、商品描述、商品价格、评论数量、所在商城、商品评分和推荐理由等信息。同时用户可以对搜索结果进行价格、销量进行排序,根据商品的价格区间进行筛选,来满足用户的个性化需求。在搜索结果上方可以看到商城报价的筛选条件,选中相应的商城,可以看到本商城的商品信息,在此基础上,商品显示采用分页显示,提高网页的加载速度和渲染效果,提高用户的购物 效率。

2.数据爬取模块是将爬取到的商品过滤后保存在数据库中,提供系统的数据支撑。数据主要包含商品编号、商品名称、商品历史价格、商品分类ID、商品分类名称、销量、评论量、收藏量、库存量、发货地址、店铺ID、店铺名称、商品图片、店铺描述评分、店铺服务评分、店铺物流评分、商品规格信息、商品URL、商品详情、商品系统评分、推荐理由、爬取时间、当前价格等字段,爬取工具采用selenium驱动浏览器(FireFox)进行商品信息爬取。

3.商品搜索模块会将数据库中的商品信息进行分词索引,保存在内存或磁盘中,供Lucene全文检索使用,以此来提高搜索的效率。通过Lucene索引查看工具Luke对索引信息进行查看,在该图的左上角可以看到索引存储的位置、索引的域空间数量(Number of fields)、被索引的文档数目(Number of documents)等信息,在该图下方,可以查看不同的域索引所占的不同比率,代表每个域中的数据量不同,从图中可知,商品名称(productName)所占的数据量最大,为30.64%,可见商品数据中商品名称占了较大的一部分。选中其中一个域,可以看到当前域中索引的详细信息,包含索引内容(Text),如此处的“新款”,“音响”等,以及相应索引出现的频率(Freq)。这些都是Lucene全文检索时必须的数据基础。

4.商品评价模块负责对商品信息进行评价,评价结果包含商品评分以及推荐理由。商品评分采用商品的模糊评价模型,推荐理由主要包含一些可量化的维度,如销量、商品描述、商品评价等。不同的商品评分将会影响到商品搜索的结果,评分较高的商品将优先展示给用户。

5.后台管理模块包含模块监控、评价模型配置、商品信息维护功能。 在模块监控中,各模块采用Sigar工具包获取到当前服务器的网络延迟、带宽占用、内存占用、CPU占用等信息并返回给后台管理系统,系统管理员可以看到当前正在运行的所有模块信息,做到系统的及时预警与防护,提高系统的安全性。同时后台管理员可以对模块信息进行管理,对有问题的模块信息进行新增、修改或删除。

评价模型配置功能可以对评价模型的权重指标进行配置,来修改模型各指标的权重系数,提供模型的灵活性,降低维护成本,能及时适应不同的评价指标。

商品信息维护页面可以对不符合条件的商品数据进行维护,从数据库中通过JAVA的javax.validation包筛选出不符合条件的商品数据,并给出不符合的理由,后台管理员可以对不符合条件的数据一目了然,点击上方“更新数据”按钮对数据库数据进行更新,同时可以对商品信息进行修改与删除操作。

如何启动它

1. crawler:如果采用selenium进行爬虫,你需要安装浏览器与对应的浏览器驱动。我用的是firefox:82.0.3 (64 位),对应的浏览器驱动上传了一份在 price-parity-of-commodities/ geckodriver.exe 根目录下,你可以修改crawler/src/main/resources/application.properties中的配置来修改

diff.broswer.path=D:\\ruanjian\\firefox\\firefox.exediff.broswer.driver.path=D:\\webDriver\\geckodriver-v0.23.0-win32\\geckodriver.exe

2、数据库表设计,你可以参考crawler/src/main/resources/application.properties中的数据库连接来配置该数据库(因为脚本找不到了,只留下文档):

spring.datasource.url = jdbc:mysql://localhost:3306/products?serverTimezone=UTC&useSSL=false

数据库名称:products 商品信息表(product)25个字段

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

商品编号

product_id varchar(32)

商品名称

product_name varchar(256)

商品价格(历史价格 ‘,’隔开)

price

text

商品分类ID

category_id

varchar(32)

商品分类名称

Category_name

varchar(32)

销量

sellCount

varchar(32)

评论量

reviewCount

varchar(32)

收藏量

collectCount

varchar(32)

库存量

stock

Int(8)

发货地址

Delivery_Add

Varchar(32)

店铺ID

Shop_id varchar(32)

店铺名称

Shop_name

varchar(256)

商品图片

Product_img

text

店铺描述评分

Shopdsr_ms

Double(2)

店铺服务评分

Shopdsr_fw

Double(2)

店铺物流评分

Shopdsr_wl

Double(2)

商品sku信息

product_sku

text

商品URL

Product_Url

varchar(1024)

商品详情

Product_detail

text

商品系统评分

Product_score

Double(4)

推荐理由

Recommended_reason

varchar(1024)

爬取时间

Update_time

text

备用字段1(当前价格)

spare_field1

double

备用字段2

spare_field2

text

备用字段3

spare_field3

text

商品种类信息表(category)

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

商品种类ID

category_id

varchar(32)

商品种类名称1

category1_name

VARCHAR(64)

商品种类名称2

Category2_name

VARCHAR(64)

商品种类名称3

Category3_name

VARCHAR(64)

代理ip信息表(proxyIp)

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

Ip地址

Ip_address

varchar(32)

Ip端口号

Ip_port

VARCHAR(8)

服务器地址

Server_address

VARCHAR(64)

验证时间

Check_time

VARCHAR(64)

更新时间

Update_time

date

模糊评价模型一级指标表Indicators1

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

类目名称

Indicators_1_name

varchar(64)

类目权重

Indicators_1_weight

Double(4,2)

备用字段1

spare_field1

Varchar(128)

模糊评价模型二级指标表Indicators2

伦理名

物理名

属性

主键

外键

说明

编号

id

Int(16)

Y

类目名称

Indicators_2_name

varchar(64)

类目权重

Indicators_2_weight

Double(4,2)

对应一级类目id

Indicators_1_id

  全套毕业设计论文现成成品资料请咨询微信号:biyezuopinvvp QQ:2922748026     返回首页 如转载请注明来源于www.biyezuopin.vip  

                 

打印本页 | 关闭窗口
| 关于我们 | 友情链接 | 毕业设计招聘 |

Email:biyeshejiba@163.com 微信号:biyezuopinvvp QQ:2922748026  
本站毕业设计毕业论文资料均属原创者所有,仅供学习交流之用,请勿转载并做其他非法用途.如有侵犯您的版权有损您的利益,请联系我们会立即改正或删除有关内容!