数据采集的方法、装置、电子设备和存储介质制造方法及图纸

技术编号:38424074 阅读:17 留言:0更新日期:2023-08-07 11:22
本公开的实施例提供了一种数据采集的方法、装置、电子设备和存储介质。应用于数据采集技术领域,所述方法包括从待处理队列的队首获取数据采集任务并进行解析,得到url地址;其中,数据采集任务是由需求端写入所述待处理队列的队尾的;创建与所述url地址连接的非阻塞式socket,通过异步事件回调模式采集数据;将采集的数据写入已处理队列的队尾,以便需求端从所述已处理队列的队首获取数据并进行保存。以此方式,可以通过先进先出的线性队列对数据采集任务和采集的数据进行按顺序执行,提高数据传输效率,同时采用异步非阻塞式的采集方式进一步提高数据采集的效率。进一步提高数据采集的效率。进一步提高数据采集的效率。

【技术实现步骤摘要】
数据采集的方法、装置、电子设备和存储介质


[0001]本公开涉及数据采集
,尤其涉及一种数据采集的方法、装置、电子设备和存储介质。

技术介绍

[0002]随着互联网技术的发展,网络的数据传输速度越来越高,因此对互联网数据的采集的要求也越来越高,但目前采用的同步阻塞式数据采集方式需要一直等待网络响应,直到数据采集结束后才能进行采集数据处理;多线程和多进程的数据采集方式容易在线程间切换的时候带来损耗,降低了数据采集的效率。
[0003]因此,亟需一种具有较高采集效率的数据采集的方法、装置、电子设备和存储介质。

技术实现思路

