一种信息处理方法和服务器技术

技术编号:15880309 阅读:33 留言:0更新日期:2017-07-25 18:25
本发明专利技术实施例公开了一种信息处理方法和服务器,包括:将待进行数据抓取的任务信息添加至任务池中;提取所述任务信息的域名信息,依据所述域名信息生成令牌,将所述令牌添加至令牌池中;依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率;扫描所述令牌池,依据所述抓取速率确定所述域名信息对应的令牌数量,在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中;从所述调度队列中获得令牌,依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,将所述第一任务信息添加至处理队列中;从所述处理队列中提取所述第一任务信息,依据所述第一任务信息执行相应数据的抓取。

Information processing method and server

The embodiment of the invention discloses an information processing method and server: the task information will be added to the task pool data capture; the information extraction task domain information, domain name information is generated according to the token, the token is added to the token pool; determining the corresponding domain name information grab the number rate of task information according to the domain information of the token pool can be scheduled; scanning the token pool, according to the number of the token capture rate is determined corresponding to the domain name information, if the number of tokens to meet the preset condition, the token is sent to the dispatch queue corresponding number of tokens are obtained; from the dispatch queue, according to the token corresponding domain name information selected to meet the first task information second preset condition in the task pool, will be the first task The information is added to the processing queue, and the first task information is extracted from the processing queue, and the corresponding data is grabbed according to the first task information.

