CN103942309A - 一种网络数据获取设备、方法及获取过程的实现方法 - Google Patents
一种网络数据获取设备、方法及获取过程的实现方法 Download PDFInfo
- Publication number
- CN103942309A CN103942309A CN201410158189.7A CN201410158189A CN103942309A CN 103942309 A CN103942309 A CN 103942309A CN 201410158189 A CN201410158189 A CN 201410158189A CN 103942309 A CN103942309 A CN 103942309A
- Authority
- CN
- China
- Prior art keywords
- target resource
- network data
- resolver
- global position
- page
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明的实施方式提供了一种网络数据获取设备与方法,以及实现网络数据获取过程的方法。所述获取设备可以包括爬取器,用于对位于网络侧的目标资源的全局位置进行爬取,以得到入口统一资源定位符;解析器,用于根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据;以及,输出器,用于对解析目标资源得到的目标网络数据进行输出。本发明可以实现网络数据的定向爬取、精确解析、智能输出。
Description
技术领域
本发明的实施方式涉及信息处理技术领域,尤其涉及一种网络数据获取设备、网络数据获取方法以及实现网络数据获取过程的方法。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
基于网络信息的海量特性,为了获取需要的网络数据,通常需要利用专用设备从大量网页中进行网络数据收集。比如,常见的爬虫程序,它能够根据需要从网络侧中获取到一定程度上满足需要的各种网络数据。但是,发明人发现,现有的网络数据获取设备采集到的信息不仅包含用户需要的信息,而且还大量夹杂着对于用户而言无用的网络数据,从而降低了信息获取的准确度和效率。
发明内容
一方面,基于解决上述问题的需要,本发明提供了一种网络数据获取设备,其中,该设备可以包括:
爬取器,用于对位于网络侧的目标资源的全局位置进行爬取,以得到入口统一资源定位符;
解析器,用于根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据;以及,
输出器,用于对解析目标资源得到的目标网络数据进行输出。
根据本发明的一个实施例,所述爬取器、解析器、输出器同时启动,所述爬取器、解析器、输出器具备同时执行多个子任务的能力。
根据本发明的一个实施例,所述设备还可以包括第一阻塞队列和第二阻塞队列,其中,
所述爬取器将对目标资源的全局位置进行爬取得到的入口统一资源定位符放置于所述第一阻塞队列,以便所述解析器从所述第一阻塞队列中读取所述入口统一资源定位符进行解析;
所述解析器将根据所述入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析而得到的目标网络数据放置于所述第二阻塞队列,以便所述输出器从所述第二阻塞队列中读取所述目标网络数据进行输出。
根据本发明的一个实施例,所述爬取器、解析器、输出器各自具有多个子任务,
所述爬取器,还用于在其所有子任务执行结束后,在第一阻塞队列设置和所述解析器子任务数相同数量的第一结束标签,以便解析器的每一个子任务读取到第一阻塞队列中的一个结束标签后,结束相应子任务;
所述解析器,还用于在其所有子任务执行结束后,在第二阻塞队列设置和所述输出器子任务数相同数量的第二结束标签,以便输出器的每一个子任务读取到第二阻塞队列中的一个结束标签后,结束相应子任务。
根据本发明的一个实施例,所述设备还可以包括监控器,用于对网络数据获取异常进行监控,根据监控结果生成报警信息,并向预设用户发送报警信息,所述网络数据获取异常至少包括目标资源所在页面的DOM结构发生变化导致的异常。
根据本发明的一个实施例,所述设备还可以包括连接在解析器与输出器之间的预处理器,用于对解析器解析得到的目标网络数据进行预处理。
根据本发明的一个实施例,所述设备还可以包括缓存器,用于在爬取器爬取目标资源的全局位置后对目标资源所在的页面进行缓存。
另一方面,本发明还提供了一种网络数据获取方法,包括:
对位于网络侧的目标资源的全局位置进行爬取,以得到入口统一资源定位符;
根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据;
对解析目标资源得到的目标网络数据进行输出。
根据本发明的一个实施例,对目标资源的全局位置进行爬取的步骤、对目标资源进行解析的步骤以及对目标数据进行输出的步骤同时启动,且所述步骤能够通过同时执行多个子任务实现。
根据本发明的一个实施例,根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据包括:
由目标资源所在页面的页面模板确定目标资源相对于所述全局位置的相对位置;
对根据所述全局位置和相对位置确定的目标资源按照预设条件进行解析,以得到目标网络数据。
根据本发明的一个实施例,所述预设条件包括用于从目标资源所在的页面开始筛选直至定位到所述目标资源的预设筛选条件,和/或,用于对解析目标资源进行启动或停止控制的预设控制条件;
对目标资源按照预设条件进行解析以得到目标网络数据具体为对目标资源按照所述预设筛选条件和预设控制条件进行解析以得到目标网络数据。
根据本发明的一个实施例,所述目标资源具有至少一个属性;
对目标资源按照预设条件进行解析以得到目标网络数据具体为对目标资源的属性进行解析以得到该属性对应的目标网络数据。
根据本发明的一个实施例,所述方法还包括:利用正则表达式对所述属性对应的网络数据进行萃取,以获得所需要的数据。
根据本发明的一个实施例,所述方法还包括:
在对位于网络侧的目标资源的全局位置进行爬取之前,获取IP代理列表,选择该IP代理列表中的一个可用IP作为代理IP,从而在隐藏当前IP的情况下对位于网络侧的目标资源的全局位置进行爬取。
根据本发明的一个实施例,在对位于网络侧的目标资源的全局位置进行爬取之前,如果需要进行图片验证以获得对目标资源的访问的情况下,所述方法还包括:
对所述图片进行切割,将切割后的各个部分与预设训练集进行匹配以确定各个部分对应的内容,利用所述各个部分的内容实现对位于网络侧的目标资源的访问。
根据本发明的一个实施例,所述方法还包括:
控制对位于网络侧的目标资源的全局位置进行爬取的频率或爬取间隔,和/或爬取速度。
再一方面,本发明还提供了一种实现网络数据获取过程的方法,包括:
配置目标文件、条件文件和任务文件,使所述目标文件指明待获取的位于网络侧的目标资源的全局位置,以及所述目标资源所在页面的页面模板,所述任务文件指明对网络侧目标资源的全局位置进行爬取以得到入口统一资源定位符的操作、根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析以得到目标网络数据的操作、对解析目标资源得到的目标网络数据进行输出的操作对应的任务,所述条件文件指明过程中的各种控制;
读取并运行配置文件,以执行对网络侧目标资源的全局位置进行爬取以得到入口统一资源定位符的操作,根据所述入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析以得到目标网络数据的操作,以及对所述目标网络数据进行输出的操作,从而实现网络数据获取。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1为本发明实施方式的示例性的计算机系统;
图2为本发明实施方式的网络数据获取设备的应用场景;
图3为本发明实施方式的网络数据获取设备;
图4为本发明实施方式的网络数据获取方法。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施 方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1示出了适于实现本发明实施方式的进行信息处理的示例性的计算系统100的框图。如图1所示,计算系统100可以包括:中央处理单元(CPU)101、随机存取存储器(RAM)102、只读存储器(ROM)103、系统总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和显示器114。这些设备中,与系统总线104耦合的有CPU101、RAM102、ROM103、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及显示器114与显示控制器109耦合。应当理解,图1所述的结构框图仅仅是为了示例的目的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
在本文中,需要理解的是,所涉及的术语“全局位置”是相对于“相对位置”而言的,全局位置用于指明目标资源所在载体的基本单位的位置,而相对位置用于指明目标资源在所述基本单位的位置之下的位置,即目标资源相对于全局路径的相对路径,通过全局位置和相对位置能够确定目标资源所在的具体位置。比如,目标资源为某个影评网站的某个网页的左下角的位置的影评数据,那么,这里的影评网站的网页即可成为是全局位置,该全局位置标明了目标资源所在载体(即目标资源所在的页面)的位置,影评数据所在的网页左下角则可以认为是相对位置。需要说明的是,这里的“全局位置”与“相对位置”也是相对的,由于目标资源所在载体的基本单位可以具有不同的层级,比如,前述的目标资源所在的页面可以认为 是目标资源所在载体的基本单位,也可以将目标资源所在的网站作为目标资源所在载体的基本单位,对于前者,页面的地址则为全局位置,对于后者,网站的地址则为全局位置。当然,还可以将全局位置定义为比某个页面位置更小的级别上。尽管目标资源的全局位置和相对位置具有相对性,但全局位置和相对位置合在一起则具有绝对性,即通过全局位置和相对位置能够确定目标资源所在的位置。此外,附图或文本中的某个元素的数量均用于示例而非限制说明,以及任何命名都仅用于区分,比如,后续将要提到的“第一线程、第二线程”、“第一结束标签、第二结束标签”等,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
发明概述
本发明人发现,现有网络数据的获取方法对目标资源所在页面上满足一定条件的所有内容均进行爬取,影响爬取的准确性和效率。本发明利用目标资源的全局位置和根据目标资源所在页面的页面模板确定的相对位置确定要解析的目标资源,使解析过程准确、效率高。同时,还可以采取多子任务并行处理的模式,提高处理效率。
在介绍了本发明的基本思路之后,下面具体介绍本发明的各种非限制性实施方式。
示例性应用场景和设备
参见图2所示,该图示出了网络数据获取设备的应用场景。在该场景中,位于本地侧的电子信息处理设备21(比如,计算机)中包含了网络数据获取设备22(当然,在本申请的另一种应用场景中,网络数据获取设备也可以不位于电子信息处理设备之中,而以独立装置的形式存在),用户20可以通过操作电子信息处理设备21来实现对网络数据获取设备的控制。为了获取网络数据,网络数据获取设备22需要向目标资源所在的设备(比如,位于网络侧的网络服务器23)发送获取请求,该获取请求可以 嵌入到一般的页面访问请求之中。网络数据获取设备22通过网络与目标资源所在设备建立连接后,网络数据获取设备22包含的爬取器221,则可以开始工作,对网络侧的目标资源的全局位置进行爬取操作,比如,目标资源所在的网页的URL地址。通常而言,一个网站可能包括多个页面,如果在多个页面中均有目标资源,那么,爬取器可以爬取到多个页面的URL地址,这个地址可以称为入口统一资源定位符(URL)。
在本应用场景中,网络数据获取设备22除可以包括如上所述的爬取器221外,还可以包括解析器222,用于根据爬取器爬取到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析。在本应用场景中,爬取器221爬取目标资源的全局位置得到的入口统一资源定位符将作为目标资源的全局路径(XPATH)。解析器在对目标资源解析过程中,一方面要获取目标资源的全局位置以确定入口统一资源定位符,另一方面还需要确定目标资源的相对位置。在本应用场景中,可以通过预先存储的目标资源所在页面的页面模板来确定相对位置,页面模板对页面的架构进行了描述,通过与页面模板的比对,可以确定目标资源在入口统一资源定位符所确定的页面中的位置(即相对位置),进而可以将目标资源对应的目标网络数据解析出来。具体解析时,目标资源可能包含不同的数据字段,不同的数据字段可以用于收集不同类别的数据,比如,需要爬取的目标资源为“影评”,在“影评”这个目标资源中可能包括标题字段(指明影评的对象,比如某个电影的名称)、影评人字段(指明影评的评论者)、影评内容字段等,为了对应地得到每个数据字段的“值”,可以建立一个对应的数据库,该数据库的数据结构包含对应的字段,通过解析器的解析过程将目标资源中的各个字段对应的“值”解析到该数据库中的对应字段。
网络数据获取设备22还可以包括输出器223,用于对解析目标资源得到的目标网络数据进行输出。输出的具体方式可以多种多样,比如可以直接打印到屏幕上(称为console方式),或者打印到excel文件中(称为excel方式),或者打印到数据库中(比如oralc、mysql等)。其中,打印到数据库通常适用于目标资源存在多个数据字段的情况,这时需要确保在解析目标资源时字段与数据库中的字段的一一对应。
网络数据获取设备22获取网络数据的过程实际上是执行任务的过程, 任务执行完毕即可得到需要的目标网络数据。在本应用场景中,“任务”可以从两个方向上来理解:一是全局任务与局部任务。全局任务是相对于网络数据获取设备作为一个整体而言的,其需要它的各个组成部分(比如,爬取器、解析器和输出器等)共同协调性地完成,局部任务是相对于网络数据获取设备的某个组成部分而言的,其在某个组成部分内执行。举例而言,假设当前需要从网络侧获取的目标网络数据为某特定“影评”,那么对于网络数据获取设备整体而言,这里获取某特定“影评”的任务即是全局任务,而全局任务是由网络数据获取设备各个组成部分分工协同完成的,对于爬取器而言,其执行爬取该特定“影评”的全局位置得到统一入口资源符的任务,对于解析器而言,其执行解析某特定“影评”的统一入口资源符得到影评数据的任务,对于输出器而言,其执行输出该影评数据的任务,而无论是爬取器、解析器,还是输出器,其所执行任务均是“获取某特定影评”这个全局任务的局部任务。二是总任务与分任务。对于网络数据获取设备而言,可能在同一个时段内接收到对多个目标资源进行爬取的任务,对多个目标资源进行爬取的任务即是总任务,在实现过程中,网络数据获取设备可以并行执行对各个目标资源进行爬取的任务,这种情况下,对每个目标资源进行爬取的任务则构成相对于总任务的分任务。举例而言,假设需要网络数据获取设备获取多个某特定的“影评”,那么由获取这多个特定影评构成的总体即是相对于网络数据获取设备的总任务,进而,在网络数据获取设备完成某特定影评数据的获取的任务时,这一个任务即是分任务。
从上述两个方向对任务的理解,既具有某种程度上的关联性,又具有某种程度上的独立性。对于一个总任务而言,可以同时或者不同时启动多个分任务来完成,而对于一个分任务而言,相对于网络数据获取设备整体则为全局任务,相对于网络数据获取设备的各个组成部分则为局部任务,这体现了从两个方向对“任务”进行理解的关联性。对于网络数据获取设备在完成某次任务过程中,如果该任务仅仅是单个的,那么它实际上并不存在总任务、分任务之分,而仅存在全局任务和局部任务的区别,这体现了从两个方向对“任务”进行理解的独立性。在解释清楚对任务的不同理解(或者说不同类别划分)后,还可以利用“子任务”的概念来说明本发 明完成网络数据的获取过程:在前述第一种理解中,局部任务可以视为子任务,即网络数据获取设备上的爬取器、解析器、输出器内部执行的任务,显然,这种子任务可以包含多个;在前述第二种理解中,分任务可以视为子任务。也就是说,子任务可以在不同层面上统一对任务的认识。基于此,如果在第一种理解基础上认识子任务,那么无论是爬取器、解析器,还是输出器,均可各自同时执行多个子任务;如果在第二种理解基础上认识子任务,那么爬取器、解析器和输出器作为整体可以同时执行多个子任务。
在实际应用过程中,子任务的概念通常与线程(进程)等术语联系起来。比如,在一些应用场景中,子任务可以由线程来实现。这样,爬取器所完成的对目标资源的全局位置的爬取任务可以通过运行多个线程来完成,为方便区别,可以将爬取器内运行的线程称为第一线程(其对应的子任务可以称为第一子任务)。同理,解析器内也可以运行多个线程(可以称为第二线程,其对应的子任务称为第二子任务)来根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据,以及,输出器内也可以运行多个线程(可以称为第三线程,其对应的子任务可以称为第三子任务)来对解析目标资源得到的目标网络数据进行输出。需要说明的是,上述网络数据获取设备的爬取器、解析器和输出器由各个线程来执行子任务时,对这些线程还可以存在如下的要求:
一是三类线程(即第一线程、第二线程、第三线程)的数量总和应当小于或等于线程池内的预设线程数量的总和,这是基于线程池的实际用途作出的要求。线程池内的线程通常不单单用于完成网络数据的获取,还可能应用于进行其他工作,如果将线程池内的线程全部用于网络数据获取过程,则可能导致网络数据获取设备的整体瘫痪或者较大程度上影响到其他功能的实现。在实际应用过程中,尽管理论上只要三类线程的数量不大于线程池内的线程上限即可,但通常还是会根据具体情况保留一些“线程”。
二是三类线程中至少各自有一个线程可以同时启动。由于无论是爬取器、解析器,还是输出器均可以工作在“多线程”模式下,如果对多个线程的工作没有统一的协调,将有可能出现很多问题。实际上,这种要求还出于对线程控制的需要,网络数据爬取过程是一个连续的自动化过程,通 常开始网络数据爬取工作时,使第一线程、第二线程和第三线程同时启动可以在一次性控制中完成,而不需要对三类线程在不同时点上分别控制,即方便了对线程的控制。这里需要说明的是,三类线程中至少一个线程同时启动并不意味着它们一定会同时工作:对于刚开始进行网络数据爬取时,通常最先工作的是爬取器的第一线程,紧接着才是解析器的第二线程、输出器的第三线程,在爬取器的第一线程未爬取目标资源的全局位置以获得入口统一资源定位符之前,解析器的全部第二线程处于等待状态,直至爬取器的某个第一线程爬取目标资源全局位置,得到一个入口统一资源定位符后,某个第二线程则处于工作状态(这时其它的第二线程可能仍然处于等待状态),在解析器的某个第二线程解析出目标资源对应的目标网络数据之前,输出器的全部第三线程处于等待状态,直至解析器的某个第二线程解析出目标资源对应的目标网络数据。但是,由于爬取器、解析器和输出器为多线程工作模式,三类线程也是可以处于同时工作状态的,比如,就获取网络数据的整个过程中的某个时点而言,爬取器的某个第一线程、解析器的某个第二线程以及输出器的某个第三线程均处于工作状态,只不过它们各自工作的内容不同。
在前述示例性网络数据获取设备中,通过爬取器、解析器和输出器的工作可以实现对网络数据的获取。但是,在上述设备的另一些应用场景中,可能还存在其他组成部分以改进网络数据获取设备,使其具有更强的功能或更好的技术效果。下面结合附图3作一些示例性介绍:
在一些应用场景中,网络数据获取设备22可以包括阻塞队列,阻塞队列设置的方式可以包括如下两种典型性方式:一种是将阻塞队列设置在爬取器与解析器之间,这样爬取器可以将对目标资源的全局位置进行爬取得到的入口统一资源定位符放置在该阻塞队列中,以便解析器可以直接从阻塞队列中读取相应信息进行解析;另一种是将阻塞队列设置在解析器与输出器之间,这样解析器可以将对爬取的结果进行解析得到的目标网络数据放置在阻塞队列之中,以便输出器直接从阻塞队列中读取相应信息进行输出。当然,在实际应用过程中,网络数据获取设备可以结合上述做法,同时设置两个阻塞队列,即第一阻塞队列31和第二阻塞队列32,第一阻 塞队列31设置在爬取器和解析器之间,用于放置爬取器对目标资源的全局位置进行爬取得到的入口统一资源定位符,第二阻塞队列32设置在解析器和输出器之间,用于放置解析器根据目标资源的入口统一资源定位符和页面模板对目标资源进行解析得到的目标网络数据。由于第一阻塞队列31的存在,解析器可以从第一阻塞队列中读取入口统一资源定位符进行解析,而不用直接与爬取器发生接口关系,这样实际上起到了对爬取器和解析器的“解耦”,使得爬取器和解析器的工作具有一定的独立性,比如,可以根据具体情况分别控制爬取器的爬取速度和解析器的解析速度,在爬取器爬取入口统一资源定位符的速度较快时,基于第一阻塞队列的缓冲,解析器即使不立即调整速度以适应爬取器,也不会发生整个爬取过程中断或爬取的入口统一资源定位符溢出的现象。类似地,第二阻塞队列32可以在解析器和输出器之间起到上述相同的作用。
在上述增加第一阻塞队列和第二阻塞队列的情况下,本发明的另一些应用场景可能会进一步利用第一阻塞队列和第二阻塞队列,使得整个爬取过程的协同性更强。比如,一种利用方式是在爬取器的第一子任务执行结束后,对该第一子任务执行完毕得到的入口统一资源定位符设置第一结束标签,然后放入到第一阻塞队列之中,这样,解析器执行第二子任务时从第一阻塞队列中读取到相应的标签,便可以结束工作,这种方式实现了爬取器对解析器工作的控制。同理,在解析器的第二子任务执行结束后,对该第二子任务解析得到的目标网络数据设置第二结束标签,这样输出器执行第三子任务读取到第二结束标签时结束工作,实现了解析器对输出器工作的控制。需要说明的是,这里可以是在某一个第一子任务、第二子任务执行结束后设置相应的标签,也可以是在全部的第一子任务、第二子任务工作结束后设置标签,在实际应用过程中更多地选择后者。此外,还需要说明结束标签的数量,在全部的第一子任务、第二子任务工作结束后设置标签的情况下,爬取器(解析器)设置的结束标签的数量可以与解析器(输出器)中的子任务的数量相同或要大,在某一个第一子任务、第二子任务执行结束后设置相应的标签的情况下,设置的结束标签的数量等于爬取器或解析器内的子任务的数量。
在另一些应用场景中,网络数据获取设备22可以包括监控器。这主 要是针对现实应用过程中目标资源所在的网站或网页出现改版、搭建不规范等可能导致页面的DOM结构发生变化的情况,这种情况下,如果采取原有的爬取方式,可能使得爬取的数据出现错误,或者根本不能爬取。为了及早发现这些问题,并相应地调整爬取策略,设置监控器对爬取的整个过程进行监控,一旦发现爬取异常,则发送报警信息。报警信息可以根据对整个爬取过程的影响程度进行级别划分,比如,可以将报警信息划分为可忽略的报警、轻微报警、中等警告、高级别的警告和严重的警告。由于报警信息具有的级别性,有些信息虽然对网络数据的爬取存在影响,但并无过大妨碍,因此,在实际应用过程中,并不需要对这些所有的信息进行捕捉,并作出真实的“报警”。为节约信息处理资源,可以仅捕捉那些较为严重的报警信息,然后及时发出报警通知,以便进行及时处理。具体报警通知的方式可以为按照预先设定的邮件地址,发送给相应的用户。
在又一种应用场景中,网络数据获取设备22可以包括预处理器,该预处理器可以连接在解析器与输出器之间。当解析器与输出器之间具有第二阻塞队列的情况下,预处理器可以位于第二阻塞队列和输出器之间。预处理器可以用于完成多种预处理,比如,一种方式是在解析器解析得到的目标网络数据中包括众多不合法字符的情况下,对这些不合法字符进行去除操作。
在再一种应用场景中,网络数据获取设备22还可以包括缓存器,用于在爬取器爬取目标资源的全局位置后对目标资源所在的页面进行缓存。对网络数据获取设备的这种改进,可以在实际应用过程中应对一些突发情况,比如,爬取过程出现错误或断网被迫中断,当恢复爬取后,则可以从缓存的页面之后接着爬取,而不需要从“头”开始,从而节约了爬取时间。在缓存时,较优选的方式是采用本地硬盘缓存,其原因在于本地存储设备比网盘等网络存储设备通信速度要快、比内存等资源紧张的设备更为优惠。此外,在设置了本地硬盘缓存机制的情况下,还可以加入时效控制策略等措施,使缓存的功能得到最大程度的发挥。
示例性方法
下面结合图3的应用场景,参考图4来描述根据本发明示例性的网络 数据获取方法的实施。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于其他可以适用的任何场景。
根据图4示出的本发明的一个示例性的网络数据获取方法实施例,网络数据获取方法包括如下步骤:
S41:对位于网络侧的目标资源的全局位置进行爬取,以得到入口统一资源定位符;
网络侧的目标资源的全局位置指示了目标资源所在的全局路径,要获取目标网络数据需要先爬取全局位置,以得到入口统一资源定位符。
S42:根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据;
通过前述步骤得到入口统一资源的定位符后,需要借助目标资源所在页面的页面模板来确定目标资源的具体位置。全局位置与页面模板的总和才明确地指示出了目标资源所在,这里将全局位置与页面模板结合起来使用可以至少避免两方面的问题:一是避免准确性过低。现有的一种网络数据获取方式在确定了全局位置后,只要在该全局位置上满足一定条件的所有内容均会作为解析的对象,但这些解析得到的对象可能并不是用户真正需要的内容,使得获取的网络数据与用户的需求不匹配,准确性降低。而本发明可以通过全局位置和页面模板的结合精确指示目标资源的位置,从而有利于精确解析,提高获取的网络数据的准确度。二是避免配置任务过于繁重。在全局位置相同的情况下,针对不同的解析任务,不必针对一个任务进行一个独特爬取配置,而只需要进行解析配置,从而减少了代码量,增强了适应能力。
S43:对解析目标资源得到的目标网络数据进行输出。
需要说明的是,在上述实施例的三个步骤中,虽然文字表现上前后顺序相承,但这并不说明本发明在实现网络数据获取过程中这三个步骤仅能依从这种先后顺序。实际上,S41~S43可以同时启动,如果各个步骤分别由不同的子任务来实现,那么如下两种情况均是可能的:一是前一个步骤的某个(些)子任务较后一个步骤的某个(些)子任务先执行。比如,一些应用场景下,S41、S42步骤均分别由多个子任务来完成(S41步骤对应 的子任务称为第一子任务,S42步骤对应的子任务称为第二子任务),这样,可以是所有第一子任务均执行完毕后才开始执行第二子任务。二是前一个步骤的某个(些)子任务与后一个步骤的某个(些)子任务同时执行,或者前一个步骤的某个(些)子任务的甚至比后一个步骤的某个(些)子任务的执行还要晚。以前述例子为例,多个第一子任务中某个子任务可能与多个第二子任务中的某个子任务同时执行,或者多个第一子任务中某个子任务的执行可能比多个第二子任务中的某个子任务的执行还要晚。实际应用过程中,这两种执行模式可以同时出现在完成一次网络数据的获取过程中。比如,在网络数据获取过程中采用阻塞队列机制的情形下将出现上述两种情形的混合。具体而言,当在S41步骤与S42步骤之间存在一个阻塞队列(第一阻塞队列)、S42步骤与S43步骤之间存在另一个阻塞队列(第二阻塞队列)时,三个步骤之间可以完全“解耦”,即S41步骤对应的子任务在源源不断地将爬取目标资源的全局位置得到的入口统一资源定位符放置于第一阻塞队列,S42步骤对应的子任务则源源不断在从该第一阻塞队列中读取入口统一资源定位符用于解析。那么,刚开始时,由于第一阻塞队列为空,这时必然是S41步骤对应的某个子任务先执行,然后,S42步骤对应的某个子任务再执行,当执行一段时间后或者S42步骤执行的速度慢于S41步骤时,S42步骤对应的某个子任务将可能与S41步骤对应的某个子任务处于相同工作时段内,即同时工作。
在本示例性方法中,可以对目标资源的爬取和解析等过程设置各种条件,以便控制相关过程。比如,设置一个控制条件用于控制爬取器和解析器的启动或停止,或者控制爬取器和解析器对目标资源进行爬取和解析的时间间隔,以防止出现无“节操”爬取和解析等。还比如,可以同时设置筛选条件来控制爬取、解析的深度。在实际应用过程中,某个站点的数据量相当大,但会限制展现数据的页面数量,这种情况下即需要不断地触发筛选条件,由入口统一资源定位符指向的页面不断深入到该页面的子页面、子页面的再下一次的子页面….直到预设的相关条件所指明的某个层级的子页面为止,才进行具体的解析操作。
在上述示例性实施方法基础之上,基于实际应用过程中的具体问题,可以对上述示例性方法进行各种改进,以满足各种场景下的具体需要。下 面示例性地给出了几种情况,本领域技术人员可以在不脱离本发明的核心基础上进行类似的扩展,这些扩展后的方案均在本发明的保护范围内。
示例性情况之一:在实施本发明的获取网络数据的方法过程中,可能面临这样一个问题:目标资源并非是具有单一属性的数据,而是具有多种属性的数据,其中不同属性具有不同类别的数据。比如,当前网络数据获取任务为获取“影评”数据,通常“影评”这一目标资源可能存在“影评名”、“影评内容”、“影评时间”、“影评人联系方式”等属性,不同属性对应的数据的结构、类型完全不同,这种情况下,如果不作任何区分,将可能使获取到的目标网络数据混杂不堪,没有实际价值。为此,需要依据目标资源的属性进行解析,以得到属性对应的目标网络数据。
示例性情况之二:通过前述提及的全局位置和相对位置能够确定目标资源的具体位置,进而对该具体位置进行解析得到需要的目标网络数据。但是,在某些应用场景中,用户可能仅仅需要获取到的目标网络数据中的某一部分而不是全部。以前述的目标资源具有多属性的情况为例,用户可能仅仅需要某个影评人联系方式中的区号信息,这种情况下,可以利用正则表达式对所述属性对应的网络数据进行萃取,以获得所需要的数据。
示例性情况之三:对网络侧数据的获取过程是繁杂的工作,如果目标资源存在周期性更新,那么对目标资源网络数据的爬取和解析过程也需要周期性的进行,以确保获取到的数据是最新最及时的数据。但在这种情况下,需要以相同的IP地址频繁对目标资源所在的网站服务器进行访问,该行为一旦被目标资源所在的网站服务器监控到,将可能拒绝对其访问,屏蔽掉该IP地址。IP地址屏蔽将无法获取目标网络数据。为应对这种情况,可以在对位于网络侧的目标资源的全局位置进行爬取之前,获取IP代理列表,选择该IP代理列表中的一个可用IP;将当前IP变换为所述可用IP,通过所述可用IP对位于网络侧的目标资源的全局位置进行爬取。这种代理机制可以设置为自动运行模式,根据实际情况删除不可用代理、选择可用代理,实现代理的自动管理。与这种情况具有类似性质的一种情形是为防止“无节操”爬取,可以控制对位于网络侧的目标资源的全局位置进行爬取的频率或爬取间隔,和/或爬取速度。
示例性情况之四:在某些目标网站中,需要进行登录后才能对目标网 站进行访问,而登录时可能会要求输入验证码,验证码通常以图片形式给出。在网络数据获取过程中,如果不能突破该验证码的验证关将无法访问到目标页,也就无法获取需要的目标网络数据。这种情况下,可以采取如下措施:在对位于网络侧的目标资源的全局位置进行爬取之前,如果需要进行图片验证以获得对目标资源的访问,则先对所述图片进行切割,将切割后的各个部分与预设训练集进行匹配以确定各个部分对应的内容,利用所述各个部分的内容实现对位于网络侧的目标资源的访问。
为了实现上述网络数据获取过程,本发明的另一个实施例可以先进行文件配置,包括目标文件、条件文件和任务文件的配置,分别介绍如下:
目标文件的配置用于指明待获取的位于网络侧的目标资源的全局位置,以及所述目标资源所在页面的页面模板。假设现在需要获取豆瓣网上的影评数据,由于豆瓣影评的一个页面(比如页面:http://movie.douban.com/review/best/)有一个影评列表,一个影评列表中有10个影评,那么全局位置可以为每页影评列表所在的统一资源定位符,如前述的http://movie.douban.com/review/best/。此外,在该目标文件中,还配置有统一资源定位符所确定的页面的页面模板,在具体实现时,可以用XML路径语言(XML Path Language)来编写页面模板中各个元素的位置,通过页面元素的位置即可在解析时获得页面元素和页面元素的数据。比如,针对前述的例子,可以通过如下的页面模板配置来指明各个影评(的各个属性)的位置:
<Attribute attr="author"name="作者"xpath="//span[class=’starb’]/a[1]"
<Attribute attr="movie"name="电影名"xpath="//span[class=’starb’]/a[2]"
<Attribute attr="star"name="评论星级"xpath="//span[class=’p111obss’]/span[2]/class"
<Attribute attr="date"name="评论日期"xpath="//ul[class=’remark’]/li[1]/span/title"
如上配置中的“xpath”用于指明影评的某个属性(如作者,电影名、评论星级、评论日期等)的具体位置,在进行解析时,即可根据该xpath指明的位置获得相应的影评数据。
所述任务文件指明对网络侧目标资源的全局位置进行爬取以得到入口统一资源定位符的操作、根据得到的入口统一资源定位符和目标资源所 在页面的页面模板对目标资源进行解析以得到目标网络数据的操作、对解析目标资源得到的目标网络数据进行输出的操作对应的任务。如果上述操作通过线程来实现,则对整个过程的配置可以体现为对线程的配置。比如,任务文件的一种示例性配置可以包括:
(1)线程相关配置:
设置crawlerThreadNum用于配置爬取的线程数;
设置parserThreadNum用于设置解析的线程数;
设置handleThreadNum用于设置输出的线程数;
优选地,还可以用于设置预处理的线程数,其主要用于对解析器解析得到的目标网络数据进行预处理;
(2)爬取相关配置,其中:
设置Encode用于配置目标网站的编码格式,默认为utf-8;
设置needProxy用于配置是否需要使用代理,默认为false(不需要);
设置restLevel用于配置各次任务的间隔时间;
设置httpMethod用于配置爬取器获取网页的请求方式;
设置diskCache用于配置是否需要进行硬盘缓存,默认为false;
设置diskCacheOutTimeSecond用于配置硬盘缓存的失效时间,单位为秒,0表示永远都不失效;
设置pageCheckSwitch用于配置是否需要对爬取的页面进行检查,默认为false;
设置pageCheckRegex和上一个配置配合,是页面检查的正则表达式,为空表示不进行检查。
(3)解析相关配置:
设置modelName用于配置目标文件的文件名;
设置crawlConditionName用于配置条件文件的文件名。
(4)输出相关配置,可以配置为console,excel,oracle,mysql四种中的任何一种,其中:oracle和mysql不能同时写,console表示打印到屏幕;excel表示打印到excel。
优选地,还可以在任务文件中对报警信息处理配置,比如:
设置mailTo用于设置报警信息接收邮件列表;
设置maxMail用于设置每次任务发送的报警信息邮件上限,设置为0时没有上限,支持重复报警过滤;
所述条件文件指明过程中的各种控制。这里的条件可以具体体现为比如按照如下方式配置的筛选条件和控制条件:
按照前述方式配置完成后,则可以读取并运行配置文件,以执行对网 络侧目标资源的全局位置进行爬取以得到入口统一资源定位符的操作,根据所述入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析以得到目标网络数据的操作,以及对所述目标网络数据进行输出的操作,从而实现网络数据获取。
应当注意,尽管在上文详细描述中提及了网络数据获取设备的若干装置,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。并且,相反地,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (17)
1.一种网络数据获取设备,包括:
爬取器,用于对位于网络侧的目标资源的全局位置进行爬取,以得到入口统一资源定位符;
解析器,用于根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据;以及,
输出器,用于对解析目标资源得到的目标网络数据进行输出。
2.根据权利要求1所述的设备,其中,所述爬取器、解析器、输出器同时启动,所述爬取器、解析器、输出器具备同时执行多个子任务的能力。
3.根据权利要求2所述的设备,还包括第一阻塞队列和第二阻塞队列,其中,
所述爬取器将对目标资源的全局位置进行爬取得到的入口统一资源定位符放置于所述第一阻塞队列,以便所述解析器从所述第一阻塞队列中读取所述入口统一资源定位符进行解析;
所述解析器将根据所述入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析而得到的目标网络数据放置于所述第二阻塞队列,以便所述输出器从所述第二阻塞队列中读取所述目标网络数据进行输出。
4.根据权利要求2所述的设备,其中,所述爬取器、解析器、输出器各自具有多个子任务,
所述爬取器,还用于在其所有子任务执行结束后,在第一阻塞队列设置和所述解析器子任务数相同数量的第一结束标签,以便解析器的每一个子任务读取到第一阻塞队列中的一个结束标签后,结束相应子任务;
所述解析器,还用于在其所有子任务执行结束后,在第二阻塞队列设置和所述输出器子任务数相同数量的第二结束标签,以便输出器的每一个子任务读取到第二阻塞队列中的一个结束标签后,结束相应子任务。
5.根据权利要求1至4中任何一项所述的设备,还包括监控器,用于对网络数据获取异常进行监控,根据监控结果生成报警信息,并向预设用户发送报警信息,所述网络数据获取异常至少包括目标资源所在页面的DOM结构发生变化导致的异常。
6.根据权利要求1至4中任何一项所述的设备,还包括连接在解析器与输出器之间的预处理器,用于对解析器解析得到的目标网络数据进行预处理。
7.根据权利要求6所述的设备,还包括缓存器,用于在爬取器爬取目标资源的全局位置后对目标资源所在的页面进行缓存。
8.一种网络数据获取方法,包括:
对位于网络侧的目标资源的全局位置进行爬取,以得到入口统一资源定位符;
根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据;
对解析目标资源得到的目标网络数据进行输出。
9.根据权利要求8所述的方法,其中,对目标资源的全局位置进行爬取的步骤、对目标资源进行解析的步骤以及对目标数据进行输出的步骤同时启动,且所述步骤能够通过同时执行多个子任务实现。
10.根据权利要求8所述的方法,其中,根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析,以得到目标网络数据包括:
由目标资源所在页面的页面模板确定目标资源相对于所述全局位置的相对位置;
对根据所述全局位置和相对位置确定的目标资源按照预设条件进行解析,以得到目标网络数据。
11.根据权利要求10所述的方法,其中,所述预设条件包括用于从目标资源所在的页面开始筛选直至定位到所述目标资源的预设筛选条件,和/或,用于对解析目标资源进行启动或停止控制的预设控制条件;
对目标资源按照预设条件进行解析以得到目标网络数据具体为对目标资源按照所述预设筛选条件和预设控制条件进行解析以得到目标网络数据。
12.根据权利要求10所述的方法,其中,所述目标资源具有至少一个属性;
对目标资源按照预设条件进行解析以得到目标网络数据具体为对目标资源的属性进行解析以得到该属性对应的目标网络数据。
13.根据权利要求12所述的方法,还包括:
利用正则表达式对所述属性对应的网络数据进行萃取,以获得所需要的数据。
14.根据权利要求8所述的方法,还包括:
在对位于网络侧的目标资源的全局位置进行爬取之前,获取IP代理列表,选择该IP代理列表中的一个可用IP作为代理IP,从而在隐藏当前IP的情况下对位于网络侧的目标资源的全局位置进行爬取。
15.根据权利要求8所述的方法,在对位于网络侧的目标资源的全局位置进行爬取之前,如果需要进行图片验证以获得对目标资源的访问的情况下,所述方法还包括:
对所述图片进行切割,将切割后的各个部分与预设训练集进行匹配以确定各个部分对应的内容,利用所述各个部分的内容实现对位于网络侧的目标资源的访问。
16.根据权利要求8所述的方法,还包括:
控制对位于网络侧的目标资源的全局位置进行爬取的频率或爬取间隔,和/或爬取速度。
17.一种实现网络数据获取过程的方法,包括:
配置目标文件、条件文件和任务文件,使所述目标文件指明待获取的位于网络侧的目标资源的全局位置,以及所述目标资源所在页面的页面模板,所述任务文件指明对网络侧目标资源的全局位置进行爬取以得到入口统一资源定位符的操作、根据得到的入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析以得到目标网络数据的操作、对解析目标资源得到的目标网络数据进行输出的操作对应的任务,所述条件文件指明过程中的各种控制;
读取并运行配置文件,以执行对网络侧目标资源的全局位置进行爬取以得到入口统一资源定位符的操作,根据所述入口统一资源定位符和目标资源所在页面的页面模板对目标资源进行解析以得到目标网络数据的操作,以及对所述目标网络数据进行输出的操作,从而实现网络数据获取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410158189.7A CN103942309B (zh) | 2014-04-18 | 2014-04-18 | 一种网络数据获取设备、方法及获取过程的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410158189.7A CN103942309B (zh) | 2014-04-18 | 2014-04-18 | 一种网络数据获取设备、方法及获取过程的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942309A true CN103942309A (zh) | 2014-07-23 |
CN103942309B CN103942309B (zh) | 2017-06-30 |
Family
ID=51189977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410158189.7A Active CN103942309B (zh) | 2014-04-18 | 2014-04-18 | 一种网络数据获取设备、方法及获取过程的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942309B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252530A (zh) * | 2014-09-10 | 2014-12-31 | 北京京东尚科信息技术有限公司 | 一种单机爬虫抓取方法及系统 |
CN104615490A (zh) * | 2015-02-05 | 2015-05-13 | 浪潮集团有限公司 | 一种数据转换的方法及装置 |
CN105893583A (zh) * | 2016-04-01 | 2016-08-24 | 北京鼎泰智源科技有限公司 | 基于人工智能的数据采集方法及系统 |
CN106156104A (zh) * | 2015-04-02 | 2016-11-23 | 北京奇虎科技有限公司 | 爬取企业内网信息的方法及装置 |
CN106547824A (zh) * | 2016-09-29 | 2017-03-29 | 北京奇艺世纪科技有限公司 | 一种爬取路径规划方法及装置 |
CN107025230A (zh) * | 2016-01-29 | 2017-08-08 | 北京国双科技有限公司 | 网络爬虫的处理方法及装置 |
CN107545062A (zh) * | 2017-09-05 | 2018-01-05 | 北京小度信息科技有限公司 | 入口召回方法、装置、存储介质和电子设备 |
CN107590180A (zh) * | 2017-08-01 | 2018-01-16 | 佛山市深研信息技术有限公司 | 一种大数据的监控提醒方法及装置 |
CN107870861A (zh) * | 2017-10-10 | 2018-04-03 | 上海壹账通金融科技有限公司 | 网页爬取的并发测试方法及应用服务器 |
CN109857547A (zh) * | 2019-01-04 | 2019-06-07 | 平安科技(深圳)有限公司 | 一种线程分配方法、装置及终端设备 |
CN110717131A (zh) * | 2018-06-27 | 2020-01-21 | 北京国双科技有限公司 | 页面改版的监控方法及相关系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831121A (zh) * | 2011-06-15 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 一种网页信息抽取的方法和系统 |
CN102890692A (zh) * | 2011-07-22 | 2013-01-23 | 阿里巴巴集团控股有限公司 | 一种网页信息抽取方法及抽取系统 |
US8489568B2 (en) * | 2008-05-12 | 2013-07-16 | Canon Kabushiki Kaisha | Data acquisition apparatus and data acquisition method |
CN103279507A (zh) * | 2013-05-16 | 2013-09-04 | 北京尚友通达信息技术有限公司 | 网页爬虫操作方法和系统 |
-
2014
- 2014-04-18 CN CN201410158189.7A patent/CN103942309B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8489568B2 (en) * | 2008-05-12 | 2013-07-16 | Canon Kabushiki Kaisha | Data acquisition apparatus and data acquisition method |
CN102831121A (zh) * | 2011-06-15 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 一种网页信息抽取的方法和系统 |
CN102890692A (zh) * | 2011-07-22 | 2013-01-23 | 阿里巴巴集团控股有限公司 | 一种网页信息抽取方法及抽取系统 |
CN103279507A (zh) * | 2013-05-16 | 2013-09-04 | 北京尚友通达信息技术有限公司 | 网页爬虫操作方法和系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252530A (zh) * | 2014-09-10 | 2014-12-31 | 北京京东尚科信息技术有限公司 | 一种单机爬虫抓取方法及系统 |
CN104252530B (zh) * | 2014-09-10 | 2017-09-15 | 北京京东尚科信息技术有限公司 | 一种单机爬虫抓取方法及系统 |
CN104615490A (zh) * | 2015-02-05 | 2015-05-13 | 浪潮集团有限公司 | 一种数据转换的方法及装置 |
CN106156104A (zh) * | 2015-04-02 | 2016-11-23 | 北京奇虎科技有限公司 | 爬取企业内网信息的方法及装置 |
CN107025230A (zh) * | 2016-01-29 | 2017-08-08 | 北京国双科技有限公司 | 网络爬虫的处理方法及装置 |
CN105893583A (zh) * | 2016-04-01 | 2016-08-24 | 北京鼎泰智源科技有限公司 | 基于人工智能的数据采集方法及系统 |
CN106547824A (zh) * | 2016-09-29 | 2017-03-29 | 北京奇艺世纪科技有限公司 | 一种爬取路径规划方法及装置 |
CN106547824B (zh) * | 2016-09-29 | 2019-11-15 | 北京奇艺世纪科技有限公司 | 一种爬取路径规划方法及装置 |
CN107590180A (zh) * | 2017-08-01 | 2018-01-16 | 佛山市深研信息技术有限公司 | 一种大数据的监控提醒方法及装置 |
CN107545062A (zh) * | 2017-09-05 | 2018-01-05 | 北京小度信息科技有限公司 | 入口召回方法、装置、存储介质和电子设备 |
CN107870861A (zh) * | 2017-10-10 | 2018-04-03 | 上海壹账通金融科技有限公司 | 网页爬取的并发测试方法及应用服务器 |
CN110717131A (zh) * | 2018-06-27 | 2020-01-21 | 北京国双科技有限公司 | 页面改版的监控方法及相关系统 |
CN109857547A (zh) * | 2019-01-04 | 2019-06-07 | 平安科技(深圳)有限公司 | 一种线程分配方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103942309B (zh) | 2017-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942309A (zh) | 一种网络数据获取设备、方法及获取过程的实现方法 | |
US20210349964A1 (en) | Predictive resource identification and phased delivery of structured documents | |
CN107895009B (zh) | 一种基于分布式的互联网数据采集方法及系统 | |
CN107463641B (zh) | 用于改进对搜索结果的访问的系统和方法 | |
US8533297B2 (en) | Setting cookies in conjunction with phased delivery of structured documents | |
US20150089415A1 (en) | Method of processing big data, apparatus performing the same and storage media storing the same | |
CN109753596B (zh) | 用于大规模网络数据采集的信源管理与配置方法和系统 | |
CN109840298B (zh) | 大规模网络数据的多信息来源采集方法和系统 | |
CN107391775A (zh) | 一种通用的网络爬虫模型实现方法及系统 | |
CN110413864A (zh) | 一种网络安全情报采集方法、装置、设备及存储介质 | |
CA3120833C (en) | Identifying equivalent links on a page | |
CN111475764B (zh) | 搜索引擎优化方法、装置、终端及存储介质 | |
CN110851136A (zh) | 数据获取方法、装置、电子设备及存储介质 | |
JP2010517174A (ja) | ストリーミング可能な対話的レンダリング非依存のページレイアウト | |
CN109819019B (zh) | 用于大规模网络数据采集的监控与统计分析方法和系统 | |
Li et al. | Solving siphons with the minimal cardinality in Petri nets and its applications to deadlock control | |
CN111221744B (zh) | 数据采集方法、装置及电子设备 | |
CN107784054B (zh) | 一种页面发布方法和装置 | |
US11960560B1 (en) | Methods for analyzing recurring accessibility issues with dynamic web site behavior and devices thereof | |
CN112989195B (zh) | 基于大数据的全过程咨询方法、装置、电子设备及存储介质 | |
CN116719986B (zh) | 基于Python的数据抓取方法、装置、设备及存储介质 | |
US11934984B1 (en) | System and method for scheduling tasks | |
CN110601890B (zh) | 一种网络性能分析方法、装置、设备及可读存储介质 | |
CN110719260B (zh) | 智能网络安全分析方法、装置及计算机可读存储介质 | |
Capocci et al. | Statistical properties of inter-arrival times distribution in social tagging systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100190, Zhongguancun 1 East Road, Beijing, Haidian District Tsinghua Science and Technology Park, building 8, building 21, enlightenment technology building, A Applicant after: NetEase Lede Technology Co., Ltd. Address before: 401, room 4, building 599, 310052 business road, Changhe Road, Binjiang District, Zhejiang, Hangzhou Applicant before: Lede Technology Co., Ltd. |
|
COR | Change of bibliographic data | ||
GR01 | Patent grant | ||
GR01 | Patent grant |