一种抓取商城网站多级菜单并保存的方法技术

技术编号:23512444 阅读:22 留言:0更新日期:2020-03-17 23:53
本发明专利技术涉及SpringBoot平台技术领域,特别涉及一种抓取商城网站多级菜单并保存的方法。本发明专利技术方法如下:一、创建存储菜单的数据表;二、在项目中创建菜单对应的实体类;三、搭建Druid定时器环境及任务;四、引入爬虫jar包,创建菜单爬虫Job;五、分析要抓取的网站;六、扫描第一级目录,完毕后扫描二级、三级目录,并通过对应的标签抓取数据;七、解析添加到数据库中。本发明专利技术解决了抓取菜单数据无规律,得到的数据混乱的问题。

A method of grabbing and saving multi-level menu of shopping mall website

【技术实现步骤摘要】
一种抓取商城网站多级菜单并保存的方法
本专利技术涉及SpringBoot
,特别涉及一种抓取商城网站多级菜单并保存的方法。
技术介绍
在开发类似购物商城网站的时候,经常会参考模仿甚至抄袭一些有价值网站内容或界面,从中获取一些有用的数据以及数据结构做为已用,像购物网站的菜单分类数据。这些数据在网站平时显示的时候都是折叠隐藏的,要想获得这些数据,如果使用手工记录,就必须逐层去点击,挨个查看记录,这种做法非常麻烦,费时费力,且不能拷贝其对应的层次关系。本专利技术在基于SpringBoot平台技术的基础上,使用爬虫技术实现逐层爬取,并按层次关系进行数据保存,解决了上述的问题。
技术实现思路
本专利技术解决的技术问题在于提供一种抓取商城网站多级菜单并保存的方法;本专利技术解决了抓取菜单数据无规律,得到的数据混乱的问题。本专利技术解决上述技术问题的技术方案是:一、创建存储菜单的数据表;二、在项目中创建菜单对应的实体类;三、搭建Druid定时器环境及任务;四、引入爬虫jar包,创建菜单爬虫Job;五、分析要抓取的网站;六、扫描第一级目录,完毕后扫描二级、三级目录,并通过对应的标签抓取数据;七、解析添加到数据库。所述的方法具体包括如下步骤:步骤一、创建存储菜单的数据表,主要有菜单的名称、链接地址、Id以及父parentId等内容;步骤二、在项目中创建菜单对应的实体类,用来对数据的解析与交互;步骤三、搭建Druid定时器环境;步骤四、引入爬虫jar包,创建菜单爬虫Job;步骤五、分析要抓取的网站,获取抓取时入口URL、请求头部信息等;步骤六、创建抓取方法,在方法中,首选扫描第一级目录,然后扫描二级,接着第三级目录,依次深入遍历,直到循环结束。在每一级都使用数据所在的标签属性、id或者class等元素对其进行抓取;步骤七、对抓取后的数据进行过滤,把所需的信息添加到数据库中。本专利技术的有益效果:通过使用爬虫技术,逐层抓取,按层次关系保存,达到了获取与原网站数据及数据结构完全相同的目的。有效本专利技术解决了抓取菜单数据无规律,得到的数据混乱的问题。附图说明下面结合附图对本专利技术进一步说明:图1为本专利技术的流程图。具体实施方式如图1所示,本专利技术采用如下步骤:步骤一、创建存储菜单的数据表,主要有菜单的名称、链接地址、Id以及父parentId等内容;如:CREATETABLE`site_menu`(`Id`varchar(50)NOTNULL,`title`varchar(255)DEFAULTNULLCOMMENT'分类标题',`parentId`varchar(50)DEFAULTNULLCOMMENT'分类主目录',`parentTitle`varchar(255)DEFAULTNULLCOMMENT'分类父名称',`listUrl`varchar(500)DEFAULTNULLCOMMENT'目录对应的网站地址',`remtoePicUrl`varchar(500)DEFAULTNULLCOMMENT'网站图片路径',`localPicUrl`varchar(500)DEFAULTNULLCOMMENT'保存在本地的图片路径',`remark`varchar(255)DEFAULTNULLCOMMENT'备注',`createDate`datetimeDEFAULTNULLCOMMENT'创建日期',`modifyDate`datetimeDEFAULTNULLCOMMENT'修改日期',PRIMARYKEY(`categoryId`))ENGINE=InnoDBDEFAULTCHARSET=utf8;步骤二、在项目中创建菜单对应的实体类,用来对数据的解析与交互;如:@TableName("site_menu")publicclassSiteMenuimplementsSerializable{@TableId("Id")privateStringId;privateStringtitle;//分类主目录@TableField("parentId")privateStringparentId;//分类父名称@TableField("parentTitle")privateStringparentTitle;//目录对应的网站地址@TableField("listUrl")privateStringlistUrl;//网站图片路径@TableField("remtoePicUrl")privateStringremtoePicUrl;//保存在本地的图片路径@TableField("localPicUrl")privateStringlocalPicUrl;//备注privateStringremark;//创建日期@TableField(value="createDate",fill=FieldFill.INSERT_UPDATE)privateDatecreateDate;//修改日期@TableField(value="modifyDate",fill=FieldFill.INSERT_UPDATE)privateDatemodifyDate;//getset方法}步骤三、搭建Druid定时器环境;如:@ConfigurationpublicclassQuartzConfiguration{//配置定时任务:扫描列表@Bean(name="menuJob")publicMethodInvokingJobDetailFactoryBeanmshCotegoryJob(MshJobmshJob){MethodInvokingJobDetailFactoryBeanjobDetail=newMethodInvokingJobDetailFactoryBean();jobDetail.setConcurrent(false);//是否并发执行jobDetail.setTargetObject(mshJob);//为需要执行的实体类对应的对象jobDetail.setTargetMethod("crawlMenu");//需要执行的方法returnjobDetail;}//配置触发器:扫描列表@Bean(name="menuTrigger")publicCronTriggerFactoryBeanmenuTrigger(JobDetailmenuJob){C本文档来自技高网...

【技术保护点】
1.一种抓取商城网站多级菜单并保存的方法,其特征在于:一、创建存储菜单的数据表;二、在项目中创建菜单对应的实体类;三、搭建Druid定时器环境及任务;四、引入爬虫jar包,创建菜单爬虫Job;五、分析要抓取的网站;六、扫描第一级目录,完毕后扫描二级、三级目录,并通过对应的标签抓取数据;七、解析添加到数据库中;从而本专利技术解决了抓取菜单数据无规律,得到的数据混乱的问题。/n

【技术特征摘要】
1.一种抓取商城网站多级菜单并保存的方法,其特征在于:一、创建存储菜单的数据表;二、在项目中创建菜单对应的实体类;三、搭建Druid定时器环境及任务;四、引入爬虫jar包,创建菜单爬虫Job;五、分析要抓取的网站;六、扫描第一级目录,完毕后扫描二级、三级目录,并通过对应的标签抓取数据;七、解析添加到数据库中;从而本发明解决了抓取菜单数据无规律,得到的数据混乱的问题。


2.根据权利要求1所述的基于SpringBoot平台的一种抓取商城网站多级菜单并保存的方法,其特征在于:抓取时按层级的关系对菜单内容进行抓取,存储时按原样的层级关系进行保存;所述的方法具体包括如下步骤:

【专利技术属性】
技术研发人员:陈林张来卿庞严冬
申请(专利权)人:珠海横琴盛达兆业科技投资有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1