[发明专利]一种基于指定电子商务网站的定向爬虫的实现方法在审

专利信息
申请号: 201410266881.1 申请日: 2014-06-13
公开(公告)号: CN104050037A 公开(公告)日: 2014-09-17
发明(设计)人: 朱全银;周泓;李翔;潘禄;刘文儒;戎圣吉;张宇洋;曹苏群;王留洋;周蕾 申请(专利权)人: 淮阴工学院
主分类号: G06F9/48 分类号: G06F9/48
代理公司: 暂无信息 代理人: 暂无信息
地址: 223005 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 指定 电子商务 网站 定向 爬虫 实现 方法
【权利要求书】:

1.一种基于指定电子商务网站的定向爬虫的实现方法,其特征在于:利用队列对任务的顺序进行管理,线程池中的子线程通过预先制定的模板从指定电子商务网站上获取商品的信息或者往队列中追加任务,进而提高了爬虫的运行效率,也提高了爬虫的爬准率,具体步骤包括以下步骤:

步骤1、初始化指定电子商务网站的商品列表入口URL;

步骤2、将初始化的URL添加到任务队列;

步骤3、开启线程池;

步骤4、线程池从队列中获取任务并分配给子线程;

步骤5、子线程调用判断模板对URL进行判断,当任务是处理商品列表的页面,执行步骤6到步骤7;当任务是处理电子商品信息的页面,执行步骤8到步骤13;

步骤6、子线程调用分析商品列表URL的匹配模板,对商品列表URL的页面信息进行分析,获取该页面所有商品的URL以及下一个商品列表的URL,将单个电子商品页面URL添加到任务队列中,如果下一个商品列表的URL存在,将下一个商品列表的URL添加到队列中,否则不添加;

步骤7、结束该子线程,执行步骤14;

步骤8、子线程利用分析电子商品的匹配模板对该线程读取的URL的页面信息进行分析,得到该电子商品的价格信息和商品编号,执行步骤9,否则执行步骤17;

步骤9、子线程调用数据存储模块将价格信息和商品编号存入数据库,执行步骤10;

步骤10、根据该电子商品的商品编号,查询数据库中是否存在该电子商品的参数信息,若该电子商品的参数信息存在,执行步骤13;当该电子商品的参数信息不存在,执行步骤11;

步骤11、子线程利用电子商品的参数匹配模板对该线程读取的URL的页面信息进行分析,得到该电子商品的参数信息,包括:商品编号、标题、品牌、型号、类别信息、预览图片的地址;

步骤12、子线程调用数据存储模块将参数信息存入数据库,执行步骤18;

步骤13、结束该子线程;

步骤14、检测当前任务队列是否还有任务存在,当有任务存在,执行步骤4;当没有任务存在,执行步骤15;

步骤15、检测是否还有子线程在运行,当有子线程在运行,执行步骤14;当没有子线程在运行,执行步骤16;

步骤16、将当次的抓取统计信息写入日志文件,结束程序;

步骤17、将错误信息写入日志文件,结束子线程,执行步骤14;

步骤18、将分析信息写入日志文件,结束子进程,执行步骤14。

2.根据权利要求1所述的一种基于指定电子商务网站的定向爬虫的实现方法,其特征在于:

步骤1所述URL是指在方法中表现为一串代表网页地址的字符串以及该地址中包含的网页内容;指定电子商务网站是指对于不同的电商网站其爬虫执行的策略也不一样,主要体现在匹配模板的不同,因此对于不同的电子商务网站需要不同的爬虫;商品列表入口URL是指指定电子商务网站商品分类的首页面URL,根据需求可以指定需要信息采集的商品的URL;

步骤2到步骤3是对数据采集系统的初始化,步骤2中将初始化的URL添加到任务队列是指系统中的数据结构存放着需要采集的商品列表入口URL;步骤3开启线程池是初始化一个线程池,线程池中有n个提供任务调度的子线程,n的值由人选定;

步骤4中的线程池从队列中获取任务分配给子线程,具体是指线程池不断地检测队列是否为空和线程池存在空闲的子线程,当队列不为空和线程池中存在空闲子线程时,从队列前端取出一个任务分配给一个空闲的子线程;

步骤5是中判断模板对URL进行域的判断,指定电子商务网站中的商品列表域和单个商品使用不同的域,子线程通过对域的判断选择调用不同的处理策略;

步骤6到步骤7是针对任意一个商品列表的页面URL对其进行操作;步骤6中的商品列表URL的匹配模板,是只适合用于分析指定电子商务网站商品列表页面,分析的内容包括商品列表URL的页面信息中包括的所有展示在展示区的单个商品的URL的列表,以及分析此商品列表的下一个商品列表的URL,不存在则置为空;

步骤8到步骤13是针对单个电子商品的页面URL,对其进行分析;步骤8中的匹配模板用于分析单个商品URL中的价格和商品编号;步骤9中的数据存储模块是专门用于存储商品编号和价格的记录;步骤11中的参数匹配模板是分析单个商品URL中的参数,该模板是适合指定电子商务网站所有类别商品,包括有商品编号、标题、品牌、型号、类别信息、预览图片的地址,对于不同商品存在的不同参数信息不做分析;步骤12中的数据存储模块数专门用于将单个商品的参数信息存储到数据库中;步骤13结束该子线程是指子线程正常完成了任务后结束,释放任务并释放线程池中占用的空间;

步骤14检测队列中是否有任务存在是指检测队列是否为空;

步骤15检测是否有子线程在运行通过锁机制来判断,设置了一个全局锁,只要有子线程在运行,全局锁就不会被释放掉,当没有子线程在运行时,会释放掉全局锁,系统检测全局锁是否释放来判断是否有子线程在运行;

步骤16是指队列中无任务,不存在运行的子线程的情况下,进程将退出,此时将本次运行的总体结果写入日志文件,主要包括采集的数量情况,出现分析失败的个数;

步骤17和18是对子线程分析出现错误的情况的日志记录。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于淮阴工学院,未经淮阴工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410266881.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top