CN107729508A - 信息爬取方法与装置 - Google Patents
信息爬取方法与装置 Download PDFInfo
- Publication number
- CN107729508A CN107729508A CN201710994107.6A CN201710994107A CN107729508A CN 107729508 A CN107729508 A CN 107729508A CN 201710994107 A CN201710994107 A CN 201710994107A CN 107729508 A CN107729508 A CN 107729508A
- Authority
- CN
- China
- Prior art keywords
- url
- configuration file
- information
- information crawler
- task
- 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.)
- Pending
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/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Abstract
本公开提供一种信息爬取方法与装置,方法包括:获取根据目标网站的网页结构以及信息爬取需求生成的配置文件;根据所述配置文件执行对所述网站的信息爬取任务。本公开提供的信息爬取方法可以提升信息爬取效率。
Description
技术领域
本公开涉及互联网技术领域,具体而言,涉及一种通过配置爬取模板以爬取信息的信息爬取方法与装置。
背景技术
随着大数据时代的到来,数据的重要性日渐突出,大量数据的采集工作也越来越重要。目前,数据采集的途径主要分为利用内部数据进行采集和利用互联网进行采集,常见技术是针对需要采集的数据来进行编码抓取指定数据。在利用互联网进行数据采集时,可以分为利用搜索引擎进行采集和利用爬虫进行爬取。
搜索引擎平台能够全网采集互联网上的开放信息,采集数据范围广,更新频率快,采集数据量大,但是采集的信息多为模糊信息,结果精确度不高,数据非结构化,难以提供准确而干净的数据,因此当需要获取精确数据时,通常采集精确数据通常利用爬虫对信息进行精确爬取。
利用爬虫对信息进行精确爬取通常需要针对每类目标页面定制编码,因此具有数据采集灵活、抓取信息精准、抓取方向可控的优点,但是所需工作量大,代码维护复杂、困难并且抓取速度受单台机器性能的限制。此外,由于现有方法通常需要加载页面内容,并将页面内所有内容下载后再进行爬取,在需要爬取多个网页时会占用大量资源,导致爬取速度过慢。
因此,需要一种能够高效率精确爬取信息的信息爬取方法。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供信息爬取,用于至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或多个问题。
根据本公开实施例的第一方面,提供一种信息爬取方法,包括:获取根据目标网站的网页结构以及信息爬取需求生成的配置文件;根据所述配置文件执行对所述网站的信息爬取任务。
在本公开的一种示例性实施例中,所述配置文件包括:所述爬取任务的设置信息以及所述目标网站的入口URL;与所述网页层级结构的每一层对应的爬取策略组件组。
在本公开的一种示例性实施例中,所述爬取策略组件组包括多个组件,所述组件包括多个独立执行爬取功能的插件。
在本公开的一种示例性实施例中,根据所述配置文件执行对所述网站的信息爬取任务包括:获取当前URL内容;判断是否需要输入关键词,如果需要则根据配置文件输入关键词;判断是否需要保存当前URL的内容,如果需要则根据配置文件中的保存策略保存当前URL的内容;判断是否需要生成下一级URL,如果不需要则结束爬取流程,如果需要则根据配置文件生成下一级URL。
在本公开的一种示例性实施例中,执行对所述网站的信息爬取任务包括:
通过平台调度集群内的多台计算机同时执行多个信息爬取任务。
根据本公开实施例的第二方面,提供一种信息爬取装置,包括:
配置文件获取模块,设置为获取根据目标网站的网页结构以及信息爬取需求生成的配置文件;配置文件执行模块,设置为根据所述配置文件执行对所述网站的信息爬取任务。
在本公开的一种示例性实施例中,所述配置文件包括:所述爬取任务的设置信息以及所述目标网站的入口URL;与所述网页层级结构的每一层分别对应的多个爬取策略组件组。
在本公开的一种示例性实施例中,所述爬取策略组件组包括多个组件,所述组件包括多个独立执行爬取功能的插件。
在本公开的一种示例性实施例中,所述配置文件执行模块包括:内容获取单元,设置为获取一个URL对应的内容;关键词输入单元,设置为判断是否需要输入关键词,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组对当前网页输入关键词;内容保存单元,设置为判断是否需要保存所述内容,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组保存所述内容;下级URL生成单元,设置为判断是否需要生成下一级URL,如果不需要则结束爬取流程,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组生成下一级URL。
在本公开的一种示例性实施例中,还包括:平台调度模块,设置为通过平台调度集群内的多台计算机同时执行多个信息爬取任务。
根据本公开实施例的第三方面,提供一种信息爬取装置,包括:存储器;以及耦合到所属存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行如上述任意一项所述的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任意一项所述的方法步骤。
本公开提供的信息爬取方法通过使用配置文件来对目标网站进行信息爬取,省去了编码工作,降低了使用爬虫采集数据的技术门槛;通过已有的平台来实现集群任务调度,充分利用集群性能,更好的提高了爬取的效率,解决了信息爬取时需占用大量资源的问题;通过对目标网站页面源码进行直接处理,避免了预先加载目标页面,在同时处理多个页面时显著提升了信息爬取效率。灵活的爬取策略配置可以使代码便于维护,提高了平台的稳定性,更利于平台的扩展。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中信息爬取方法的流程图。
图2示意性示出本公开示例性实施例中目标网站层级结构的示意图。
图3示意性示出本公开示例性实施例中一种信息爬取方法的详细流程图。
图4示意性示出本公开示例性实施例中另一种信息爬取方法的详细流程图。
图5示意性示出本公开一个示例性实施例中一种信息爬取装置的方框图。
图6示意性示出本公开一个示例性实施例中另一种信息爬取装置的方框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
下面结合附图对本公开示例实施方式进行详细说明。
图1示意性示出本公开示例性实施例中信息爬取方法的流程图。参考图1,一种信息爬取方法100包括:
步骤S102,获取根据目标网站的网页结构以及信息爬取需求生成的配置文件。
步骤S104,根据所述配置文件执行对所述网站的信息爬取任务。
本公开提供的信息爬取方法通过使用配置文件来对目标网站进行信息爬取,省去了编码工作,降低了使用爬虫采集数据的技术门槛;通过已有的平台来实现集群任务调度,充分利用集群性能,更好的提高了爬取的效率,解决了信息爬取时需占用大量资源的问题;通过对目标网站页面源码进行直接处理,避免了预先加载目标页面,在同时处理多个页面时显著提升了信息爬取效率。灵活的爬取策略配置可以使代码便于维护,提高了平台的稳定性,更利于平台的扩展。
下面对信息爬取方法100的各步骤进行详细说明。
在步骤S102,获取根据目标网站的网页结构以及信息爬取需求生成的配置文件。
在本公开的一种示例性实施例中,配置文件包括爬取任务的设置信息、目标网站的入口URL以及与网页层级结构的每一层对应的爬取策略组件组。其中,每个爬取策略组件组包括多个组件,每个组件包括多个独立执行爬取功能的插件。
即,配置文件主要是基于对目标网站结构的分析而生成的具有对应层级结构的插件组合。
图2示意性示出本公开示例性实施例中目标网站层级结构的示意图。
参考图2,通过对目标站点的调研,可根据信息爬取需求把目标网站的页面分成不同的类别。为方便理解,可以将页面类别作为点来生成非均衡树,并对点与点之间的关联进行自定义命名,即树枝。图2中,目标网站具有n级URL,每一级URL都对应有一或多个网页类别,即图中的点。通过描绘点与点之间的关联,生成对应于目标网站的非均衡树,不同树枝的长度根据关联情况不同而不同。在实际应用中,非均衡树中不同的点(即网页类别)可以对应不同的爬取逻辑,爬取逻辑之间互不影响,便于调试维护。
示例性的,在配置文件中,对应于目标网站非均衡树上的每个点的爬取策略配置可以包括一或多个组件,每个组件又可以包括一或多个插件。即组件由一个或者多个插件通过逻辑组合而成,其组件名称、功能以及组成的插件可被自由设置,各组件可以对应不同的爬取逻辑,各组件对其所属的各插件返回的信息可以随意组合。插件是独立执行具体爬取功能的功能单元,各个插件内部的处理逻辑可以不同,每个插件执行的具体爬取功能也不同。每个插件的功能都高度内聚,具有独立性,和组件没有耦合关系,但又可以被一或多个组件复用。采用灵活的爬取策略配置可以使代码便于维护,提高信息爬取效率。
组件和插件的编写可以从编写好的组件库和插件库中获取素材。插件库中的插件可以通过XPath、正则表达式或者自定义编程生成,也可根据不同的爬取需求更换或添加。
组件的功能例如可以包括拼接新的请求URL、post请求体、header头以及对数据的入库操作,插件的功能例如可以包括使用regex、正则等主流文本处理工具,生成分页、关键词等参数。多个组件的组合能够抓取互联网上的多数页面。
表1是部分插件功能以及样例,表2是部分组件名称以及样例。
表1:
表2
通过对具有不同独立功能的插件进行排列组合,省去了编码工作,可以使以往只有本领域专业技术人员才能担任的使用爬虫采集数据工作转变为可以由任何经过短时间培训的人员来担任的工作,显著降低了操作的技术门槛,提高了数据采集的工作效率。
在步骤S104,根据所述配置文件执行对所述网站的信息爬取任务。
图3示意性示出本公开示例性实施例中信息爬取方法的详细流程图。参考图3,根据所述配置文件执行对所述网站的信息爬取任务包括:
步骤S1041,获取当前URL内容。
步骤S1042,判断是否需要输入关键词。
步骤S4043,如果需要输入关键词则根据配置文件输入关键词。
步骤S1044,判断是否需要保存当前URL的内容。
步骤S1045,如果需要保存当前URL的内容则根据配置文件中的保存策略保存当前URL的内容。
步骤S1046,判断是否需要生成下一级URL。
步骤S1047,如果需要则根据配置文件生成下一级URL。
步骤S1048,如果不需要则结束爬取流程。
由于配置文件包括爬取任务的设置信息、目标网站的入口URL以及与网页层级结构的每一层对应的爬取策略组件组,任务执行器在获取配置文件后,首先可以根据设置信息以及目标网站的入口URL获取入口URL的内容,再根据网页层级结构对目标网站进行分割,依次按照与网页层级结构的每一层对应的爬取策略组件组对目标网站进行信息爬取。
在图3所示的实施例中,对非均衡树上的每一点(即每一类网页),均需获取当前URL的内容,如果当前URL为第一级URL,则当前URL为目标网站的入口URL。
获取网页内容后,进入步骤S1042,判断该网页是否需要输入关键词,如果需要输入关键词则根据配置文件中的插件执行输入关键词任务,如果不需要则进入步骤S1044,判断是否需要保存当前URL的内容。
在当前URL的内容中包含需要保存的信息等情况下,需要保存当前URL的内容,此时可以根据配置文件中的保存策略(即执行内容保存功能的组件)来保存当前URL的内容。如果不需要保存当前URL的内容,则可以进入步骤S1046,判断是否需要生成下一级URL。
在当前URL不为最后一级URL等情况下,可以生成下一级URL以继续信息爬取。对每一类网页生成下一级URL的方法可以不同,可以根据配置文件中记载的与该类网页对应的爬取策略组件组来生成下一级URL,并循环执行步骤S1041至步骤S1047,直至无需生成下一级URL。
通过根据包含多个组件组的配置文件执行爬取策略,可以实现不用编码直接使用配置文件快速抓取目标数据。通过对页面源码的处理,并编写定位的配置文件,使得爬取任务执行时可以无需加载页面,在同时处理多个爬取任务时显著提升爬取效率,解决了信息爬取时占用大量资源的问题。
在本公开的一种示例性实施例中,执行对所述网站的信息爬取任务包括通过平台调度集群内的多台计算机同时执行多个信息爬取任务。
传统的爬虫任务只能在一台机器上运行,限制了爬取能力以及效率。本公开实施例中,实现了由平台集群部署任务,统一管理,实现多个爬虫的分布式爬取。平台不仅能够监控各任务的运行情况,而且随时可以暂停、终止和恢复任务运行,有利于爬取状态的监控和操纵。通过配置平台分布式爬取,可以显著提高爬取效率。
图4示意性示出本公开示例性实施例中信息爬取方法的详细流程图。
参考图4,在步骤S401,从任务池中读取任务。
详细地说,平台的任务执行器持续从平台的任务池中抓取任务,并持续从每个任务的请求池中拿取固定个数的请求,放入平台中一台计算机的缓存请求队列中,整个过程与接下来的任务执行过程同时进行。
在步骤S402,从请求队列中读取请求。
详细地说,即一台计算机的任务执行器从本机缓存请求队列中读取取一个请求。
在步骤S403,根据请求获取其对应的配置文件,并根据配置文件执行本次请求,以获取响应信息(页面源码)。
步骤S404,判断本响应信息是否需要保存,如果需要则进入步骤S405运行配置文件中的保存策略组件。
在步骤S406,根据本次请求的配置文件判断是否需要生成新的请求(即下一级URL)。如果需要,则进入步骤S407,根据配置文件中的相应规则来抽取响应信息中的相应信息来生成新的请求,以及,进入步骤S408,将本次生成的新的请求加入到本任务的请求池。如果不需要则进入步骤S409,判断请求队列中是否还有待运行的请求,如果有则重复步骤S402至步骤S409,否则结束本次任务。
通过平台的主从结构来实现集群任务调度,可以使每个任务通过调度器进行定时启动,并由调度器切分到各计算机中,充分利用集群性能。通过将任务拆分到多台机器上并行运行,可以提高任务处理效率,扩大任务处理量。由于平台性能能够横向扩展,爬取任务的处理效率可以被持续提升。
对于可扩展的组件及插件,平台还提供组件和插件的执行引擎,从而实现对新扩展的组件和插件无缝对接,无需特殊处理。
在一实施例中,工作人员根据爬取任务在插件库和组件库中获取到所需的已有或新生成的多个组件和/或插件后,将插件组成为组件,并将此新生成的组件与组件库中获取的组件写入配置文件。平台加载配置文件后,无需特殊处理即可执行该爬取策略,调动多台计算机同时执行多个爬虫的爬取任务。通过将插件作为功能单元执行爬取任务,可以提高平台的稳定性,更利于平台的扩展。
对应于上述方法实施例,本公开还提供一种信息爬取装置,可以用于执行上述方法实施例。
图5示意性示出本公开一个示例性实施例中一种信息爬取装置的方框图。参考图5,信息爬取装置500包括:
配置文件获取模块502,设置为获取根据目标网站的网页结构以及信息爬取需求生成的配置文件。
配置文件执行模块504,设置为根据所述配置文件执行对所述网站的信息爬取任务。
在本公开的一种示例性实施例中,所述配置文件包括:所述爬取任务的设置信息以及所述目标网站的入口URL;与所述网页层级结构的每一层分别对应的多个爬取策略组件组。
在本公开的一种示例性实施例中,所述爬取策略组件组包括多个组件,所述组件包括多个独立执行爬取功能的插件。
在本公开的一种示例性实施例中,所述配置文件执行模块包括:内容获取单元,设置为获取一个URL对应的内容;关键词输入单元,设置为判断是否需要输入关键词,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组对当前网页输入关键词;内容保存单元,设置为判断是否需要保存所述内容,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组保存所述内容;下级URL生成单元,设置为判断是否需要生成下一级URL,如果不需要则结束爬取流程,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组生成下一级URL。
在本公开的一种示例性实施例中,还包括:
平台调度模块506,设置为通过平台调度集群内的多台计算机同时执行多个信息爬取任务。
由于装置500的各功能已在其对应的方法实施例中予以详细说明,本公开于此不再赘述。
根据本公开的一个方面,提供一种信息爬取装置,包括:
存储器;以及
耦合到所属存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如上述任意一项所述的方法。
该实施例中的装置的处理器执行操作的具体方式已经在有关该信息爬取方法的实施例中执行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种装置600的框图。装置600可以是智能手机、平板电脑等移动终端。
参照图6,装置600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,传感器组件614以及通信组件616。
处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作以及记录操作相关联的操作等。处理组件602可以包括一个或多个处理器618来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在装置600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储器604中还存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器618执行,以完成上述任一所示方法中的全部或者部分步骤。
电源组件606为装置600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到装置600的打开/关闭状态,组件的相对定位,传感器组件614还可以检测装置600或装置600一个组件的位置改变以及装置600的温度变化。在一些实施例中,该传感器组件614还可以包括磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在本公开的一种示例性实施例中,还提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上述任意一项所述的信息爬取方法。该计算机可读存储介质例如可以为包括指令的临时性和非临时性计算机可读存储介质。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和构思由权利要求指出。
Claims (12)
1.一种信息爬取方法,其特征在于,包括:
获取根据目标网站的网页层级结构以及信息爬取需求生成的配置文件;
根据所述配置文件执行对所述网站的信息爬取任务。
2.根据权利要求1所述的信息爬取方法,其特征在于,所述配置文件包括:
所述爬取任务的设置信息以及所述目标网站的入口URL;
与所述网页层级结构的每一层分别对应的多个爬取策略组件组。
3.根据权利要求2所述的信息爬取方法,其特征在于,所述爬取策略组件组包括多个组件,所述组件包括多个独立执行爬取功能的插件。
4.根据权利要求2或3所述的信息爬取方法,其特征在于,根据所述配置文件执行对所述网站的信息爬取任务包括:
获取一个URL对应的内容;
判断是否需要输入关键词,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组对当前网页输入关键词;
判断是否需要保存所述内容,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组保存所述内容;
判断是否需要生成下一级URL,如果不需要则结束爬取流程,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组生成下一级URL。
5.根据权利要求1所述的信息爬取方法,其特征在于,执行对所述网站的信息爬取任务包括:
通过平台调度集群内的多台计算机同时执行多个信息爬取任务。
6.一种信息爬取装置,其特征在于,包括:
配置文件获取模块,设置为获取根据目标网站的网页结构以及信息爬取需求生成的配置文件;
配置文件执行模块,设置为根据所述配置文件执行对所述网站的信息爬取任务。
7.根据权利要求6所述的信息爬取装置,其特征在于,所述配置文件包括:
所述爬取任务的设置信息以及所述目标网站的入口URL;
与所述网页层级结构的每一层分别对应的多个爬取策略组件组。
8.根据权利要求7所述的信息爬取装置,其特征在于,所述爬取策略组件组包括多个组件,所述组件包括多个独立执行爬取功能的插件。
9.根据权利要求7或8所述的信息爬取装置,其特征在于,所述配置文件执行模块包括:
内容获取单元,设置为获取一个URL对应的内容;
关键词输入单元,设置为判断是否需要输入关键词,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组对当前网页输入关键词;
内容保存单元,设置为判断是否需要保存所述内容,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组保存所述内容;
下级URL生成单元,设置为判断是否需要生成下一级URL,如果不需要则结束爬取流程,如果需要则通过所述配置文件中与所述URL对应的爬取策略组件组生成下一级URL。
10.根据权利要求6所述的信息爬取装置,其特征在于,还包括:
平台调度模块,设置为通过平台调度集群内的多台计算机同时执行多个信息爬取任务。
11.一种信息爬取装置,其特征在于,包括:
存储器;以及
耦合到所属存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行如权利要求1-5任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710994107.6A CN107729508A (zh) | 2017-10-23 | 2017-10-23 | 信息爬取方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710994107.6A CN107729508A (zh) | 2017-10-23 | 2017-10-23 | 信息爬取方法与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107729508A true CN107729508A (zh) | 2018-02-23 |
Family
ID=61212363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710994107.6A Pending CN107729508A (zh) | 2017-10-23 | 2017-10-23 | 信息爬取方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107729508A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108834281A (zh) * | 2018-07-05 | 2018-11-16 | 常州市武进区半导体照明应用技术研究院 | 路灯系统的策略控制方法 |
CN110189189A (zh) * | 2019-04-19 | 2019-08-30 | 平安科技(深圳)有限公司 | 一站式网络购物引导方法、装置、计算机设备和存储介质 |
CN110209909A (zh) * | 2019-04-19 | 2019-09-06 | 平安科技(深圳)有限公司 | 数据爬取方法、装置、计算机设备和存储介质 |
CN110297962A (zh) * | 2019-06-28 | 2019-10-01 | 北京金山安全软件有限公司 | 网站资源的爬取方法、装置、系统和计算机设备 |
CN110765334A (zh) * | 2019-09-10 | 2020-02-07 | 北京字节跳动网络技术有限公司 | 数据抓取方法、系统、介质和电子设备 |
CN111339388A (zh) * | 2019-06-13 | 2020-06-26 | 海通证券股份有限公司 | 一种信息爬取系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020088A (zh) * | 2011-09-27 | 2013-04-03 | 腾讯科技(深圳)有限公司 | 一种数据处理装置及方法 |
CN104750804A (zh) * | 2015-03-24 | 2015-07-01 | 南京途牛科技有限公司 | 一种插件式可配置的垂直领域网络爬虫实现方法 |
CN105955984A (zh) * | 2016-04-19 | 2016-09-21 | 中国银联股份有限公司 | 基于爬虫模式的网络数据搜索方法 |
CN107071009A (zh) * | 2017-03-28 | 2017-08-18 | 江苏飞搏软件股份有限公司 | 一种负载均衡的分布式大数据爬虫系统 |
CN107092632A (zh) * | 2017-02-09 | 2017-08-25 | 北京小度信息科技有限公司 | 数据处理方法及装置 |
-
2017
- 2017-10-23 CN CN201710994107.6A patent/CN107729508A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020088A (zh) * | 2011-09-27 | 2013-04-03 | 腾讯科技(深圳)有限公司 | 一种数据处理装置及方法 |
CN104750804A (zh) * | 2015-03-24 | 2015-07-01 | 南京途牛科技有限公司 | 一种插件式可配置的垂直领域网络爬虫实现方法 |
CN105955984A (zh) * | 2016-04-19 | 2016-09-21 | 中国银联股份有限公司 | 基于爬虫模式的网络数据搜索方法 |
CN107092632A (zh) * | 2017-02-09 | 2017-08-25 | 北京小度信息科技有限公司 | 数据处理方法及装置 |
CN107071009A (zh) * | 2017-03-28 | 2017-08-18 | 江苏飞搏软件股份有限公司 | 一种负载均衡的分布式大数据爬虫系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108834281A (zh) * | 2018-07-05 | 2018-11-16 | 常州市武进区半导体照明应用技术研究院 | 路灯系统的策略控制方法 |
CN108834281B (zh) * | 2018-07-05 | 2019-09-13 | 常州市武进区半导体照明应用技术研究院 | 路灯系统的策略控制方法 |
CN110189189A (zh) * | 2019-04-19 | 2019-08-30 | 平安科技(深圳)有限公司 | 一站式网络购物引导方法、装置、计算机设备和存储介质 |
CN110209909A (zh) * | 2019-04-19 | 2019-09-06 | 平安科技(深圳)有限公司 | 数据爬取方法、装置、计算机设备和存储介质 |
WO2020211367A1 (zh) * | 2019-04-19 | 2020-10-22 | 平安科技(深圳)有限公司 | 数据爬取方法、装置、计算机设备和存储介质 |
CN111339388A (zh) * | 2019-06-13 | 2020-06-26 | 海通证券股份有限公司 | 一种信息爬取系统 |
CN110297962A (zh) * | 2019-06-28 | 2019-10-01 | 北京金山安全软件有限公司 | 网站资源的爬取方法、装置、系统和计算机设备 |
CN110765334A (zh) * | 2019-09-10 | 2020-02-07 | 北京字节跳动网络技术有限公司 | 数据抓取方法、系统、介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107729508A (zh) | 信息爬取方法与装置 | |
CN104731971B (zh) | 一种校园个性化掌上服务及用户行为习惯分析的实现方法 | |
CN109684370A (zh) | 日志数据处理方法、系统、设备及存储介质 | |
CN104951539B (zh) | 互联网数据中心有害信息监测系统 | |
WO2017025056A1 (zh) | 通过软件开发工具包实现数据跟踪的方法及系统 | |
CN109479061A (zh) | 遵从性违反检测 | |
CN110287097A (zh) | 批量测试方法、装置及计算机可读存储介质 | |
CN110825956A (zh) | 一种信息流推荐方法、装置、计算机设备及存储介质 | |
CN108369600A (zh) | web浏览器扩展 | |
CN104598570B (zh) | 资源的抓取方法及装置 | |
US10990359B2 (en) | Use and advancements of assistive technology in automation for the visually-impaired workforce | |
US20200050706A1 (en) | Autodidactic phenological data collection and verification | |
CN107329748A (zh) | Api开发管理方法和系统以及服务器和计算机可读存储介质 | |
CN109328344A (zh) | 文件系统映像处理系统 | |
CN111797297B (zh) | 页面数据处理方法、装置、计算机设备及存储介质 | |
CN105354189A (zh) | 搜寻应用软件的方法及其系统 | |
Kaur et al. | Get Twitter information: A collaborative Android application for big data analysis | |
CN104839962B (zh) | 一种智能钱包及其信息处理方法和装置 | |
CN115794545A (zh) | 运维数据的自动化处理方法及其相关设备 | |
CN104660697B (zh) | 基于Kepler科学工作流传感网服务组合方法 | |
US10506025B2 (en) | Modifying document metadata with integrated cloud services | |
Idate et al. | Context-based aspect-oriented requirement engineering model | |
Kim et al. | SPMgr: Dynamic workflow manager for sampling and filtering data streams over Apache Storm | |
CN104636372B (zh) | 基于表格实现大数据量处理的方法及装置 | |
CN112288133A (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 | ||
CB02 | Change of applicant information |
Address after: Room 221, 2nd floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone, 100176 Applicant after: Jingdong Digital Technology Holding Co., Ltd. Address before: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone Applicant before: Beijing Jingdong Financial Technology Holding Co., Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180223 |
|
RJ01 | Rejection of invention patent application after publication |