[0004]本公开提供了一种数据采集的方法、装置、设备以及存储介质。
[0005]根据本公开的第一方面,提供了一种数据采集的方法。该方法应用于数据采集中心,包括:
[0006]从待处理队列的队首获取数据采集任务并进行解析,得到url地址;其中,数据采集任务是由需求端写入待处理队列的队尾的;
[0007]创建与url地址连接的非阻塞式socket,通过异步事件回调模式采集数据;
[0008]将采集的数据写入已处理队列的队尾,以便需求端从已处理队列的队首获取数据并进行保存。
[0009]如上的方面和任一可能的实现方式,进一步提供一种实现方式,
[0010]待处理队列和已处理队列均为符合先进先出的数据处理顺序的线性队列。
[0011]如上的方面和任一可能的实现方式,进一步提供一种实现方式,
[0012]数据采集任务的数据结构包括任务名称、任务ID、url地址、并发数和采集数据关键字。
[0013]如上的方面和任一可能的实现方式,进一步提供一种实现方式,
[0014]需求端写入待处理队列的队尾包括:
[0015]判断待处理队列是否已满,若否,则将数据采集任务写入到待处理队列尾部并更新待处理队列的长度。
[0016]如上的方面和任一可能的实现方式,进一步提供一种实现方式,
[0017]从待处理队列的队首获取数据采集任务包括:
[0018]判断待处理队列是否为空,若否,则从待处理队列的队首获取数据采集任务并更新待处理队列的长度。
[0019]如上的方面和任一可能的实现方式,进一步提供一种实现方式,
[0020]将采集的数据写入已处理队列的队尾包括:
[0021]判断已处理队列是否已满,若否,则将采集的数据写入已处理队列的队尾并更新已处理队列的长度。
[0022]如上的方面和任一可能的实现方式,进一步提供一种实现方式,
[0023]需求端从已处理队列的队首获取数据包括:
[0024]判断已处理队列是否为空,若否,则从已处理队列的队首获取数据。
[0025]根据本公开的第二方面,提供了一种数据采集的装置。该装置包括:
[0026]获取模块,用于从待处理队列的队首获取数据采集任务并进行解析,得到url地址;其中,数据采集任务是由需求端写入待处理队列的队尾的;
[0027]创建模块,用于创建与url地址连接的非阻塞式socket,通过异步事件回调模式采集数据;
[0028]存储模块,用于将采集的数据写入已处理队列的队尾,以便需求端从已处理队列的队首获取数据并进行保存。
[0029]根据本公开的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,存储器上存储有计算机程序,处理器执行程序时实现如以上的方法。
[0030]根据本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现如根据本公开的第一方面和/或第二方面的方法。
[0031]通过先进先出的线性队列对数据采集任务和采集的数据进行按顺序执行,提高数据传输效率,同时采用异步非阻塞式的采集方式进一步提高数据采集的效率。
[0032]应当理解,
技术实现思路
部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
[0033]结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。附图用于更好地理解本方案,不构成对本公开的限定在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
[0034]图1示出了能够实现本公开的实施例的示例性运行环境的示意图;
[0035]图2示出了图1中所示的客户端、网络和数据采集中心之间的交互方法的示意图;
[0036]图3示出了根据本公开的实施例的数据采集的方法的流程图;
[0037]图4示出了根据本公开的实施例的数据采集的装置的框图;
[0038]图5示出了能够实施本公开的实施例的示例性电子设备的方框图。
具体实施方式
[0039]为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。
[0040]另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另
外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0041]图1示出了能够实现本公开的实施例的示例性运行环境100的示意图,所述运行环境100包括客户端101、网络102和数据采集中心103。应当理解的是,图1中的客户端101、网络102和数据采集中心103的数目仅仅是示意性的,根据需要,可以具有任意数目的客户端101、网络102和数据采集中心103。特别地,在目标数据不需要从远程采集的情况下,上述系统架构可以不包括网络,而只包括客户端和数据采集中心。
[0042]作为一个实施例,客户端将数据采集任务写入待处理队列的队尾;数据采集中心从待处理队列的队首获取数据采集任务并进行解析,得到url地址;数据采集中心创建与所述url地址连接的非阻塞式socket,通过异步事件回调模式采集数据;数据采集中心将采集的数据写入已处理队列的队尾;客户端从所述已处理队列的队首获取数据并进行保存。采用异步非阻塞式的采集方式提高数据采集的效率。
[0043]图3示出了根据本公开的实施例的数据采集的方法的流程图,该方法应用于数据采集中心,包括:
[0044]S301,从待处理队列的队首获取数据采集任务并进行解析,得到url地址;其中,数据采集任务是由需求端写入所述待处理队列的队尾的。
[0045]在一些实施例中,所述待处理队列和已处理队列均由所述数据采集中心创建。
[0046]在一些实施例中,所述待处理队列和已处理队列均为符合先进先出的数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据采集的方法,应用于数据采集中心,包括:从待处理队列的队首获取数据采集任务并进行解析,得到url地址;其中,数据采集任务是由需求端写入所述待处理队列的队尾的;创建与所述url地址连接的非阻塞式socket,通过异步事件回调模式采集数据;将采集的数据写入已处理队列的队尾,以便需求端从所述已处理队列的队首获取数据并进行保存。2.根据权利要求1所述的方法,其中,所述待处理队列和已处理队列均为符合先进先出的数据处理顺序的线性队列。3.根据权利要求1所述的方法,其中,所述数据采集任务的数据结构包括任务名称、任务ID、url地址、并发数和采集数据关键字。4.根据权利要求1所述的方法,其中,所述需求端写入所述待处理队列的队尾包括:判断所述待处理队列是否已满,若否,则将所述数据采集任务写入到所述待处理队列尾部并更新所述待处理队列的长度。5.根据权利要求1所述的方法,其中,所述从待处理队列的队首获取数据采集任务包括:判断所述待处理队列是否为空,若否,则从所述待处理队列的队首获取数据采集任务并更新所述待处理队列的长度。6.根据权利要求1所述的方法,其中,所述将采集的数据写入已处理队列的队尾包括:判断所述已...

【专利技术属性】
技术研发人员:郑旭刘加瑞陈勇
申请(专利权)人:安徽华云安科技有限公司
类型:发明
国别省市:

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

1