【技术实现步骤摘要】
一种信息处理方法和服务器
本专利技术涉及信息处理技术,具体涉及一种信息处理方法和服务器。
技术介绍
随着互联网技术的飞速发展,网页成为海量信息的载体。目前从网页提取信息的其中一种方式为网络爬虫,具体通过配置用于网页数据抽取的脚本程序抽取指定的网页内容。本申请专利技术人在实现本申请实施例技术方案的过程中,至少发现相关技术中存在如下技术问题:1、针对网页数据的抓取速率和抓取频率预先配置在脚本程序中,在数据抓取过程中不能够依据任务数量实现自动调节;2、抓取速率的设置是以配置的项目信息为基础,不同的项目可能配置相同的域名,这样可能会导致同一域名下系统的抓取速率过快,从而导致代理网络互连协议(IP)被封;然而,对于上述问题,相关技术中并未存在有效的解决方案。
技术实现思路
为解决现有存在的技术问题,本专利技术实施例提供一种信息处理方法和服务器,能够实现抓取速率的自动调节,避免代理IP被封。为达到上述目的,本专利技术实施例的技术方案是这样实现的:本专利技术实施例提供了一种信息处理方法,所述方法包括:将待进行数据抓取的任务信息添加至任务池中;提取所述任务信息的域名信息,依据所述域名信息生成令牌,将所述令牌添加至令牌池中;依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率;扫描所述令牌池,依据所述抓取速率确定所述域名信息对应的令牌数量,在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中;从所述调度队列中获得令牌,依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,将所述第一任务信息添加至处理队列中;从所述处理队列中提取所述第一任务信息,依据所述第一任务信息执行相应数据的抓取。上述方案中,所述依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率,包括:依据所述令牌池中令牌的域名信息,统计所述任务池中与所述域名信息对应的、且满足第三预设条件的任务信息数量;其中,所述第三预设条件包括:任务信息的状态为可调度的、以及任务的上次调度时间与所述任务的抓取频率之和小于当前时间;所述域名信息对应的抓取速率rate满足以下表达式:其中,n表示任务信息数量;X和Y均为正整数。上述方案中,所述将待进行数据抓取的任务信息添加至任务池后,所述方法还包括:从所述任务池中提取第二任务信息;所述第二任务信息表征列表页任务;基于所述第二任务信息统计预设时间范围内的子任务数量,基于所述子任务数量确定所述第二任务信息对应的抓取频率;基于所述抓取频率更新所述初始抓取频率。上述方案中,所述抓取频率age满足以下表达式:其中,n表示基于所述第二任务信息统计的预设时间范围内的子任务数量;T1、T2和T3均为正整数。上述方案中,所述依据所述抓取速率确定所述域名信息对应的令牌数量,包括:设定rate表示所述域名信息对应的抓取速率,lasttime表示上次令牌生成时间,nowtime表示当前时间,remainder表示令牌生成时剩余的令牌数量;则所述域名信息对应的令牌数量N满足以下表达式:N=rate×(nowtime-lasttime)+remainder。上述方案中,所述在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中,包括:当所述令牌数量N大于等于1时,获得所述令牌数量N的整数部分,将满足所述整数部分数量的令牌发送至调度队列中;将所述令牌数量N的小数部分赋值给所述remainder;当所述令牌数量N小于1时,直接将所述令牌数量N赋值给所述remainder。上述方案中,所述调度队列的数量为多个;则所述将相应数量的令牌发送至调度队列中,包括:对所述域名信息按照预设处理方式进行处理;将所述域名信息对应数量的令牌发送至处理结果对应的第一调度队列中;其中,所述第一调度队列为多个调度队列中的一调度队列。上述方案中,所述令牌包括:域名信息和域名网络互联协议(IP);所述方法还包括:按预设周期对所述令牌池中的域名信息进行解析,获得所述域名信息对应的第一域名IP;将解析获得的第一域名IP与所述令牌池中的域名IP进行比较;当所述第一域名IP在所述令牌池中时,更新所述令牌池中所述第一域名IP对应的域名IP的解析时间;当所述第一域名IP不在所述令牌池中时,将所述第一域名IP添加至所述令牌池中;当所述令牌池中的第二域名IP不在解析获得的第一域名IP中时,将所述第二域名IP从所述令牌池中删除。上述方案中,所述依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,包括:依据所述令牌对应的域名信息在所述任务池中选择满足以下条件的第一任务信息:任务信息对应的域名与所述令牌的域名信息匹配;以及,任务信息的状态为可调度的;以及,任务的上次调度时间与所述任务的抓取频率之和小于当前时间。上述方案中,所述将所述第一任务信息添加至处理队列中,包括:将满足所述第二预设条件的多个第一任务信息按照优先级和/或层级进行排序,将满足高优先级和/或低层级的任务信息优先添加至处理队列中。上述方案中,所述将待进行数据抓取的任务信息添加至任务池中,包括:配置抓取项目,基于配置的抓取项目生成相应的项目信息,发送所述项目信息至项目池中存储;所述项目信息包括项目脚本程序、项目的状态;所述项目的状态包括已安装状态和未安装状态;扫描所述项目池中处于未安装状态的项目信息,检测所述项目信息中的任务是否在所述任务池中;当所述任务不在所述任务池中时,将所述任务的任务信息添加至所述任务池中。本专利技术实施例还提供了一种服务器,所述服务器包括:项目启动器、令牌池、任务池、速率控制器、令牌产生器、调度队列、调度器、处理队列和处理器;其中,所述项目启动器,用于将待进行数据抓取的任务信息添加至任务池中;提取所述任务信息的域名信息,依据所述域名信息生成令牌,将所述令牌添加至令牌池中;所述任务池,用于存储任务信息;所述令牌池,用于存储令牌;所述速率控制器,用于依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率;所述令牌产生器,用于扫描所述令牌池,依据所述速率控制器确定的所述抓取速率确定所述域名信息对应的令牌数量,在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中;所述调度器,用于从所述调度队列中获得令牌,依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,将所述第一任务信息添加至处理队列中;所述处理器,用于从所述处理队列中提取所述第一任务信息,依据所述第一任务信息执行相应数据的抓取。上述方案中,所述速率控制器,用于依据所述令牌池中令牌的域名信息,统计所述任务池中与所述域名信息对应的、且满足第三预设条件的任务信息数量;其中,所述第三预设条件包括:任务信息的状态为可调度的、以及任务的上次调度时间与所述任务的抓取频率之和小于当前时间;所述域名信息对应的抓取速率rate满足以下表达式:其中,n表示任务信息数量;X和Y均为正整数。上述方案中,所述服务器还包括频率控制器,用于从所述任务池中提取第二任务信息;所述第二任务信息表征列表页任务;基于所述第二任务信息统计预设时间范围内的子任务数量,基于所述子任务数量确定所述第二任务信息对应的抓取频率;基于所述抓取频率更新所述初始抓本文档来自技高网...
一种信息处理方法和服务器

【技术保护点】
一种信息处理方法,其特征在于,所述方法包括:将待进行数据抓取的任务信息添加至任务池中;提取所述任务信息的域名信息,依据所述域名信息生成令牌,将所述令牌添加至令牌池中;依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率;扫描所述令牌池,依据所述抓取速率确定所述域名信息对应的令牌数量,在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中;从所述调度队列中获得令牌,依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,将所述第一任务信息添加至处理队列中;从所述处理队列中提取所述第一任务信息,依据所述第一任务信息执行相应数据的抓取。

