CN109951739A - 视频业务处理方法、装置及电子设备 - Google Patents
视频业务处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN109951739A CN109951739A CN201910241011.1A CN201910241011A CN109951739A CN 109951739 A CN109951739 A CN 109951739A CN 201910241011 A CN201910241011 A CN 201910241011A CN 109951739 A CN109951739 A CN 109951739A
- Authority
- CN
- China
- Prior art keywords
- task
- crawler
- account
- crawler task
- configuration file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请提供一种视频业务处理方法、装置及电子设备。方法包括:基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件;基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,所述配置文件记录所述爬虫任务集中的每个爬虫任务对应的账号和进程,其中,所述爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,所述第一爬虫任务为需要重复登录账号的任务,每个所述第一账号与一个爬虫任务对应,且与所述第一账号对应的爬虫任务为所述第一爬虫任务;根据为所述爬虫任务集中的爬虫任务分配的账号和进程执行所述爬虫任务集中的爬虫任务,能够改善因采集数据速率低导致视频业务监测的效率低的技术问题。
Description
技术领域
本发明涉及通信数据处理技术领域,具体而言,涉及一种视频业务处理方法、装置及电子设备。
背景技术
交互式网络电视(Internet Protocol Television,IPTV)是在宽带网络IP架构基础上实现多媒体视频节目互动传播的方式,用户可以通过“机顶盒+电视”的方式获得IPTV服务。电子节目指南(Electronic Programmer Guide,EPG),提供节目导视信息,是IPTV的一个门户系统,IPTV所提供的各种视频业务和所有的导航都是通过EPG系统来完成的。EPG数据关系到用户的体验,若EPG数据出错,将会影响整个数字电视业务,因此需要对EPG数据进行监测。在现有技术中,通常通过网络爬虫对EPG数据进行全覆盖的采集,由于EPG数据量巨大、采集数据的速率低导致视频业务监测的效率低。
发明内容
本申请提供一种视频业务处理方法、装置及电子设备。
为了实现上述目的,本申请实施例所提供的技术方案如下所示:
第一方面,本申请实施例提供一种视频业务处理方法,所述方法包括:基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件;基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,所述配置文件记录所述爬虫任务集中的每个爬虫任务对应的账号和进程,其中,所述爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,所述第一爬虫任务为需要重复登录账号的任务,每个所述第一账号与一个爬虫任务对应,且与所述第一账号对应的爬虫任务为所述第一爬虫任务;根据为所述爬虫任务集中的爬虫任务分配的账号和进程执行所述爬虫任务集中的爬虫任务。在本实施例提供的方法中,通过将需要重复登录账号的爬虫任务分配至独立的账号及进程来处理,使得需要重复登录账号的爬虫任务能单独被执行,一方面能够改善因爬虫任务在执行过程中需要重复登录而影响共用同一个账号的其他第一爬虫任务正常执行的技术问题,另一方面,能够提高爬虫任务获取数据的效率,从而改善因采集数据速率低导致视频业务监测的效率低的技术问题。
结合第一方面,在一些可选的实施方式中,在基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件之前,所述方法还包括:根据预先获取的爬虫任务、账户、进程,创建表征每个所述第一爬虫任务与一个所述第一账号相关联的第一关联关系、不需要重复登录账号的第二爬虫任务与至少一个第二账号相关联的第二关联关系,以及表征每个所述第一账号与一个第一进程相关联、所述第二账号与预设的第二进程相关联的第三关联关系;基于所述第一关联关系、所述第二关联关系及所述第三关联关系创建所述配置文件。在本实施例提供的方法中,通过预先获取的爬虫任务、账户、进程创建新的配置文件,该配置文件中不同类型的爬虫任务使用不同的账号关联策略,以避免执行任务时需反复登录账号的爬虫任务之间、需反复登录账号的爬虫任务和其他爬虫任务之间共用同一个账号,消除了执行反复登录账号的爬虫任务对其他任务的影响,从而提高了数据采集效率。
结合第一方面,在一些可选的实施方式中,基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,包括:判断所述爬虫任务集中是否存在所述第一爬虫任务或第二爬虫任务;在所述爬虫任务集中存在所述第一爬虫任务时,基于所述配置文件将每个所述第一爬虫任务分配至一个所述第一进程,一个所述第一进程与一个所述第一账号相对应,且一个所述第一账号与一个所述第一爬虫任务相对应;在所述爬虫任务集中存在所述第二爬虫任务时,基于所述配置文件将所有所述第二爬虫任务分配至至少一个所述第二进程,所述至少一个所述第二进程与一个预设的第二账号相对应,一个所述第二账号与至少一个所述第二爬虫任务相对应。在本实施例提供的方法中,通过在配置文件中针对不同类型的爬虫任务使用不同的进程分配策略,结合进程和账号的对应关系,以消除相互影响的爬虫任务在同一个进程执行,提高了数据采集的效率。
结合第一方面,在一些可选的实施方式中,将所有所述第二爬虫任务分配至至少一个第二进程,包括:将每个所述第二爬虫任务分配至一个所述第二进程,其中,不同的所述第二爬虫任务所分配的所述第二进程不相同。在本实施例提供的方法中,通过各个第二爬虫任务在各自独立的进程中执行,相比于多个第二爬虫任务在同一个独立进程中执行提升了数据采集的效率。
结合第一方面,在一些可选的实施方式中,所述配置文件中携带有第一预设标识和/或第二预设标识,所述第一预设标识用于确定所述爬虫任务在执行过程中需要重复登录所述账号;所述第二预设标识用于确定所述爬虫任务在执行过程中不需要重复登录所述账号,还包括:判断所述爬虫任务集中是否存在需要重复登录账号的所述第一爬虫任务或不需要重复登录账号的第二爬虫任务,包括:在所述爬虫任务集中的所述爬虫任务携带的标识为所述第一预设标识时,确定所述爬虫任务集中存在所述第一爬虫任务;在所述爬虫任务集中的所述爬虫任务携带的标识为所述第二预设标识时,确定所述爬虫任务集中存在所述第二爬虫任务。在本实施例提供的方法中,通过在配置文件中为爬虫任务添加标识以区分是第一爬虫任务还是第二爬虫任务,可以快速判断爬虫任务类型,提高了爬虫任务执行效率。
第二方面,本申请还提供一种视频业务处理装置,所述装置包括:获取模块,用于基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件;分配模块,用于基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,所述配置文件记录所述爬虫任务集中的每个爬虫任务对应的账号和进程,其中,所述爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,所述第一爬虫任务为需要重复登录账号的任务,每个所述第一账号与一个爬虫任务对应,且与所述第一账号对应的爬虫任务为所述第一爬虫任务;执行模块,用于根据为所述爬虫任务集中的爬虫任务分配的账号和进程执行所述爬虫任务集中的爬虫任务。
结合第二方面,在一些可选的实施方式中,在获取模块基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件之前,所述装置还包括:关联模块,用于根据预先获取的爬虫任务、账户、进程,创建表征每个所述第一爬虫任务与一个所述第一账号相关联的第一关联关系、不需要重复登录账号的第二爬虫任务与至少一个第二账号相关联的第二关联关系,以及表征每个所述第一账号与一个第一进程相关联、所述第二账号与预设的第二进程相关联的第三关联关系;配置生成模块,用于基于所述第一关联关系、所述第二关联关系及所述第三关联关系创建所述配置文件。
结合第二方面,在一些可选的实施方式中,所述分配模块还用于:判断所述爬虫任务集中是否存在所述第一爬虫任务或第二爬虫任务;在所述爬虫任务集中存在所述第一爬虫任务时,基于所述配置文件将每个所述第一爬虫任务分配至一个所述第一进程,一个所述第一进程与一个所述第一账号相对应,且一个所述第一账号与一个所述第一爬虫任务相对应;在所述爬虫任务集中存在所述第二爬虫任务时,基于所述配置文件将所有所述第二爬虫任务分配至至少一个所述第二进程,一个所述第二进程与一个预设的第二账号相对应,一个所述第二账号与至少一个所述第二爬虫任务相对应。
结合第二方面,在一些可选的实施方式中,所述分配模块还用于:将每个所述第二爬虫任务分配至一个所述第二进程,其中,不同的所述第二爬虫任务所分配的所述第二进程不相同。
第三方面,本申请实施例还提供一种电子设备,包括相互耦合的存储模块、处理模块、通信模块,所述存储模块内存储计算机程序,当所述计算机程序被所述处理模块执行时,使得所述电子设备执行上述的方法。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举本申请实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的电子设备与数据源服务器连接的示意图。
图2为本申请实施例提供的电子设备的方框示意图。
图3为本申请实施例提供的视频业务处理方法的流程示意图。
图4为本申请实施例提供的视频业务处理装置的方框示意图。
图标:10-电子设备;11-处理模块;13-通信模块;12-存储模块;20-数据源服务器;100-视频业务处理装置;110-获取模块;120-分配模块;130-执行模块。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
交互式网络电视(Internet Protocol Television,IPTV)是在宽带网络IP架构基础上实现多媒体视频节目互动传播的方式,用户可以通过“机顶盒+电视”的方式获得IPTV服务。电子节目指南(Electronic Programmer Guide,EPG),提供节目导视信息,是IPTV的一个门户系统,IPTV所提供的各种视频业务和所有的导航都是通过EPG系统来完成的。EPG数据关系到用户的体验,若EPG数据出错,将会影响整个数字电视业务,因此需要对EPG数据进行监测。在现有技术中,通常通过网络爬虫对EPG数据进行全覆盖的采集,由于EPG数据量巨大导致采集效率低,不能有效地对EPG的数据进行监测。
鉴于上述问题,本申请申请人经过研究探索后发现,利用网络爬虫进行EPG数据监测时,通常只能启动一个进程,虽然该进程中可以同时执行多个爬虫任务,但由于一个进程使用一个账号,导致了多个爬虫任务共用一个帐号可能出现相互影响而无法正常执行。具体来说,在这多个爬虫任务中包括了需要重复登录账号的爬虫任务时,与上述需要重复登录账号的爬虫任务共用一个账号的其他爬虫任务会因为账号反复登录而无法正常执行。本申请申请人提出以下实施例以解决上述问题。下面结合附图,对本申请实施例作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,本申请实施例提供的电子设备10可以通过网络与数据源服务器20建立通信连接,以进行数据交互。该电子设备10安装有网络爬虫,能够采集数据源服务器20上的视频业务数据,以便于基于采集的视频业务数据进行分析,以得出视频业务的监测结果。
电子设备10可以是,服务器、个人电脑(Personal Computer,PC)、平板电脑、智能手机、个人数字助理(PersonalDigital Assistant,PDA)、移动上网设备(Mobile InternetDevice,MID)等。数据源服务器20可以是,但不限于,云服务器、分布式服务器、集群服务器,用于存储视频数据。网络可以是,但不限于,有线网络或无线网络。
请参照图2,在本实施例中,电子设备10可以包括处理模块11、通信模块13、存储模块12以及视频业务处理装置100,处理模块11、通信模块13、存储模块12以及视频业务处理装置100各个元件之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
处理模块11可以是一种集成电路芯片,具有信号的处理能力。上述处理模块11可以是通用处理器。例如,该处理器可以是中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
通信模块13用于通过网络建立电子设备10与数据源服务器20之间的通信连接,并通过网络收发数据。
存储模块12可以是,但不限于,随机存取存储器,只读存储器,可编程只读存储器,可擦除可编程只读存储器,电可擦除可编程只读存储器等。在本实施例中,存储模块12可以用于存储配置文件、账号等。当然,存储模块12还可以用于存储程序,处理模块11在接收到执行指令后,执行该程序。
进一步地,视频业务处理装置100包括至少一个可以软件或固件(firmware)的形式存储于存储模块12中或固化在电子设备10操作系统(Operating System,OS)中的软件功能模块。处理模块11用于执行存储模块12中存储的可执行模块130,例如视频业务处理装置100所包括的软件功能模块及计算机程序等。
可以理解的是,图2所示的结构仅为电子设备10的一种结构示意图,电子设备10还可以包括比图2所示更多或更少的组件。图2中所示的各组件可以采用硬件、软件或其组合实现。
请参照图3,本申请实施例提供的视频业务处理方法可以应用于上述的电子设备10,由该电子设备10执行或实现视频业务处理方法的各步骤,通过根据配置文件为需要重复登录账号的第一爬虫任务指定单独的账号和单独的进程,避免多个第一爬虫任务共用同一个账号执行时相互影响,有助于提高采集视频业务的监测效率。
在本实施例中,视频业务处理方法可以包括以下各步骤:
步骤S210,基于预设的视频业务获取与视频业务对应的爬虫任务集及配置文件;
步骤S220,基于配置文件为爬虫任务集中的爬虫任务分配账号和进程,配置文件记录爬虫任务集中的每个爬虫任务对应的账号和进程,其中,爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,第一爬虫任务为需要重复登录账号的任务,每个第一账号与一个爬虫任务对应,且与第一账号对应的爬虫任务为第一爬虫任务;
步骤S230,根据为爬虫任务集中的爬虫任务分配的账号和进程执行爬虫任务集中的爬虫任务。
下面将对图3中所示的视频业务处理方法的各步骤进行详细阐述:
步骤S210,基于预设的视频业务获取与视频业务对应的爬虫任务集及配置文件。
在本实施例中,电子设备10可以从数据源服务器20(比如EPG服务器、网络电视服务器)获取预设的视频业务,然后加载与视频业务对应的配置文件。预设的视频业务可以由管理人员根据实际情况进行设置。例如,视频业务包括但不限于直播频道、直播频道回看、点播节目及其他一些增值业务等。
爬虫任务集可以是与视频业务对应的待爬取的任务的集合。该爬虫任务集中可以包括一个或多个爬虫任务,其爬虫任务的数量可以根据实际情况进行设置。比如,爬虫任务可以包括但不限于用于爬取直播频道的爬虫任务、用于爬取直播频道回看的爬虫任务、用于爬取点播节目的爬虫任务等。
配置文件可以是预先存储在电子设备10的存储器中,也可以是管理人员根据爬虫任务集在执行爬取任务之前创建的。配置文件用于为不同的爬虫任务类型指定账号和进程,其中爬虫任务类型包括:需要重复登录账号的第一爬虫任务和不需要重复登录账号的第二爬虫任务。
作为一种可选的实施方式,在步骤S210之前,方法还可以包括创建配置文件的步骤。例如,该方法还包括:根据预先获取的爬虫任务、账户、进程,创建表征每个第一爬虫任务与一个第一账号相关联的第一关联关系、不需要重复登录账号的第二爬虫任务与至少一个第二账号相关联的第二关联关系,以及表征每个第一账号与一个第一进程相关联、第二账号与预设的第二进程相关联的第三关联关系;基于第一关联关系、第二关联关系及第三关联关系创建配置文件。
在本实施例中,用户(比如开发设计人员)可以根据要监测的视频业务确定爬虫任务、根据爬虫任务的类型和数量、以及监测目标(比如10小时内完成所有爬取任务)确定账户和进程的数量。用户也可以根据实际情况设置自动爬取,比如根据关键字、URL等爬取条件执行爬取任务。
下面将举例阐述配置文件的创建过程:
待爬取任务集1,可以包含三个需要重复登录账号的爬虫任务:爬取一级导航首页数据、直播频道数据、点播最新上线数据。上述三个待爬取任务需要使用三个不同的账号和三个不同的进程执行,以避免三个待爬取任务执行过程中相互影响。其中,将上述三个第一爬虫任务分别与三个不同的账号相关联,形成第一关联关系。
待爬取任务集2,包含不需要重复登录账号的爬虫任务:爬取各个点播栏目的数据和直播频道回看数据。针对各个点播栏目,各建立一个爬虫任务。针对回看数据,建立一个爬虫任务。此类不需重复登录账号的爬虫任务可以共用一个账号,为上述每一个爬虫任务分配一个不同的进程。通过分别为每一个第二爬虫任务建立一个进程,能快速采集视频业务数据,通过爬取的数据,及时发现视频业务是否能够正常访问等问题。其中,为上述每个第二爬虫任务分配同一个账号,形成第二关联关系。
待爬取任务集3,包含两个第二爬虫任务:卫视频道的点播栏目的数据和直播频道回看数据。针对点播栏目的数据,建立爬虫任务A,将账号A1和爬虫任务A关联。针对直播频道回看数据,建立另一个爬虫任务B,将账号B1和爬虫任务B关联,形成第二关联关系。本例中,第二关联关系包括:账号A1和对应的爬虫任务A,账号B1和对应的爬虫任务B。
在本实施例中,在建立第一关联关系和第二关联关系之前,先判断爬虫任务集中是第一爬虫任务还是第二爬虫任务。再分别对第一爬虫任务和第二爬虫任务按照不同的方式分配账号,并根据账号和进程的对应关系,将爬虫任务分配指定的进程执行。
步骤S220,基于配置文件为爬虫任务集中的爬虫任务分配账号和进程,配置文件记录爬虫任务集中的每个爬虫任务对应的账号和进程,其中,爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,第一爬虫任务为需要重复登录账号的任务,每个第一账号与一个爬虫任务对应,且与第一账号对应的爬虫任务为第一爬虫任务。
在配置文件中预先为爬虫任务分配账号,通常访问视频业务需要进行用户身份鉴权,用户需要有合法的账号,登录账号后才能有权限使用视频业务服务,比如获取EPG数据需要对应的IPTV用户信息以模拟机顶盒登录。
根据配置文件中的爬虫任务、该爬虫任务使用的账号、执行任务使用的进程执行爬虫任务集中的爬虫任务。其中爬虫任务可以是:视频业务爬取任务,比如:用户身份鉴权任务、直播频道回看任务等。账号可以是用户名字、用户的手机号、视频会员卡号等。执行任务使用的进程可以包括但不限于进程名字、进程ID号等用以区分不同进程的进程标识号。
作为一种可选的实施方式,步骤S220可以包括:判断爬虫任务集中是否存在第一爬虫任务或第二爬虫任务;在爬虫任务集中存在第一爬虫任务时,基于配置文件将每个第一爬虫任务分配至一个第一进程,一个第一进程与一个第一账号相对应,且一个第一账号与一个第一爬虫任务相对应;在爬虫任务集中存在第二爬虫任务时,基于配置文件将所有第二爬虫任务分配至至少一个第二进程,一个第二进程与一个预设的第二账号相对应,一个第二账号与至少一个第二爬虫任务相对应。
在本实施例中,所有的第二爬虫任务可以分配至一个账号来执行,也就是由一个账号对应的第二进程来执行所有的第二爬虫任务。或者,所有的第二爬虫任务可以分配至多个账号(可以称为第二账号)来执行。一个第二账号对应一个第二进程。其中,分配的第二账号的数量可以根据实际情况进行设置,可以为一个,也可以为多个。若第二账号为多个,也就是说可以将所有的第二爬虫任务灵活地分配至多个第二账号,一个第二账号可以分配有一个或多个第二爬虫任务。为每一个第一爬虫分配一个单独的账号。不同类型的爬虫任务使用不同的账号关联策略,以消除执行任务时需要反复登录账号的第一爬虫任务之间、第一爬虫任务与第二爬虫任务之间共用同一个账号。
作为一种可选的实施方式,将所有第二爬虫任务分配至至少一个第二进程,可以包括:将每个第二爬虫任务分配至一个第二进程,其中,不同的第二爬虫任务所分配的第二进程不相同。
在本实施例中,可以为每一个第二爬虫任务分别分配一个单独的进程,以达到第二爬虫任务多进程同时处理,进一步提高了视频数据的爬取效率。
作为一种可选的实施方式,配置文件中携带有第一预设标识和/或第二预设标识,第一预设标识用于确定爬虫任务在执行过程中需要重复登录账号,第二预设标识用于确定爬虫任务在执行过程中不需要重复登录账号。判断爬虫任务集中是否存在需要重复登录账号的第一爬虫任务或不需要重复登录账号的第二爬虫任务的步骤,可以包括:在爬虫任务集中的爬虫任务携带的标识为第一预设标识时,确定爬虫任务集中存在第一爬虫任务;在爬虫任务集中的爬虫任务携带的标识为第二预设标识时,确定爬虫任务集中存在第二爬虫任务。
可理解地,配置文件中携带有第一预设标识或第二预设标识,或者同时携带有第一预设标识和第二预设标识。其中,第一预设标识与第二预设标识可以根据实际情况进行设置,可以为数字、字符串等,这里不作具体限定。
在本实施例中,配置文件中携带了与爬虫任务类型相对应的预设标识(泛指第一预设标识、第二预设标识),该标识可以为数字、字符或两者的组合,用来标识爬虫任务集中是否存在第一爬虫任务、第二爬虫任务。通过预设标识可以快速判断爬虫任务类型,并快速确定爬虫任务的账号,节省了爬虫任务分配账号的预处理时间。
例如,第一预设标识为“01”,则携带标识“01”的爬虫任务为第一爬虫任务,并为其分配第一账号。第一预设标识为“02”,则携带标识“02”的爬虫任务为第二爬虫任务,并为其分配第二账号。
步骤S230,根据为爬虫任务集中的爬虫任务分配的账号和进程执行爬虫任务集中的爬虫任务。
可理解地,在共用账号执行多个爬虫任务时,若在执行该账号下的一个爬虫任务时,需要该账号重复登录(如登录鉴权验证、首页加载等需要重复登录账号),那么在重复登录时,会停止执行该账号下的其他爬虫任务。在本实施例中,通过在配置文件中为每个第一爬虫任务(也就是在执行过程中需要重复登录的爬虫任务)分配单独的账号,以达到不同的第一爬虫任务使用不同的账号,且执行第一爬虫任务的账号在执行第一爬虫任务的过程中,不需要执行其他爬虫任务,使得需要重复登录账号的爬虫任务能单独被执行。
例如,利用pyspider工具结合phantomjs工具实现的网络爬虫,phantomjs作为代理服务器使用。在设定爬虫任务的配置文件(或称为脚本)时,就在可以脚本中指定各类爬虫任务对应的账号及通道(进程或线程),例如,在配置文件中指定用于执行各类爬虫任务的通道ID及端口号,结合配置文件设定通道ID和端口的关联关系。在启动pyspider时就会指定phantomjs启动对应端口的进程。爬虫任务执行时,通过脚本内设定的通道ID就能确定爬虫任务对应的端口及进程,然后基于该进程来执行爬虫任务,就实现了不同爬虫任务在不同进程中执行的目的,这样就能同时通过多个账号模拟多个机顶盒爬取EPG内容,提高了视频业务数据获取的效率,有助于提高视频业务的监测效率。
基于此,一方面能够改善因爬虫任务在执行过程中需要重复登录而影响共用同一个账号的其他爬虫任务正常执行的技术问题,另一方面,能够提高爬虫任务获取数据的效率,从而改善因采集数据速率低导致视频业务监测的效率低的技术问题。
请参照图4,本申请实施例还提供一种视频业务处理装置100,可以应用于上述的电子设备10,用于执行或实现如图3所示的视频业务处理方法的各步骤,能够改善因采集数据速率低导致视频业务监测的效率低的技术问题。其中,视频业务处理装置100可以包括获取模块110、分配模块120及执行模块130。
获取模块110,用于基于预设的视频业务获取与视频业务对应的爬虫任务集及配置文件。
分配模块120,用于基于配置文件为爬虫任务集中的爬虫任务分配账号和进程,配置文件记录爬虫任务集中的每个爬虫任务对应的账号和进程,其中,爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,第一爬虫任务为需要重复登录账号的任务,每个第一账号与一个爬虫任务对应,且与第一账号对应的爬虫任务为第一爬虫任务。
可选地,分配模块120还可以用于:将每个第二爬虫任务分配至一个第二进程,其中,不同的第二爬虫任务所分配的第二进程不相同。
执行模块130,用于根据为爬虫任务集中的爬虫任务分配的账号和进程执行爬虫任务集中的爬虫任务。
可选地,视频业务处理装置100还可以包括关联模块及配置生成模块。
在获取模块110基于预设的视频业务获取与视频业务对应的爬虫任务集及配置文件之前,关联模块用于根据预先获取的爬虫任务、账户、进程,创建表征每个第一爬虫任务与一个第一账号相关联的第一关联关系、不需要重复登录账号的第二爬虫任务与至少一个第二账号相关联的第二关联关系,以及表征每个第一账号与一个第一进程相关联、第二账号与预设的第二进程相关联的第三关联关系。
可选地,分配模块120还用于:判断爬虫任务集中是否存在第一爬虫任务或第二爬虫任务;在爬虫任务集中存在第一爬虫任务时,基于配置文件将每个第一爬虫任务分配至一个第一进程,一个第一进程与一个第一账号相对应,且一个第一账号与一个第一爬虫任务相对应;在爬虫任务集中存在第二爬虫任务时,基于配置文件将所有第二爬虫任务分配至至少一个第二进程,一个第二进程与一个预设的第二账号相对应,一个第二账号与至少一个第二爬虫任务相对应。
可选地,配置文件中携带有第一预设标识和/或第二预设标识,第一预设标识用于确定爬虫任务在执行过程中需要重复登录账号;第二预设标识用于确定爬虫任务在执行过程中不需要重复登录账号。关联模块还可以用于:在爬虫任务集中的爬虫任务携带的标识为第一预设标识时,确定爬虫任务集中存在第一爬虫任务;在爬虫任务集中的爬虫任务携带的标识为第二预设标识时,确定爬虫任务集中存在第二爬虫任务。
配置生成模块,用于基于第一关联关系、第二关联关系及第三关联关系创建配置文件。
需要说明的是,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述视频业务处理装置100的具体工作过程,可以参考前述方法中的各步骤对应过程,在此不再过多赘述。
本申请实施例还提供一种计算机可读存储介质。可读存储介质中存储有计算机程序,当计算机程序在计算机上运行时,使得计算机执行如上述实施例中的视频业务处理方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景的方法。
综上所述,本申请提供一种视频业务处理方法、装置及电子设备。方法包括:基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件;基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,所述配置文件记录所述爬虫任务集中的每个爬虫任务对应的账号和进程,其中,所述爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,所述第一爬虫任务为需要重复登录账号的任务,每个所述第一账号与一个爬虫任务对应,且与所述第一账号对应的爬虫任务为所述第一爬虫任务;根据为所述爬虫任务集中的爬虫任务分配的账号和进程执行所述爬虫任务集中的爬虫任务,能够改善因采集数据速率低导致视频业务监测的效率低的技术问题。在本方案中,通过将需要重复登录账号的爬虫任务分配至独立的账号及进程来处理,使得需要重复登录账号的爬虫任务能单独被执行,一方面能够改善因爬虫任务在执行过程中需要重复登录而影响共用同一个账号的其他爬虫任务正常执行的技术问题,另一方面,能够提高爬虫任务获取数据的效率,从而改善因采集数据速率低导致视频业务监测的效率低的技术问题。
本申请所提供的实施例中,应该理解到,所揭露的装置、系统和方法,也可以通过其它的方式实现。以上所描述的装置、系统和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
可以替换的,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种视频业务处理方法,其特征在于,所述方法包括:
基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件;
基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,所述配置文件记录所述爬虫任务集中的每个爬虫任务对应的账号和进程,其中,所述爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,所述第一爬虫任务为需要重复登录账号的任务,每个所述第一账号与一个爬虫任务对应,且与所述第一账号对应的爬虫任务为所述第一爬虫任务;
根据为所述爬虫任务集中的爬虫任务分配的账号和进程执行所述爬虫任务集中的爬虫任务。
2.根据权利要求1所述的方法,其特征在于,在基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件之前,所述方法还包括:
根据预先获取的爬虫任务、账户、进程,创建表征每个所述第一爬虫任务与一个所述第一账号相关联的第一关联关系、不需要重复登录账号的第二爬虫任务与至少一个第二账号相关联的第二关联关系,以及表征每个所述第一账号与一个第一进程相关联、所述第二账号与预设的第二进程相关联的第三关联关系;
基于所述第一关联关系、所述第二关联关系及所述第三关联关系创建所述配置文件。
3.根据权利要求2所述的方法,其特征在于,基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,包括:
判断所述爬虫任务集中是否存在所述第一爬虫任务或第二爬虫任务;
在所述爬虫任务集中存在所述第一爬虫任务时,基于所述配置文件将每个所述第一爬虫任务分配至一个所述第一进程,一个所述第一进程与一个所述第一账号相对应,且一个所述第一账号与一个所述第一爬虫任务相对应;
在所述爬虫任务集中存在所述第二爬虫任务时,基于所述配置文件将所有所述第二爬虫任务分配至至少一个所述第二进程,一个所述第二进程与一个预设的第二账号相对应,一个所述第二账号与至少一个所述第二爬虫任务相对应。
4.根据权利要求3所述的方法,其特征在于,将所有所述第二爬虫任务分配至至少一个第二进程,包括:
将每个所述第二爬虫任务分配至一个所述第二进程,其中,不同的所述第二爬虫任务所分配的所述第二进程不相同。
5.根据权利要求3所述的方法,其特征在于,所述配置文件中携带有第一预设标识和/或第二预设标识,所述第一预设标识用于确定所述爬虫任务在执行过程中需要重复登录账号;所述第二预设标识用于确定所述爬虫任务在执行过程中不需要重复登录账号;
判断所述爬虫任务集中是否存在需要重复登录账号的所述第一爬虫任务或不需要重复登录账号的第二爬虫任务,包括:
在所述爬虫任务集中的所述爬虫任务携带的标识为所述第一预设标识时,确定所述爬虫任务集中存在所述第一爬虫任务;
在所述爬虫任务集中的所述爬虫任务携带的标识为所述第二预设标识时,确定所述爬虫任务集中存在所述第二爬虫任务。
6.一种视频业务处理的装置,其特征在于,所述装置包括:
获取模块,用于基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件;
分配模块,用于基于所述配置文件为所述爬虫任务集中的爬虫任务分配账号和进程,所述配置文件记录所述爬虫任务集中的每个爬虫任务对应的账号和进程,其中,所述爬虫任务集中的不同的第一爬虫任务对应的第一账号不相同,所述第一爬虫任务为需要重复登录账号的任务,每个所述第一账号与一个爬虫任务对应,且与所述第一账号对应的爬虫任务为所述第一爬虫任务;
执行模块,用于根据为所述爬虫任务集中的爬虫任务分配的账号和进程执行所述爬虫任务集中的爬虫任务。
7.根据权利要求6所述的装置,其特征在于,在获取模块基于预设的视频业务获取与所述视频业务对应的爬虫任务集及配置文件之前,所述装置还包括:
关联模块,用于根据预先获取的爬虫任务、账户、进程,创建表征每个所述第一爬虫任务与一个所述第一账号相关联的第一关联关系、不需要重复登录账号的第二爬虫任务与至少一个第二账号相关联的第二关联关系,以及表征每个所述第一账号与一个第一进程相关联、所述第二账号与预设的第二进程相关联的第三关联关系;
配置生成模块,用于基于所述第一关联关系、所述第二关联关系及所述第三关联关系创建所述配置文件。
8.根据权利要求7所述的装置,其特征在于,所述分配模块还用于:
判断所述爬虫任务集中是否存在所述第一爬虫任务或第二爬虫任务;
在所述爬虫任务集中存在所述第一爬虫任务时,基于所述配置文件将每个所述第一爬虫任务分配至一个所述第一进程,一个所述第一进程与一个所述第一账号相对应,且一个所述第一账号与一个所述第一爬虫任务相对应;
在所述爬虫任务集中存在所述第二爬虫任务时,基于所述配置文件将所有所述第二爬虫任务分配至至少一个所述第二进程,一个所述第二进程与一个预设的第二账号相对应,一个所述第二账号与至少一个所述第二爬虫任务相对应。
9.根据权利要求8所述的装置,其特征在于,所述分配模块还用于:
将每个所述第二爬虫任务分配至一个所述第二进程,其中,不同的所述第二爬虫任务所分配的所述第二进程不相同。
10.一种电子设备,其特征在于,包括相互耦合的存储模块、处理模块、通信模块,所述存储模块内存储计算机程序,当所述计算机程序被所述处理模块执行时,使得所述电子设备执行权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910241011.1A CN109951739B (zh) | 2019-03-27 | 2019-03-27 | 视频业务处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910241011.1A CN109951739B (zh) | 2019-03-27 | 2019-03-27 | 视频业务处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109951739A true CN109951739A (zh) | 2019-06-28 |
CN109951739B CN109951739B (zh) | 2021-06-08 |
Family
ID=67011912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910241011.1A Active CN109951739B (zh) | 2019-03-27 | 2019-03-27 | 视频业务处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109951739B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101833587A (zh) * | 2010-05-28 | 2010-09-15 | 上海交通大学 | 网络视频搜索系统 |
US20120102534A1 (en) * | 2010-10-26 | 2012-04-26 | Samsung Electronics Co., Ltd. | Method and device for transmitting and receiving video stream |
CN107784036A (zh) * | 2016-08-31 | 2018-03-09 | 北京国双科技有限公司 | 网络爬虫系统和基于网络爬虫系统的数据处理方法 |
CN108268498A (zh) * | 2016-12-30 | 2018-07-10 | 北京国双科技有限公司 | 批量爬虫任务的处理方法和装置 |
-
2019
- 2019-03-27 CN CN201910241011.1A patent/CN109951739B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101833587A (zh) * | 2010-05-28 | 2010-09-15 | 上海交通大学 | 网络视频搜索系统 |
US20120102534A1 (en) * | 2010-10-26 | 2012-04-26 | Samsung Electronics Co., Ltd. | Method and device for transmitting and receiving video stream |
CN107784036A (zh) * | 2016-08-31 | 2018-03-09 | 北京国双科技有限公司 | 网络爬虫系统和基于网络爬虫系统的数据处理方法 |
CN108268498A (zh) * | 2016-12-30 | 2018-07-10 | 北京国双科技有限公司 | 批量爬虫任务的处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109951739B (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111416811B (zh) | 越权漏洞检测方法、系统、设备及存储介质 | |
CN108199921A (zh) | 一种模拟测试的方法、装置及存储介质 | |
CN103152391A (zh) | 一种日志输出方法和装置 | |
WO2021104387A1 (zh) | 一种自动识别有效数据采集模块的方法和系统 | |
US8990956B2 (en) | Systems and methods of exchanging information for a reward | |
CN109151600B (zh) | 一种特效缺失的补偿方法、装置、服务器及存储介质 | |
CN110764979A (zh) | 日志识别方法、系统、电子设备和计算机可读介质 | |
CN113132400A (zh) | 业务处理方法、装置、计算机系统及存储介质 | |
CN109951739A (zh) | 视频业务处理方法、装置及电子设备 | |
CN108829575A (zh) | 测试案例推荐方法、电子装置及可读存储介质 | |
CN107302714A (zh) | 一种映射文件的切换方法和装置 | |
CN111953721A (zh) | 访问流量控制方法和装置 | |
CN113495498B (zh) | 用于硬件设备的模拟方法、模拟器、设备和介质 | |
CN109542743A (zh) | 日志校验方法、装置、电子设备及计算机可读存储介质 | |
CN115203178A (zh) | 数据质检方法、装置、电子设备及存储介质 | |
CN114489661A (zh) | 基于反馈机制的资产和指纹识别方法及相关设备 | |
CN113656313A (zh) | 自动化测试处理方法及装置 | |
CN112860328A (zh) | 服务器的控制方法、装置、计算设备和介质 | |
US20160357745A1 (en) | Method and system for providing a search result | |
CN109409090A (zh) | 网站后台检测方法、装置及服务器 | |
US9767497B1 (en) | Distributor business policy driven cloud services integration | |
CN118245317A (zh) | 基于分布式服务器集群的日志获取方法、装置和设备 | |
CN117271332A (zh) | 测试环境配置方法、装置、电子设备以及存储介质 | |
CN114817073A (zh) | 自动化测试方法、装置、设备、介质和程序产品 | |
CN115687076A (zh) | 测试方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |