CN111159514A - 网络爬虫的任务有效性检测方法、装置和设备及存储介质 - Google Patents

网络爬虫的任务有效性检测方法、装置和设备及存储介质 Download PDF

Info

Publication number
CN111159514A
CN111159514A CN201811318524.XA CN201811318524A CN111159514A CN 111159514 A CN111159514 A CN 111159514A CN 201811318524 A CN201811318524 A CN 201811318524A CN 111159514 A CN111159514 A CN 111159514A
Authority
CN
China
Prior art keywords
log
url
task
recorded
index
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
Application number
CN201811318524.XA
Other languages
English (en)
Other versions
CN111159514B (zh
Inventor
段盼盼
初光磊
王轶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201811318524.XA priority Critical patent/CN111159514B/zh
Publication of CN111159514A publication Critical patent/CN111159514A/zh
Application granted granted Critical
Publication of CN111159514B publication Critical patent/CN111159514B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种网络爬虫的任务有效性检测方法、装置和设备及存储介质,用于检测网络爬虫执行采集任务的有效性。该方法包括:记录网络爬虫在执行爬取网页数据任务的过程中的日志;对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,其中,一个主URL对应多个子URL,所述至少一个指标的值是基于所述主URL以及所述主URL对应的子URL的日志进行确定的;确定所述至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值,其中,一个指标对应一个预设阈值;若确定结果为是,则确定上述任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。

Description

网络爬虫的任务有效性检测方法、装置和设备及存储介质
技术领域
本发明涉及网络数据采集技术领域,特别涉及一种网络爬虫的任务有效性检测方法、装置和设备及存储介质。
背景技术
随着互联网的快速发展,以及大数据技术在互联网领域的重要性越来越高,网络爬虫(Web Crawler)成为了获取数据信息的一种重要的方式。但是,为了尽可能快速的获取大量的数据信息,可能会从多个网站来采集数据信息,采集任务越来越多,对于网络爬虫的执行任务的有效性的检测难度及复杂度也就会提升。
现有的有效性检测方法主要为对每个采集任务的采集数据量进行监控,通过对每个采集任务每天或者每小时,甚至每分钟的采集量进行监控,并为监控任务设置阈值,再根据阈值来对不正常的采集任务进行告警。但是,现有的检测方法存在着以下的问题:
第一,每个网站每天发布信息的时间不固定,每天的数据量也会随着各种因素的影响有差别,这样每天不同时间段的采集量浮动会比较大,监控阈值的设定难度大,并且一旦监控阈值设置得不恰当,监控的准确度也就随之降低了;
第二,网络爬虫的服务器的网络及网站服务器的网络可能会有波动,就可能导致某条信息采集失败或采集延迟,但是整体采集数据量并无较大差异,对于这种情况通过现有的检测方法则无法检测到异常;
因此,目前对于网络爬虫的执行任务的有效性检测方法并不能有效的检测到出现问题的采集任务,从而造成信息的丢失。
发明内容
本发明实施例提供一种网络爬虫的任务有效性检测方法、装置和设备及存储介质,用于检测网络爬虫执行采集任务的有效性。
第一方面,提供一种网络爬虫的任务有效性检测方法,包括:
记录网络爬虫在执行爬取网页数据任务的过程中的日志;
对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,其中,一个主URL对应多个子URL,所述至少一个指标的值是基于所述主URL以及所述主URL对应的子URL的日志进行确定的;
确定所述至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值,其中,一个指标对应一个预设阈值;
若确定结果为是,则确定上述任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。
本发明实施例中,通过网络爬虫在执行任务过程中的日志,通过对日志进行分析,确定与网络爬虫的任务失效有关的至少一个指标,进而通过至少一个指标来判断网络爬虫的任务是否失效。该方法能够基于日志对网络爬虫的任务失效性进行检测,通过日志可以对网络爬虫的任务执行过程实时进行监控,从而可以有效的反映出网络爬虫执行任务过程中是否出现异常,从而可以及时检测出失效的任务。
可选的,记录网络爬虫在执行爬取网页数据任务的过程中的日志,包括:
在所述网络爬虫执行爬取网页数据任务的过程中,通过所述网络爬虫与网络服务器之间的中间件记录日志,所述日志包括请求日志、异常日志、响应日志、解析错误日志以及任务成功日志中的至少一种;
将记录的日志存入消息队列;其中,所述请求日志是基于所述网络爬虫向所述网络服务器发送的访问请求消息记录的日志,所述异常日志是在所述访问请求消息访问未成功时记录的日志,所述响应日志是基于所述网络服务器基于所述访问请求消息返回的响应消息记录的日志,所述解析日志是对请求访问的URL解析未成功时记录的日志,所述任务成功日志是在所述网络爬虫执行爬取网页数据任务完全成功时记录的日志。
本发明实施例中,通过中间件记录日志,不会对网络爬虫的运行过程造成干扰,以及,通过消息队列存储日志,以便于分布式的处理日志,减少日志的堆积。
可选的,所述中间件包括请求中间件和解析中间件,则在所述网络爬虫执行爬取网页数据任务的过程中,通过所述网络爬虫与网络服务器之间的中间件记录日志,包括:
通过所述请求中间件记录所述请求日志、所述异常日志以及所述响应日志中的至少一种;以及,
通过所述解析中间件记录所述解析错误日志以及所述任务成功日志中的至少一种。
可选的,所述对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,包括:
确定所述日志中记录的请求访问的URL对应的主URL;
提取所述日志中与所述至少一个指标相关的关键信息,并基于所述关键信息更新所述主URL的统计结果,所述统计结果包括用于确定所述至少一个指标的多个参数;
基于所述主URL的统计结果确定所述至少一个指标的值。
可选的,所述方法还包括:
在所述网络爬虫向网络服务器发送访问请求消息时,将所述访问请求消息请求访问的URL以及请求访问的URL的上层URL保存在缓存数据库中;
则所述确定所述日志中记录的请求访问的URL对应的主URL,包括:
基于所述日志中记录的请求访问的URL,从所述缓存数据库中依次向上查找所述日志中记录的请求访问的URL的上层URL,直至最后一次得到的上层URL的上层URL为空,则将所述最后一次得到的上层URL确定为所述主URL。
可选的,从提取所述日志中与所述至少一个指标相关的关键信息,并基于所述关键信息更新所述主URL的统计结果,包括:
若所述日志中记录的请求访问的URL为主URL时,基于提取的所述关键信息更新所述统计结果包括的主URL对应的参数的值;或者,
若所述日志中记录的请求访问的URL为子URL时,基于提取的所述关键信息更新所述统计结果包括的子URL对应的参数的值。
第二方面,提供一种网络爬虫的任务有效性检测装置,包括:
日志收集模块,用于记录网络爬虫在执行爬取网页数据任务的过程中的日志;
日志处理和分析模块,用于对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,其中,一个主URL对应多个子URL,所述至少一个指标的值是基于所述主URL以及所述主URL对应的子URL的日志进行确定的;
任务检测模块,用于确定所述至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值,其中,一个指标对应一个预设阈值;以及,若确定结果为是,则所述任务检测模块还用于确定上述任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。
可选的,所述日志收集模块,具体用于:
在所述网络爬虫执行爬取网页数据任务的过程中,通过所述网络爬虫与网络服务器之间的中间件记录日志,所述日志包括请求日志、异常日志、响应日志、解析错误日志以及任务成功日志中的至少一种;
将记录的日志存入消息队列;其中,所述请求日志是基于所述网络爬虫向所述网络服务器发送的访问请求消息记录的日志,所述异常日志是在所述访问请求消息访问未成功时记录的日志,所述响应日志是基于所述网络服务器基于所述访问请求消息返回的响应消息记录的日志,所述解析日志是对请求访问的URL解析未成功时记录的日志,所述任务成功日志是在所述网络爬虫执行爬取网页数据任务完全成功时记录的日志。
可选的,所述中间件包括请求中间件和解析中间件,则所述日志收集模块,具体用于:
通过所述请求中间件记录所述请求日志、所述异常日志以及所述响应日志中的至少一种;以及,
通过所述解析中间件记录所述解析错误日志以及所述任务成功日志中的至少一种。
可选的,所述日志处理和分析模块,具体用于:
确定所述日志中记录的请求访问的URL对应的主URL;
提取所述日志中与所述至少一个指标相关的关键信息,并基于所述关键信息更新所述主URL的统计结果,所述统计结果包括用于确定所述至少一个指标的多个参数;
基于所述主URL的统计结果确定所述至少一个指标的值。
可选的,所述日志收集模块,还用于在所述网络爬虫向网络服务器发送访问请求消息时,将所述访问请求消息请求访问的URL以及请求访问的URL的上层URL保存在缓存数据库中;
所述日志处理和分析模块,具体用于:基于所述日志中记录的请求访问的URL,从所述缓存数据库中依次向上查找所述日志中记录的请求访问的URL的上层URL,直至最后一次得到的上层URL的上层URL为空,则将所述最后一次得到的上层URL确定为所述主URL。
可选的,所述日志处理和分析模块,具体用于:
若所述日志中记录的请求访问的URL为主URL时,基于提取的所述关键信息更新所述统计结果包括的主URL对应的参数的值;或者,
若所述日志中记录的请求访问的URL为子URL时,基于提取的所述关键信息更新所述统计结果包括的子URL对应的参数的值。
第三方面,提供一种网络爬虫的任务有效性检测设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的方法。
第四方面,提供一种计算机存储介质,
所述计算机存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如第一方面所述的方法。
附图说明
图1为本发明实施例提供的网络爬虫的任务有效性检测方法的流程示意图;
图2为本发明实施例提供的记录日志的流程示意图;
图3为本发明实施例提供的对日志进行处理和分析的流程示意图;
图4为本发明实施例提供的检测任务有效性的流程示意图;
图5为本发明实施例提供的网络爬虫的任务有效性检测装置的一种结构示意图;
图6为本发明实施例提供的网络爬虫的任务有效性检测设备的一种结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
下面介绍本发明实施例的技术背景。
目前的有效性检测方法主要为对每个采集任务的采集数据量进行监控,通过对每个采集任务每天或者每小时,甚至每分钟的采集量进行监控,并为监控任务设置阈值,再根据阈值来对不正常的采集任务进行告警。但是,现有的检测方法存在着以下的问题:
第一,每个网站每天发布信息的时间不固定,每天的数据量也会随着各种因素的影响有差别,这样每天不同时间段的采集量浮动会比较大,监控阈值的设定难度大,并且一旦监控阈值设置得不恰当,监控的准确度也就随之降低了;
第二,网络爬虫的服务器的网络及网站服务器的网络可能会有波动,就可能导致某条信息采集失败或采集延迟,但是整体采集数据量并无较大差异,对于这种情况通过现有的检测方法则无法检测到异常;
因此,目前对于网络爬虫的执行任务的有效性检测方法并不能有效的检测到出现问题的采集任务,从而造成信息的丢失。
鉴于此,本发明实施例提供一种网络爬虫的任务有效性检测方法,在该方法中,通过网络爬虫在执行任务过程中的日志,通过对日志进行分析,确定与网络爬虫的任务失效有关的至少一个指标,进而通过至少一个指标来判断网络爬虫的任务是否失效。该方法能够基于日志对网络爬虫的任务失效性进行检测,通过日志可以对网络爬虫的任务执行过程实时进行监控,从而可以有效的反映出网络爬虫执行任务过程中是否出现异常,从而可以及时检测出失效的任务。
下面结合附图介绍本发明实施例提供的技术方案。
请参见图1,本发明实施例提供一种网络爬虫的任务有效性检测方法,该方法的流程描述如下。
步骤101:记录网络爬虫在执行爬取网页数据任务的过程中的日志。
本发明实施例中,为了在后续分析网络爬虫的有效性时能够有依据,会在网络爬虫执行爬取网页数据任务的过程中记录相关的日志。
具体的,有的网站针对网络爬虫采取了一定反爬虫措施,虽然各个网站的反爬虫措施千差万别,但总的来说,目前反爬虫的技术大致可以包括以下几类:
(1)网站后台对访问次数进行统计,封锁访问次数超过阈值的网络协议(InternetProtocol,IP)地址、会话(session)、及用户代理(user-agent)。其中,session是在服务端保存的数据结构,用于存储用户会话所需的属性及配置信息,可以保存在数据库或文件中。
(2)使用动态网页,利用异步JavaScript和XML(Asynchronous Javascript andXML,Ajax;XML:Extensible Markup Language,可扩展标记语言)请求返回数据。
(3)对每次访问请求消息动态生成cookie,cookie只能使用一次,其中,cookie是在客户端保存用户信息的一种机制,用于记录用户信息。
(4)正确识别验证码后方可发送访问请求消息,验证码例如可以包括字符验证码、短信验证码、点击验证码或者拖动验证码等。
(5)需要输入账号密码进行登录后才能发送访问请求消息。
针对上述的反爬虫措施,网络爬虫在执行采集任务的结果通常包括请求错误及解析错误这两类,因此在记录日志时可以考虑根据请求错误及解析错误这两类进行着手,即对网络爬虫发起的访问请求消息的过程以及解析过程进行监控。
具体的,为了收集日志,在每个网络爬虫的程序或采集任务中单独增加日志记录的功能的话,会给网络爬虫带来大量的工作,降低爬取的效率,因此,基于此种考虑,本发明实施例提供统一的日志收集入口,即中间件(middleware)的方式进行日志记录。其中,中间件位于网络爬虫与网络服务器之间,网络爬虫与服务器之间的交互均需要经过中间件,以便中间件记录日志。
本发明实施例的日志包括请求相关的日志和解析相关的日志,其中,请求相关的日志主要记录网络爬虫与服务器的交互过程的日志,例如后续会提到的请求(request)日志、异常(exception)日志和响应(response)日志,解析相关的日志主要记录服务器对访问请求消息进行响应后,对网页进行解析的过程的日志,例如解析错误(parse error)日志和任务成功(success)日志。基于请求相关的日志以及解析相关的日志的区分,中间件进一步可以包括请求中间件(download_middleware)和解析中间件(spider_middleware),分别用于收集请求相关的日志和解析相关的日志。
为了更清楚的对每个日志进行介绍,请参见图2,下面结合网络爬虫执行采集任务的过程对本发明实施例所要记录的日志进行描述。
步骤201:网络爬虫发起访问请求。
在网络爬虫执行对网页的数据的采集任务时,首先需要发起访问请求,即网络爬虫需向网页服务器发送访问请求消息,以打开网页。
步骤202:记录request日志。
request日志是基于网络爬虫向网络服务器发送的访问请求消息记录的日志。在网络爬虫向网络服务器发送访问请求消息后,访问请求消息就会经过中间件,进而中间件就基于该访问请求消息记录request日志。
其中,request日志主要记录网络爬虫名称(spider_name)、请求的链接(request_url)、请求链接的上层链接(referer_url)(若请求链接为主URL,则referer_url为null)以及请求重试次数(retry_times)这四类信息,网络爬虫一般配置了重试机制,即在请求访问失败时,还会继续发起访问请求,直至请求重试次数达到设置的阈值。其中,一个主URL(Uniform Resource Locator,统一资源定位符)或称入口URL,对应着多个子URL,例如新闻网站上,主网页上包括多个新闻板块,一个新闻板块又包括了多条新闻,该主网页可以作为主URL,或者每一个新闻板块也可以作为主URL,具体根据网络爬虫的设置而定。
步骤203:确定访问是否成功。
在实际应用过程中,因为网络爬虫自身或者网络等诸多因素的影响,访问可能失败,对于具体失败的原因以及如何确定访问是否成功皆属于现有技术的范畴,本发明实施例对此不过多赘述。
步骤204:若步骤203的结果为否,则记录exception日志。
在确定网络爬虫访问未成功,即网络爬虫发送的访问请求消息未能成功访问时,记录exception日志。例如,中间件确定超时未能接收到网络服务器的响应消息时,则可以确定访问未成功,进而记录exception日志。
其中,exception日志主要记录网络爬虫名称(spider_name)、请求的链接(request_url)、请求链接的上层链接(referer_url)、异常名称(exception_name)以及请求重试次数(retry_times)这五类信息。
步骤205:若步骤203的结果为是,则记录response日志。
在接收到网络服务器基于上述访问请求消息返回的响应消息时,则可以确定访问成功,并基于响应消息记录response日志。
其中,response日志主要记录网络爬虫名称(spider_name)、请求的链接(request_url)、响应链接(response_url)、请求链接的上层链接(referer_url)、响应状态码(response_status)以及请求重试次数(retry_times)这六类信息。
响应状态码是用于反映网页服务器超文本传输协议(HyperText TransferProtocol,HTTP)响应状态的3位数字代码,常见的响应状态码包括如下几类:
(1)2XX:成功,用以表示请求已被成功接收、理解、接受;
(2)3XX:重定向,用以表示访问信息不完整需要进一步补充;
(3)4XX:客户端错误,用以表示请求有语法错误或请求无法实现;
(4)5XX:服务器端错误,用以表示服务器未能实现合法的请求。
步骤206:确定解析是否成功。
在接收到网络服务器的响应消息之后,网络爬虫则会基于响应消息中所携带的网页内容进行解析,以提取所需要的信息。
步骤207:若步骤206的结果为否,则记录parse error日志。
若是网络爬虫未能成功解析响应消息中所携带的网页内容,则记录parse error日志。
其中,parse error日志主要记录网络爬虫名称(spider_name)、请求的链接(request_url)、请求链接的上层链接(referer_url)、响应链接(response_url)、响应状态码(response_status)以及解析错误信息(parse_error)这六类信息。
步骤208:若步骤206的结果为是,则确定是否向提取结果发起访问请求。
若是网络爬虫成功解析了响应消息中所携带的网页内容,则会确定是否还要继续向提取结果发起访问请求。例如,当前网络爬虫请求访问的网页并非详情页,只是目录页,那么为了获取详情页上的内容,那么则还需要继续向从目录页中提取到的详情页的URL发起访问请求,若是当前解析的已经是详情页了,那么则无需继续发起访问请求了。
步骤209:若步骤208的结果为否,记录success日志。
若是确定无需向提取结果发起访问请求,表示该采集任务成功,记录success日志,与之对应的,若是,确定需要向提取结果发起访问请求,则跳转至步骤201。
其中,success日志主要记录网络爬虫名称(spider_name)、请求的链接(request_url)、请求链接的上层链接(referer_url)以及响应链接(response_url)这四类信息。
步骤210:将记录的日志存入消息队列。
本发明实施例中,在记录上述的任一日志之后,就会将记录的日志存入消息队列。
具体的,考虑到若是网络爬虫所要执行的采集任务较多,那么需要记录的日志的数量则也会很多,为了能及时有效的对日志进行分析,日志的存储不能按照常规的日志文件或数据库来进行存储,因此,本发明实施例通过高吞吐量的消息队列存储日志,消息队列具有高性能、易扩展以及高可用性等优点,使用消息队列存储日志后,由于日志数量会比较大,可以分布式的处理日志,减少日志的堆积。对于,分析后的日志,可以通过数据库进行最终的存储,数据库能够极方便的进行查询筛选工作,方便了维护人员进行查看。
本发明实施例中,网络爬虫程序在运行过程中也会生成日志,但该日志主要记录与该程序运行相关的信息,不能作为网络爬虫的任务有效性检测的依据,且为了与网络爬虫程序自有的日志信息区分,需要将中间件记录的日志的日志名称(log name)与网络爬虫程序自有的日志信息的名称区分开来。中间件记录的日志的日志级别(levelname)可以为INFO,日志记录格式包括记录时间、log name、levelname以及日志信息,日志信息即为具体的日志内容。在初始化消息队列,需要设置中间件日志提交的方式,例如可以设置同步或者异步的方式。
下面请继续参见图1。
步骤102:对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值。
本发明实施例中,在记录每一个需要爬取的URL的日志之后,则会对日志进行处理,具体处理过程如图3所示。
步骤301:从消息队列读取日志。
本发明实施例中,可以分批次从消息队列中读取日志,且当读取的日志数量达到预设门限值N时,则暂停读取,先进行下一步的处理;或者,在预设时长M秒内,一直未达到N,也继续进行下一步的处理。
步骤302:确定日志中记录的请求访问的URL对应的主URL。
本发明实施例中,为了能够基于日志中记录的request_url及referer_url找到对应的主URL,需要首先在缓存数据库中存储URL之间的层级关系,该过程中具体可以在网络爬虫执行采集任务的过程中来实现。
具体的,在网络爬虫初始发起访问请求时,都会请求主URL,主URL的上层URL,即referer_url为空白(null),则在缓存数据库中记录主URL的referer_url为null。在主URL的响应消息或者异常消息中提取下层的URL,以下层的URL为URL1为例,对URL1发起访问请求,同时确定缓存数据库中是否已经存储URL1,若是没有,则将URL1以及该URL与上层URL的层级关系存储在缓存数据库中,也就是将URL1的上层URL为上述主URL存储在缓存数据库中。对于URL1,确定是否还要对URL1的下层URL继续进行采集,若是要,再重复上述过程,进而将所有的request_url、referer_url以及相互之间的层级关系都记录到缓存数据库中,直至达到预设的采集深度,停止采集。
本发明实施例中,在上述缓存数据库记录完成的基础上,就可以基于该批次从消息队列读取的日志中记录的request_url及referer_url找到对应的主URL。
具体的,由于referer_url的请求一定在request_url之前,根据缓存数据库中的记录,可以逐级向上查找,就可以找到主URL。例如,对于一个日志,可以是上述各种日志的任一种日志,从该日志中提取request_url和referer_url,确定referer_url是否为null,若request_url为null,则该request_url即为主URL,若是request_url不是null,则从缓存数据库中获取referer_url的referer_url,并确定referer_url的referer_url是否为null,若还不是null,则继续向上查找,直至最后一次得到的referer_url的referer_url为null,则将所述最后一次得到的referer_url确定为主URL。
步骤303:提取日志中与至少一个指标相关的关键信息,并基于关键信息更新主URL的统计结果。
本发明实施例中,日志中记录了网络爬虫执行采集任务过程中的具体信息,因而可以从日志中提取出与至少一个指标相关的关键信息,并基于关键信息更新保存的主URL的统计结果,统计结果中包括了多个用于确定至少一个指标的参数。
对于每个日志,均需要提取日志中记录的请求访问的URL,并更新channel(即主URL)或者child(即子URL,一般为详情页的URL)的次数(num)和retry_times。例如,对于request日志,获取request日志中记录的请求访问的URL后,则需要将该URL的访问次数增加一次,当该URL为主URL时,需要更新request.channel.num,或者,当该URL为子URL时,需要更新request.child.num。
除了上述每个日志均需提取并更新的内容外,response日志还需提取response_status,并更新response_status的次数,其中包括正常返回状态码,如200或者300,以及异常状态码,如400或者500;exception日志还需提取exception_name,并更新exception_name的次数,主要包括三类exception,即超时错误(TimeoutError)、域名系统查找错误(DNSLookupError;DNS:Domain Name System)以及未响应(ResponseNeverReceived);parse error日志还需提取error,并更新error的次数,主要包括四类error,即索引错误(IndexError)、属性错误(AttributeError)、类型错误(TypeError)、参数错误(ValueError);success日志需要更新child的次数。上述所说的关键信息均是基于channel或者child分别更新的,即当前分析的日志中的request_url为主URL,则更新统计结果包括的主URL对应的参数,或者,当前分析的日志中的request_url为子URL,则更新统计结果包括的子URL对应的参数。
具体的,统计结果的存储结构如下:
Figure BDA0001856947050000141
Figure BDA0001856947050000151
上述示意的统计结果的具体结构中,各项参数的值均为初始值0,例如request日志对应的“request”部分,child和channel所对应的num以及retry_times这些参数的值均为0,那么在处理从消息队列中读取的日志时,则会基于日志内容来更新相应参数的值。下面以一条response日志为例,对提取和更新过程进行介绍,response日志具体内容如下:
2018-06-26 15:01:39[monitor]INFO:[RESPONSE]spider_name:mp_baidu,request_url:http://author.baidu.com/home/1601338587299292,response_status:200,response_url:http://author.baidu.com/home/1601338587299292,referrer_url:null,retry_times:0
从上述内容可以看出,该response日志的记录时间为2018年06月26日的15:01:39,level name为INFO,log name为RESPONSE。在对日志进行处理时,可以通过正则表达式来进行处理,正则表达式的具体为:
INFO:\[RESPONSE\]spider_name:(.*?),request_url:(.*?),response_status:(.*?),response_url:(.*?),referrer_url:(.*?),retry_times:(.*)
通过上述正则表达式分别提取出如下内容:
spider_name为mp_baidu;
request_url为http://author.baidu.com/home/1601338587299292;
response_status为200;
response_url为http://author.baidu.com/home/1601338587299292;
referer_url为null;
retry_times为0。
那么对于上述统计结果的初始结构,则会将$.spider_name设置为mp_baidu,由于referer_url为null,则request_url为主URL,那么$.response.channel.num需要加1,$.response.channel.status.\"200\"需要加1,$.response.channel.retr y_times则不变。其中,$.spider_name表示spider_name的值,其余类似。最终统计结果变为:
Figure BDA0001856947050000161
Figure BDA0001856947050000171
本发明实施例中,根据从日志中获取的信息,来更新统计结果中相应部分的参数的值,并将统计结果保存在数据库中。其中,基于上述统计结果的具体结构,可以看到统计结构中包括channel_url、spider_name、request、response、exception、parse以及success字段,其中channel_url与spider_name的类型可以为varchar类型,其他字段的类型可以为json类型。在具体实施过程中,统计结果可以是每间隔一段时间清零一次,例如一天,或者一月,或者在用户发现网络爬虫失效并进行修复后,将之前的统计结果清零。
步骤304:基于主URL的统计结果确定至少一个指标的值。
本发明实施例中,在获取统计结果之后,需要基于当前的统计结果确定至少一个指标的值,其中,至少一个指标用于衡量网络爬虫执行任务的有效性程度。为了减少计算量,可以为确定至少一个指标的值设置间隔时间,例如一个小时或者一天确定一次,以避免频繁的进行确定,反而增加设备负担。
在网络爬虫执行采集任务的过程中,由于重试机制的存在,在请求失败后,一般会进行重试,从而retry_times的值会增加,同样request或者response中相关参数的值也会增加,因此为了减少重试机制对最终统计的影响,需要在确定上述至少一个指标时减去retry_times的值。
例如,请求访问一个网页时,第一次请求失败,response_status为400,由于重试机制,会继续进行重试,假如在重试第二次的时候,请求成功且response_status为200,则request对应的参数就会为{"num":3,"retry_times":2},response对应的参数就会为{"num":3,"retry_times":2,"status":{"200":1,"400":2,…}},虽然存在重试,但是这种情况实际上应算作请求成功,请求成功率应为100%,若是不减去retry_times的话,则成功率显然不是100%,因此在实际计算成功率时,应排除retry_times的影响,因此最终的计算公式即为(response_200or300_count)/(request_count-request_retry_times),也就是响应状态码为200或者300的总次数与请求总次数减去重试次数的比值,因此,根据该公式计算得到的请求成功率要么为0,要么为100%。
本发明实施例中,因为统计结果中有channel与child之分,且在计算最后的指标时也是分开进行计算的,但是channel与child的计算方法相同,因而下面就以其中child的计算为例,对于channel的指标的计算可以参考下面的描述,就不过多赘述了。具体的,各个指标的计算方式如下表所示。
Figure BDA0001856947050000181
表1
其中,request总数是指对子URL发起访问请求的总次数,request总数的计算公式的含义为将统计结果中request部分的child项中的num的值减去request部分的child项中retry_times的值,其余计算公式可以依次类推,不过多赘述。其中,response成功数是指网络服务器反馈了响应消息,且响应消息指示访问成功的次数,response失败数是指网络服务器反馈了响应消息,但响应消息指示访问出现错误的次数。
本发明实施例中,表1中的一个或者多个指标既可以用于衡量网络爬虫执行任务的有效性程度,例如可以针对Response失败数、exception总数或者Parse error总数设置各自的阈值,当Response失败数、exception总数或者Parse error总数大于或者等于自身的阈值时,就认为相对应的采集任务失效。
由于网站或者服务器的原因,对于Response失败数、exception总数或者Parseerror总数设置准确的阈值还是有一定难度的,因此,还可以基于表1中的指标进一步进行计算,以获得表2中所示的各个指标,并将表2中的一个或者多个指标作为上述至少一个指标,例如可以将响应失败率、异常率以及解析错误率作为上述至少一个指标,其余的指标则可以用于用户对网络爬虫的性能进行分析。
Figure BDA0001856947050000191
表2
其中,响应成功率是指对子URL发起访问请求后,响应消息指示访问成功的概率,响应失败率是指对子URL发起访问请求后,响应消息指示访问错误的概率,其余依次类推。响应成功率的计算公式的含义为将响应消息指示访问成功的次数与总的请求次数的比值。异常率是指对子URL发起访问请求后,出现异常的概率,解析错误率是指出现解析错误的概率。在实际应用过程中,除了可以获取异常总概率和解析错误率,还可以针对每一个异常或者解析错误计算对应的概率,例如针对TimeoutError这一项异常计算概率,或者针对IndexError这一项解析错误计算概率。
本发明实施例中,也可以将表1以及表2的内容存储在数据库中,以便后续用户进行查看。在具体存储时,可以按照主URL以及时间段进行划分,例如可以每小时存储一次,或者每天存储一次,并保存所对应的时间段,那么后续在查找时就可以按照时间段进行筛选,更加方便。
下面请继续参见图1。
步骤103:确定至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值。
本发明实施例中,可以从数据库中获取对日志的分析结果,即表1或者表2的内容,并确定至少一个指标中任一指标的值是否大于或者等于各个指标对应的预设阈值。
步骤104:若步骤103的确定结果为是,则确定任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。
本发明实施例中,只要至少一个指标中任一指标超标,则会认为超标的主URL所对应的任务失效,并将该主URL添加到失效列表中,其中,失效列表中的主URL对应的任务一般认为是疑似失效,后续还需通过维护人员进行校验,待确认为失效后维护人员才会进行修复。
示例性的,请参见图4,为确定任务是否失效的流程示意图。其中,以表2中的响应失败率、异常率以及解析错误率作为上述至少一个指标为例,分别为响应失败率、异常率以及解析错误率设置各自的预设阈值,即响应失败率阈值r1、异常率阈值r2以及解析错误率阈值r3,进而确定响应失败率、异常率以及解析错误率中任一指标是否大于各自对应的预设阈值,以确定相对应的采集任务的有效性。
步骤401:从数据库获取主URL的日志分析结果。
步骤402:确定响应失败率是否大于或者等于响应失败率阈值r1,以及确定异常率是否大于或者等于异常率阈值r2,以及确定解析错误率是否大于或者等于解析错误率阈值r3
步骤403:若步骤402的任一确定结果为是时,将主URL添加到失效列表。
在具体实施过程中,在采集任务较多时,如果一些采集任务长时间未维护,则检测出失效的采集任务可能较多,因此可以为采集任务设置优先级,进而可以按照采集任务的优先级进行显示或者提示,以便维护人员优先处理优先级高的采集任务。
本发明实施例中,日志还可以有效的反映出本地服务器与目标网站的连接性等指标,根据retry_times与response成功数的比例,可以分析目标网站是否有连接性障碍,从而确定是否需要使用代理ip。
综上所述,本发明实施例中,通过网络爬虫在执行任务过程中的日志,通过对日志进行分析,确定与网络爬虫的任务失效有关的至少一个指标,进而通过至少一个指标来判断网络爬虫的任务是否失效。该方法能够基于日志对网络爬虫的任务失效性进行检测,通过日志可以对网络爬虫的任务执行过程实时进行监控,从而可以有效的反映出网络爬虫执行任务过程中是否出现异常,从而可以及时检测出失效的任务。此外,本发明实施例通过中间件收集网络爬虫运行过程中的行为日志,并不会对网络爬虫的性能产生任何影响。
相较现有技术,由于现有通过采集数据量进行判定,由于目标网站发布数据的频率及数量有不确定性,每个时间段产生的新数据是一直变化的,无法给出一个准确的参考值,所以根据数据量检测爬虫有效性准确性较低,且根据采集数据量判断网络爬虫采集任务的有效性不能实时的给出有效性检测结果,需要统计某个时间段的数据量进行统计,而日志信息可以有效的反馈网络爬虫运行过程中是否出现异常,从而可以及时且有效的检测出失效爬虫。
请参见图5,基于同一发明构思,本发明实施例提供一种网络爬虫的任务有效性检测装置,包括:
日志收集模块501,用于记录网络爬虫在执行爬取网页数据任务的过程中的日志;
日志处理和分析模块502,用于对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,其中,一个主URL对应多个子URL,至少一个指标的值是基于主URL以及主URL对应的子URL的日志进行确定的;
任务检测模块503,用于确定至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值,其中,一个指标对应一个预设阈值;以及,若确定结果为是,则任务检测模块503还用于确定上述任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。
可选的,日志收集模块501,具体用于:
在网络爬虫执行爬取网页数据任务的过程中,通过网络爬虫与网络服务器之间的中间件记录日志,日志包括请求日志、异常日志、响应日志、解析错误日志以及任务成功日志中的至少一种;
将记录的日志存入消息队列;其中,请求日志是基于网络爬虫向网络服务器发送的访问请求消息记录的日志,异常日志是在访问请求消息访问未成功时记录的日志,响应日志是基于网络服务器基于访问请求消息返回的响应消息记录的日志,解析日志是对请求访问的URL解析未成功时记录的日志,任务成功日志是在网络爬虫执行爬取网页数据任务完全成功时记录的日志。
可选的,中间件包括请求中间件和解析中间件,则日志收集模块501,具体用于:
通过请求中间件记录请求日志、异常日志以及响应日志中的至少一种;以及,
通过解析中间件记录解析错误日志以及任务成功日志中的至少一种。
可选的,日志处理和分析模块502,具体用于:
确定日志中记录的请求访问的URL对应的主URL;
提取日志中与至少一个指标相关的关键信息,并基于关键信息更新主URL的统计结果,统计结果包括用于确定至少一个指标的多个参数;
基于主URL的统计结果确定至少一个指标的值。
可选的,日志收集模块501,还用于在网络爬虫向网络服务器发送访问请求消息时,将访问请求消息请求访问的URL以及请求访问的URL的上层URL保存在缓存数据库中;
日志处理和分析模块502,具体用于:基于日志中记录的请求访问的URL,从缓存数据库中依次向上查找日志中记录的请求访问的URL的上层URL,直至最后一次得到的上层URL的上层URL为空,则将最后一次得到的上层URL确定为主URL。
可选的,日志处理和分析模块502,具体用于:
若日志中记录的请求访问的URL为主URL时,基于提取的关键信息更新统计结果包括的主URL对应的参数的值;或者,
若日志中记录的请求访问的URL为子URL时,基于提取的关键信息更新统计结果包括的子URL对应的参数的值。
该设备可以用于执行图1-图4所示的实施例所提供的方法,因此,对于该设备的各功能模块所能够实现的功能等可参考图1-图4所示的实施例的描述,不多赘述。在实际应用过程中,上述的功能模块可以是一个模块,或者可以是由多个子模块构成的,例如,日志处理和分析模块502可以包括日志处理子模块和日志分析子模块。
请参见图6,基于同一发明构思,本发明实施例提供一种网络爬虫的任务有效性检测设备,包括至少一个处理器601,至少一个处理器601用于执行存储器中存储的计算机程序时实现图1-图4所示的实施例提供的网络爬虫的任务有效性检测方法的步骤。
可选的,至少一个处理器601具体可以包括中央处理器(CPU)、特定应用集成电路(application specific integrated circuit,ASIC),可以是一个或多个用于控制程序执行的集成电路,可以是使用现场可编程门阵列(field programmable gate array,FPGA)开发的硬件电路,可以是基带处理器。
可选的,至少一个处理器601可以包括至少一个处理核心。
可选的,该设备还包括存储器602,存储器602可以包括只读存储器(read onlymemory,ROM)、随机存取存储器(random access memory,RAM)和磁盘存储器。存储器602用于存储至少一个处理器601运行时所需的数据。存储器602的数量为一个或多个。其中,存储器602在图6中一并示出,但需要知道的是存储器602不是必选的功能模块,因此在图6中以虚线示出。
基于同一发明构思,本发明实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如图1-图4所示的实施例所述的方法。
在具体的实施过程中,计算机存储介质包括:通用串行总线闪存盘(UniversalSerial Bus flash drive,USB)、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的存储介质。
在本发明实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性或其它的形式。
在本发明实施例中的各功能单元可以集成在一个处理单元中,或者各个单元也可以均是独立的物理模块。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备,例如可以是个人计算机,服务器,或者网络设备等,或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:通用串行总线闪存盘(universal serial bus flash drive)、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以对本申请的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本发明实施例的方法,不应理解为对本发明实施例的限制。本技术领域的技术人员可轻易想到的变化或替换,都应涵盖在本发明实施例的保护范围之内。

Claims (14)

1.一种网络爬虫的任务有效性检测方法,其特征在于,包括:
记录网络爬虫在执行爬取网页数据任务的过程中的日志;
对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,其中,一个主URL对应多个子URL,所述至少一个指标的值是基于所述主URL以及所述主URL对应的子URL的日志进行确定的;
确定所述至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值,其中,一个指标对应一个预设阈值;
若确定结果为是,则确定上述任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。
2.如权利要求1所述的方法,其特征在于,记录网络爬虫在执行爬取网页数据任务的过程中的日志,包括:
在所述网络爬虫执行爬取网页数据任务的过程中,通过所述网络爬虫与网络服务器之间的中间件记录日志,所述日志包括请求日志、异常日志、响应日志、解析错误日志以及任务成功日志中的至少一种;
将记录的日志存入消息队列;其中,所述请求日志是基于所述网络爬虫向所述网络服务器发送的访问请求消息记录的日志,所述异常日志是在所述访问请求消息访问未成功时记录的日志,所述响应日志是基于所述网络服务器基于所述访问请求消息返回的响应消息记录的日志,所述解析日志是对请求访问的URL解析未成功时记录的日志,所述任务成功日志是在所述网络爬虫执行爬取网页数据任务完全成功时记录的日志。
3.如权利要求2所述的方法,其特征在于,所述中间件包括请求中间件和解析中间件,则在所述网络爬虫执行爬取网页数据任务的过程中,通过所述网络爬虫与网络服务器之间的中间件记录日志,包括:
通过所述请求中间件记录所述请求日志、所述异常日志以及所述响应日志中的至少一种;以及,
通过所述解析中间件记录所述解析错误日志以及所述任务成功日志中的至少一种。
4.如权利要求1所述的方法,其特征在于,所述对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,包括:
确定所述日志中记录的请求访问的URL对应的主URL;
提取所述日志中与所述至少一个指标相关的关键信息,并基于所述关键信息更新所述主URL的统计结果,所述统计结果包括用于确定所述至少一个指标的多个参数;
基于所述主URL的统计结果确定所述至少一个指标的值。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
在所述网络爬虫向网络服务器发送访问请求消息时,将所述访问请求消息请求访问的URL以及请求访问的URL的上层URL保存在缓存数据库中;
则所述确定所述日志中记录的请求访问的URL对应的主URL,包括:
基于所述日志中记录的请求访问的URL,从所述缓存数据库中依次向上查找所述日志中记录的请求访问的URL的上层URL,直至最后一次得到的上层URL的上层URL为空,则将所述最后一次得到的上层URL确定为所述主URL。
6.如权利要求4所述的方法,其特征在于,从提取所述日志中与所述至少一个指标相关的关键信息,并基于所述关键信息更新所述主URL的统计结果,包括:
若所述日志中记录的请求访问的URL为主URL时,基于提取的所述关键信息更新所述统计结果包括的主URL对应的参数的值;或者,
若所述日志中记录的请求访问的URL为子URL时,基于提取的所述关键信息更新所述统计结果包括的子URL对应的参数的值。
7.一种网络爬虫的任务有效性检测装置,其特征在于,包括:
日志收集模块,用于记录网络爬虫在执行爬取网页数据任务的过程中的日志;
日志处理和分析模块,用于对日志进行处理和分析,以确定在预设时间段内与主URL相关的至少一个指标的值,其中,一个主URL对应多个子URL,所述至少一个指标的值是基于所述主URL以及所述主URL对应的子URL的日志进行确定的;
任务检测模块,用于确定所述至少一个指标中任一指标的值是否大于或者等于每个指标自身对应的预设阈值,其中,一个指标对应一个预设阈值;以及,若确定结果为是,则所述任务检测模块还用于确定上述任一指标的值大于或者等于对应的预设阈值的主URL所对应的任务失效。
8.如权利要求7所述的装置,其特征在于,所述日志收集模块,具体用于:
在所述网络爬虫执行爬取网页数据任务的过程中,通过所述网络爬虫与网络服务器之间的中间件记录日志,所述日志包括请求日志、异常日志、响应日志、解析错误日志以及任务成功日志中的至少一种;
将记录的日志存入消息队列;其中,所述请求日志是基于所述网络爬虫向所述网络服务器发送的访问请求消息记录的日志,所述异常日志是在所述访问请求消息访问未成功时记录的日志,所述响应日志是基于所述网络服务器基于所述访问请求消息返回的响应消息记录的日志,所述解析日志是对请求访问的URL解析未成功时记录的日志,所述任务成功日志是在所述网络爬虫执行爬取网页数据任务完全成功时记录的日志。
9.如权利要求8所述的装置,其特征在于,所述中间件包括请求中间件和解析中间件,则所述日志收集模块,具体用于:
通过所述请求中间件记录所述请求日志、所述异常日志以及所述响应日志中的至少一种;以及,
通过所述解析中间件记录所述解析错误日志以及所述任务成功日志中的至少一种。
10.如权利要求7所述的装置,其特征在于,所述日志处理和分析模块,具体用于:
确定所述日志中记录的请求访问的URL对应的主URL;
提取所述日志中与所述至少一个指标相关的关键信息,并基于所述关键信息更新所述主URL的统计结果,所述统计结果包括用于确定所述至少一个指标的多个参数;
基于所述主URL的统计结果确定所述至少一个指标的值。
11.如权利要求10所述的装置,其特征在于,所述日志收集模块,还用于在所述网络爬虫向网络服务器发送访问请求消息时,将所述访问请求消息请求访问的URL以及请求访问的URL的上层URL保存在缓存数据库中;
所述日志处理和分析模块,具体用于:基于所述日志中记录的请求访问的URL,从所述缓存数据库中依次向上查找所述日志中记录的请求访问的URL的上层URL,直至最后一次得到的上层URL的上层URL为空,则将所述最后一次得到的上层URL确定为所述主URL。
12.如权利要求10所述的装置,其特征在于,所述日志处理和分析模块,具体用于:
若所述日志中记录的请求访问的URL为主URL时,基于提取的所述关键信息更新所述统计结果包括的主URL对应的参数的值;或者,
若所述日志中记录的请求访问的URL为子URL时,基于提取的所述关键信息更新所述统计结果包括的子URL对应的参数的值。
13.一种网络爬虫的任务有效性检测设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1~6任一权利要求所述的方法。
14.一种计算机存储介质,其特征在于:
所述计算机存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如权利要求1-6中任一项所述的方法。
CN201811318524.XA 2018-11-07 2018-11-07 网络爬虫的任务有效性检测方法、装置和设备及存储介质 Active CN111159514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811318524.XA CN111159514B (zh) 2018-11-07 2018-11-07 网络爬虫的任务有效性检测方法、装置和设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811318524.XA CN111159514B (zh) 2018-11-07 2018-11-07 网络爬虫的任务有效性检测方法、装置和设备及存储介质

Publications (2)

Publication Number Publication Date
CN111159514A true CN111159514A (zh) 2020-05-15
CN111159514B CN111159514B (zh) 2022-12-13

Family

ID=70554498

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811318524.XA Active CN111159514B (zh) 2018-11-07 2018-11-07 网络爬虫的任务有效性检测方法、装置和设备及存储介质

Country Status (1)

Country Link
CN (1) CN111159514B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814145A (zh) * 2020-08-19 2020-10-23 深圳市富之富信息科技有限公司 基于日志采集的请求校验方法、装置及计算机设备
CN112100083A (zh) * 2020-11-13 2020-12-18 北京智慧星光信息技术有限公司 爬虫模板变更的监测方法、系统、电子设备及存储介质
CN112783726A (zh) * 2021-01-27 2021-05-11 中国信息安全测评中心 一种报警信息的生成方法、装置、设备及可读存储介质
CN113051499A (zh) * 2021-03-23 2021-06-29 北京智慧星光信息技术有限公司 数据采集量的监测方法、系统、电子设备及存储介质
CN113220549A (zh) * 2021-04-01 2021-08-06 深圳市猎芯科技有限公司 爬虫数据监控方法、系统、计算机设备及存储介质
CN113536301A (zh) * 2021-07-19 2021-10-22 北京计算机技术及应用研究所 一种基于行为特征分析的反爬方法
US20230216935A1 (en) * 2021-12-30 2023-07-06 The Nielsen Company (Us), Llc Methods and apparatus to identify main page views
US12120004B2 (en) 2021-06-30 2024-10-15 The Nielsen Company (Us), Llc Methods and apparatus to determine main pages from network traffic
US12126697B2 (en) * 2022-07-28 2024-10-22 The Nielsen Company (Us), Llc Methods and apparatus to identify main page views

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104965933A (zh) * 2015-07-30 2015-10-07 北京奇虎科技有限公司 Url检测任务的分配方法、分配器及url检测系统
CN105893583A (zh) * 2016-04-01 2016-08-24 北京鼎泰智源科技有限公司 基于人工智能的数据采集方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104965933A (zh) * 2015-07-30 2015-10-07 北京奇虎科技有限公司 Url检测任务的分配方法、分配器及url检测系统
CN105893583A (zh) * 2016-04-01 2016-08-24 北京鼎泰智源科技有限公司 基于人工智能的数据采集方法及系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814145A (zh) * 2020-08-19 2020-10-23 深圳市富之富信息科技有限公司 基于日志采集的请求校验方法、装置及计算机设备
CN111814145B (zh) * 2020-08-19 2024-04-26 深圳市富之富信息科技有限公司 基于日志采集的请求校验方法、装置及计算机设备
CN112100083A (zh) * 2020-11-13 2020-12-18 北京智慧星光信息技术有限公司 爬虫模板变更的监测方法、系统、电子设备及存储介质
CN112783726A (zh) * 2021-01-27 2021-05-11 中国信息安全测评中心 一种报警信息的生成方法、装置、设备及可读存储介质
CN113051499A (zh) * 2021-03-23 2021-06-29 北京智慧星光信息技术有限公司 数据采集量的监测方法、系统、电子设备及存储介质
CN113051499B (zh) * 2021-03-23 2023-11-21 北京智慧星光信息技术有限公司 数据采集量的监测方法、系统、电子设备及存储介质
CN113220549A (zh) * 2021-04-01 2021-08-06 深圳市猎芯科技有限公司 爬虫数据监控方法、系统、计算机设备及存储介质
US12120004B2 (en) 2021-06-30 2024-10-15 The Nielsen Company (Us), Llc Methods and apparatus to determine main pages from network traffic
CN113536301A (zh) * 2021-07-19 2021-10-22 北京计算机技术及应用研究所 一种基于行为特征分析的反爬方法
US20230216935A1 (en) * 2021-12-30 2023-07-06 The Nielsen Company (Us), Llc Methods and apparatus to identify main page views
US12126697B2 (en) * 2022-07-28 2024-10-22 The Nielsen Company (Us), Llc Methods and apparatus to identify main page views

Also Published As

Publication number Publication date
CN111159514B (zh) 2022-12-13

Similar Documents

Publication Publication Date Title
CN111159514B (zh) 网络爬虫的任务有效性检测方法、装置和设备及存储介质
US8326986B2 (en) System and method for analyzing web paths
US20100153431A1 (en) Alert triggered statistics collections
US11012339B2 (en) Web site reachability management for content browsing
CN110020062B (zh) 一种可定制的网络爬虫方法及系统
CN109033195A (zh) 网页信息的获取方法、获取设备及计算机可读介质
CN109194671B (zh) 一种异常访问行为的识别方法及服务器
US20180139222A1 (en) Method and device for detecting website attack
CN107508809B (zh) 识别网址类型的方法及装置
JP6823265B2 (ja) 分析装置、分析システム、分析方法および分析プログラム
CN107547490B (zh) 一种扫描器识别方法、装置及系统
CN107294919A (zh) 一种水平权限漏洞的检测方法及装置
JP2006520940A (ja) インターネット検索エンジンにおける無効クリック検出方法および装置
CN111552854A (zh) 一种网页数据抓取方法、装置、存储介质和设备
WO2015136624A1 (ja) アプリケーション性能監視方法および装置
CN111130845A (zh) 基于视觉信息的网站页面IPv6支持度测试方法及装置
CN112257032B (zh) 一种确定app责任主体的方法及系统
CN102055815A (zh) 获取访客本地域名解析服务器的系统
CA2789936C (en) Identification of sequential browsing operations
TWI757169B (zh) 用於實時分析虛擬伺服器記錄的電腦實施系統以及方法
CN116361529B (zh) 一种爬虫监控的方法、装置、电子设备及存储介质
US10372513B2 (en) Classification of application events using call stacks
US20150067152A1 (en) Monitoring system, system, and monitoring method
GB2567749A (en) Method for associating domain name with website access behavior
WO2015147779A1 (en) Monitoring for authentication information

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