【技术特征摘要】
1.一种信息处理方法,其特征在于,所述方法包括:将待进行数据抓取的任务信息添加至任务池中;提取所述任务信息的域名信息,依据所述域名信息生成令牌,将所述令牌添加至令牌池中;依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率;扫描所述令牌池,依据所述抓取速率确定所述域名信息对应的令牌数量,在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中;从所述调度队列中获得令牌,依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,将所述第一任务信息添加至处理队列中;从所述处理队列中提取所述第一任务信息,依据所述第一任务信息执行相应数据的抓取。2.根据权利要求1所述的方法,其特征在于,所述依据所述令牌池中所述域名信息下可调度的任务信息数量确定所述域名信息对应的抓取速率,包括:依据所述令牌池中令牌的域名信息,统计所述任务池中与所述域名信息对应的、且满足第三预设条件的任务信息数量;其中,所述第三预设条件包括:任务信息的状态为可调度的、以及任务的上次调度时间与所述任务的抓取频率之和小于当前时间;所述域名信息对应的抓取速率rate满足以下表达式:其中,n表示任务信息数量;X和Y均为正整数。3.根据权利要求1所述的方法,其特征在于,所述将待进行数据抓取的任务信息添加至任务池后,所述方法还包括:从所述任务池中提取第二任务信息;所述第二任务信息表征列表页任务;基于所述第二任务信息统计预设时间范围内的子任务数量,基于所述子任务数量确定所述第二任务信息对应的抓取频率;基于所述抓取频率更新所述初始抓取频率。4.根据权利要求3所述的方法,其特征在于,所述抓取频率age满足以下表达式:其中,n表示基于所述第二任务信息统计的预设时间范围内的子任务数量;T1、T2和T3均为正整数。5.根据权利要求2所述的方法,其特征在于,所述依据所述抓取速率确定所述域名信息对应的令牌数量,包括:设定rate表示所述域名信息对应的抓取速率,lasttime表示上次令牌生成时间,nowtime表示当前时间,remainder表示令牌生成时剩余的令牌数量;则所述域名信息对应的令牌数量N满足以下表达式:N=rate×(nowtime-lasttime)+remainder。6.根据权利要求5所述的方法,其特征在于,所述在所述令牌数量满足预设条件时,将相应数量的令牌发送至调度队列中,包括:当所述令牌数量N大于等于1时,获得所述令牌数量N的整数部分,将满足所述整数部分数量的令牌发送至调度队列中;将所述令牌数量N的小数部分赋值给所述remainder;当所述令牌数量N小于1时,直接将所述令牌数量N赋值给所述remainder。7.根据权利要求1所述的方法,其特征在于,所述调度队列的数量为多个;则所述将相应数量的令牌发送至调度队列中,包括:对所述域名信息按照预设处理方式进行处理;将所述域名信息对应数量的令牌发送至处理结果对应的第一调度队列中;其中,所述第一调度队列为多个调度队列中的一调度队列。8.根据权利要求1所述的方法,其特征在于,所述令牌包括:域名信息和域名网络互联协议IP;所述方法还包括:按预设周期对所述令牌池中的域名信息进行解析,获得所述域名信息对应的第一域名IP;将解析获得的第一域名IP与所述令牌池中的域名IP进行比较;当所述第一域名IP在所述令牌池中时,更新所述令牌池中所述第一域名IP对应的域名IP的解析时间;当所述第一域名IP不在所述令牌池中时,将所述第一域名IP添加至所述令牌池中;当所述令牌池中的第二域名IP不在解析获得的第一域名IP中时,将所述第二域名IP从所述令牌池中删除。9.根据权利要求1所述的方法,其特征在于,所述依据所述令牌对应的域名信息在所述任务池中选择满足第二预设条件的第一任务信息,包括:依据所述令牌对应的域名信息在所述任务池中选择满足以下条件的第一任务信息:任务信息对应的域名与所述令牌的域名信息匹配;以及,任务信息的状态为可调度的;以及,任务的上次调度时间与所述任务的抓取频率之和小于当前时间。10.根据权利要求9所述的方法,其特征在于,所述将所述第一任务信息添加至处理队列中,包括:将满足所述第二预设条件的多个第一任务信息按照优先级和/或层级进行排序,将满足高优先级和/或低层级的任务信息优先添加至处理队列中。11.根据权利要求1所述的方法,其特征在于,所述将待进行数据抓取的任务信息添加至任务池中,包括:配置抓取项目,基于配置的抓取项目生成相应的项目信息,发送所述项目信息至项目池中存储;所述项目信息包括项目脚本程序、项目的状态;所述项目的状态包括已安装状态和未安装状态;扫描所述项目池中处于未安装状态的项目信息,检测所述项目信息中的任务是否在所述任务池中;当所述任务不在所述任务池中时,将所述任务的任务信息添加至所述任务池中。12.一种服务器,其特征在于,所述服务器包括:项目启动器、令牌池、任务池、速率控制器、令牌产生器、调度队...

【专利技术属性】
技术研发人员:黄文飞吴一飞施驭李振洋
申请(专利权)人:腾讯科技北京有限公司
类型:发明
国别省市:北京,11

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

1