CN110297962B - 网站资源的爬取方法、装置、系统和计算机设备 - Google Patents
网站资源的爬取方法、装置、系统和计算机设备 Download PDFInfo
- Publication number
- CN110297962B CN110297962B CN201910578458.8A CN201910578458A CN110297962B CN 110297962 B CN110297962 B CN 110297962B CN 201910578458 A CN201910578458 A CN 201910578458A CN 110297962 B CN110297962 B CN 110297962B
- Authority
- CN
- China
- Prior art keywords
- node
- control
- crawling
- user
- website
- 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.)
- Active
Links
Images
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/904—Browsing; Visualisation therefor
-
- 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 Transfer Between Computers (AREA)
Abstract
本发明公开了一种网站资源的爬取方法、装置、系统、计算机设备和存储介质。其中该方法包括:确定用户设计的流程图;其中,流程图中包括多个节点和节点间的连接关系,每个节点对应一个控件;基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则;将爬取配置规则发送给服务端,其中,爬取配置规则用于指示服务端向目标网站发送网络请求,并对目标网站返回的网站内容进行数据爬取;接收服务端返回的爬取结果信息并进行展示。该方法由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,并将爬取结果信息进行展示,可以方便用户预览爬取结果,提升用户体验。
Description
技术领域
本发明涉及计算机应用领域,尤其涉及一种网站资源的爬取方法、装置、系统、计算机设备和计算机可读存储介质。
背景技术
随着互联网技术的快速发展,互联网上存在海量的数据。搜索引擎为了方便为用户提供搜索功能服务,经常需要在互联网海量的数据中搜索并分析,爬虫技术的出现有效提高了搜索效率。爬虫技术主要通过对特定的资源进行标识、爬取以及清理等措施,将有效信息进行提取。随着时代的发展,爬虫技术也将得到飞速的发展,应用到更多的应用领域,提高数据的利用率,促进社会的发展。
如何配置准确的爬取规则对于准确的数据采集起着至关重要的决定性因素。相关技术中,对于爬取规则的配置主要通过在浏览器中直接配置,然后预览相应的爬取结果,存在爬取效率较低,且不易查找爬取失败的原因,对于信息较多的页面不易配置自己想要的信息等缺点,会降低研发人员的积极性,并且这种开发方式费时费力,严重降低了研发人员的开发效率。
发明内容
本发明的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本发明的第一个目的在于提出一种网站资源的爬取方法。该方法可以提高配置的灵活性和有效性,在保证准确性的前提下,能够有效的节省人力成本和时间成本,并由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,并将爬取结果信息进行展示,可以方便用户预览爬取结果,提升用户体验。
本发明的第二个目的在于提出另一种网站资源的爬取方法。
本发明的第三个目的在于提出一种网站资源的爬取装置。
本发明的第四个目的在于提出另一种网站资源的爬取装置。
本发明的第五个目的在于提出一种网站资源的爬取系统。
本发明的第六个目的在于提出一种计算机设备。
本发明的第七个目的在于提出一种计算机可读存储介质。
为上述目的,本发明第一方面实施例提出的网站资源的爬取方法,应用于WEB端,所述方法包括:确定用户设计的流程图;其中,所述流程图中包括多个节点和节点间的连接关系,每个所述节点对应一个控件;基于所述流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则;将所述爬取配置规则发送给服务端,其中,所述爬取配置规则用于指示所述服务端向所述目标网站发送网络请求,并对所述目标网站返回的网站内容进行数据爬取;接收所述服务端返回的爬取结果信息,并将所述爬取结果信息进行展示。
根据本发明的一个实施例,所述确定用户设计的流程图,包括:提供流程设计界面,其中,所述流程设计界面具有多个可用控件;接收所述用户从所述多个可用控件中选择的控件;接收所述用户输入的针对所述选择的控件间的连接关系;根据所述用户选择的控件和所述连接关系,生成所述用户设计的流程图。
根据本发明的一个实施例,所述多个可用控件包括开始控件、选择控件和保存控件;其中,所述开始控件,用于进行待爬取网站的URL地址的输入;所述选择控件,用于粗粒度选取待爬取区域;所述保存控件,用于细粒度的对待爬取信息的爬虫规则进行配置。
根据本发明的一个实施例,所述基于所述流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则,包括:获取所述用户对所述流程图中各节点所对应的控件的配置信息;根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则。
根据本发明的一个实施例,所述获取所述用户对所述流程图中各节点所对应的控件的配置信息,包括:提供配置界面;基于所述配置界面,接收所述用户对所述流程图中各节点所对应的控件的配置信息;其中,所述流程图中的根节点所对应的控件为所述开始控件,所述流程图中的叶子节点所对应的控件为所述保存控件。
根据本发明的一个实施例,当所述流程图中的根节点与叶子节点之间存在选择控件节点时,确定所述选择控件节点的父节点所对应的第一网站资源信息;将所述第一网站资源信息提供给所述用户,以使所述用户在所述第一网站资源信息上选择待爬取区域;在所述配置界面上显示所述用户选择的所述待爬取区域所对应的标识规则,并根据所述用户选择的所述待爬取区域所对应的标识规则确定所述选择控件节点的配置信息。
根据本发明的一个实施例,所述多个可用控件还包括:用于删除所述待爬取网站页面中的干扰因素的删除控件;其中,当所述流程图中的根节点与叶子节点之间存在删除控件节点时,确定所述删除控件节点的父节点所对应的第二网站资源信息;将所述第二网站资源信息提供给所述用户,以使所述用户在所述第二网站资源信息上选择待删除区域;在所述配置界面上显示所述用户选择的所述待删除区域所对应的标识规则,并根据所述用户选择的所述待删除区域所对应的标识规则确定所述删除控件节点的配置信息。
根据本发明的一个实施例,所述根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则,包括:确定所述流程图中的根节点,并确定所述流程图中的叶子节点;根据所述流程图中的根节点、叶子节点、各节点间连接关系、和所述各节点所对应的控件的配置信息,生成针对所述目标网站的爬取配置规则。
根据本发明的一个实施例,所述方法还包括:将所述流程图提供给所述用户;接收所述用户针对所述流程图中节点的选择操作;确定所述用户选择的节点所对应的控件,并将所述用户选择的节点所对应的控件发送给所述服务端,以使所述服务器从所述爬取配置规则中确定出所述用户选择的节点控件所对应的配置信息,并根据所述用户选择的节点控件所对应的配置信息,从所述目标网站中爬取对应内容;接收所述服务端从所述目标网站中爬取到的内容,并将所述爬取到的内容进行展示。
为达到上述目的,本发明第二方面实施例提出的网站资源的爬取方法,应用于服务端,所述方法包括:接收WEB端发送的爬取配置规则,其中,所述爬取配置规则是由所述WEB端基于用户设计的流程图中的节点所对应的控件而生成的;对所述爬取配置规则进行解析,以得到所述流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息;根据所述根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据所述URL地址进行网络请求;根据所述子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对所述待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息;将爬取结果信息发送给所述WEB端,以使所述WEB端将所述爬取结果信息进行展示。
为达到上述目的,本发明第三方面实施例提出的网站资源的爬取装置,应用于WEB端,所述装置包括:流程图确定模块,用于确定用户设计的流程图;其中,所述流程图中包括多个节点和节点间的连接关系,每个所述节点对应一个控件;爬取配置规则生成模块,用于基于所述流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则;发送模块,用于将所述爬取配置规则发送给服务端,其中,所述爬取配置规则用于指示所述服务端向所述目标网站发送网络请求,并对所述目标网站返回的网站内容进行数据爬取;爬取结果展示模块,用于接收所述服务端返回的爬取结果信息,并将所述爬取结果信息进行展示。
根据本发明的一个实施例,所述流程图确定模块具体用于:提供流程设计界面,其中,所述流程设计界面具有多个可用控件;接收所述用户从所述多个可用控件中选择的控件;接收所述用户输入的针对所述选择的控件间的连接关系;根据所述用户选择的控件和所述连接关系,生成所述用户设计的流程图。
根据本发明的一个实施例,所述多个可用控件包括开始控件、选择控件和保存控件;其中,所述开始控件,用于进行待爬取网站的URL地址的输入;所述选择控件,用于粗粒度选取待爬取区域;所述保存控件,用于细粒度的对待爬取信息的爬虫规则进行配置。
根据本发明的一个实施例,所述爬取配置规则生成模块包括:获取单元,用于获取所述用户对所述流程图中各节点所对应的控件的配置信息;生成单元,用于根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则。
根据本发明的一个实施例,所述获取单元具体用于:提供配置界面;基于所述配置界面,接收所述用户对所述流程图中各节点所对应的控件的配置信息;其中,所述流程图中的根节点所对应的控件为所述开始控件,所述流程图中的叶子节点所对应的控件为所述保存控件。
根据本发明的一个实施例,所述获取单元还用于:当所述流程图中的根节点与叶子节点之间存在选择控件节点时,确定所述选择控件节点的父节点所对应的第一网站资源信息;将所述第一网站资源信息提供给所述用户,以使所述用户在所述第一网站资源信息上选择待爬取区域;在所述配置界面上显示所述用户选择的所述待爬取区域所对应的标识规则,并根据所述用户选择的所述待爬取区域所对应的标识规则确定所述选择控件节点的配置信息。
根据本发明的一个实施例,所述多个可用控件还包括:用于删除所述待爬取网站页面中的干扰因素的删除控件;其中,所述获取单元还用于:当所述流程图中的根节点与叶子节点之间存在删除控件节点时,确定所述删除控件节点的父节点所对应的第二网站资源信息;将所述第二网站资源信息提供给所述用户,以使所述用户在所述第二网站资源信息上选择待删除区域;在所述配置界面上显示所述用户选择的所述待删除区域所对应的标识规则,并根据所述用户选择的所述待删除区域所对应的标识规则确定所述删除控件节点的配置信息。
根据本发明的一个实施例,所述生成单元具体用于:确定所述流程图中的根节点,并确定所述流程图中的叶子节点;根据所述流程图中的根节点、叶子节点、各节点间连接关系、和所述各节点所对应的控件的配置信息,生成针对所述目标网站的爬取配置规则。
根据本发明的一个实施例,所述装置还包括:流程图提供模块,用于将所述流程图提供给所述用户;控件确定模块,用于接收所述用户针对所述流程图中节点的选择操作,并确定所述用户选择的节点所对应的控件;控件发送模块,用于将所述用户选择的节点所对应的控件发送给所述服务端,以使所述服务器从所述爬取配置规则中确定出所述用户选择的节点控件所对应的配置信息,并根据所述用户选择的节点控件所对应的配置信息,从所述目标网站中爬取对应内容;其中,所述爬取结果展示模块,还用于接收所述服务端从所述目标网站中爬取到的内容,并将所述爬取到的内容进行展示。
为达到上述目的,本发明第四方面实施例提出的网站资源的爬取装置,应用于服务端,所述装置包括:爬取配置规则接收模块,用于接收WEB端发送的爬取配置规则,其中,所述爬取配置规则是由所述WEB端基于用户设计的流程图中的节点所对应的控件而生成的;解析模块,用于对所述爬取配置规则进行解析,以得到所述流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息;网络请求模块,用于根据所述根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据所述URL地址进行网络请求;数据爬取模块,用于根据所述子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对所述待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息;发送模块,用于将爬取结果信息发送给所述WEB端,以使所述WEB端将所述爬取结果信息进行展示。
为达到上述目的,本发明第五方面实施例提出的网站资源的爬取系统,包括:本发明第三方面实施例所述的网站资源的爬取装置;以及本发明第四方面实施例所述的网站资源的爬取装置。
为达到上述目的,本发明第六方面实施例提出的计算机设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上执行的计算机程序,所述处理器执行所述计算机程序时实现本发明第一方面实施例所述的网站资源的爬取方法,或者,实现本发明第二方面实施例所述的网站资源的爬取方法。
为达到上述目的,本发明第七方面实施例提出的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明第一方面实施例所述的网站资源的爬取方法,或者,实现本发明第二方面实施例所述的网站资源的爬取方法。
根据本发明实施例网站资源的爬取方法、装置、系统、计算机设备和存储介质,确定用户设计的流程图;其中,流程图中包括多个节点和节点间的连接关系,每个节点对应一个控件,并基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则,将爬取配置规则发送给服务端,其中,爬取配置规则用于指示服务端向目标网站发送网络请求,并对目标网站返回的网站内容进行数据爬取,并接收服务端返回的爬取结果信息,并将爬取结果信息进行展示。由此,可以使得用户根据自身需求设计对应流程图,基于流程图将配置爬虫规则的过程流程化,提高了配置的灵活性和有效性,在保证准确性的前提下,能够有效的节省人力成本和时间成本;另外,通过将基于流程图中的节点所对应的控件而生成的爬取配置规则发送给服务端,由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,提高爬取效率,并将爬取结果信息进行展示,可以方便用户预览图片、视频、文本等爬取结果,提升用户体验。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明一个实施例的网站资源的爬取方法的流程示意图;
图2是根据本发明实施例的流程设计界面的示例图;
图3是根据本发明实施例的网站资源的爬取方法的流程示意图;
图4是根据本发明另一个实施例的网站资源的爬取方法的流程示意图;
图5-图6是根据本发明一个实施例的网站资源的爬取方法的示例图;
图7-图9是根据本发明另一个实施例的网站资源的爬取方法的示例图;
图10是根据本发明一个实施例的网站资源的爬取装置的结构示意图;
图11是根据本发明一个具体实施例的网站资源的爬取装置的结构示意图;
图12是根据本发明另一个具体实施例的网站资源的爬取装置的结构示意图;
图13是根据本发明又一个实施例的网站资源的爬取方法的流程示意图图;
图14是根据本发明又一个实施例的网站资源的爬取装置的结构示意图;
图15是根据本发明一个实施例的网站资源的爬取系统的结构示意图;
图16是根据本发明一个实施例的计算机设备的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的网站资源的爬取方法、装置、系统、计算机设备和计算机可读存储介质。
图1是根据本发明一个实施例的网站资源的爬取方法的流程示意图。需要说明的是,本发明实施例的网站资源的爬取方法可应用于WEB端。也就是说,本发明实施例的网站资源的爬取方法可从WEB端测进行描述。
如图1所示,该网站资源的爬取方法可以包括:
步骤110,确定用户设计的流程图;其中,流程图中包括多个节点和节点间的连接关系,每个节点对应一个控件。
需要说明的是,上述流程图是用户可以根据自己需求预先设计。作为一种示例,可向用户提供流程设计界面,其中,流程设计界面具有多个可用控件;基于该流程设计界面可接收用户从多个可用控件中选择的控件,并接收用户输入的针对选择的控件间的连接关系,根据用户选择的控件和连接关系,生成用户设计的流程图。
举例而言,如图2所示,可向用户提供流程设计界面,其中,该流程设计界面中可具有多个可用控件,用户可根据自己所要爬取资源需求在该流程设计界面上进行针对待爬取网站资源的流程图设计。例如,可通过该流程设计界面来接收用户从该多个可用控件中选择的控件,并接收该用户输入的针对该选择的控件间的连接关系,进而可根据该用户选择的控件和该连接关系生成所述用户设计的流程图。
在本发明的一个实施例中,所述多个可用控件包括开始控件、选择控件和保存控件。其中,开始控件的功能主要是进行待爬取网站的URL地址的输入;选择控件的功能主要是粗粒度选取待爬取区域的一部分,以去除其他区域的干扰对待爬取信息,或者先粗粒度的细化待爬取区域,以便后面更加准确的选取;保存控件的功能主要是细粒度的对待爬取信息进行选择,以进行待爬取信息的爬虫规则的配置。
也就是说,选择控件是粗粒度选取待爬取区域的一部分,以去除其他区域对待爬取信息的干扰,而保存控件与选择控件类似,是细粒度的进行待爬取信息的配置。举例而言,爬取一个新闻页面,页面中有导航栏,新闻内容,评论等等内容,要爬取标题和正文,在用户设计流程图时,可以用选择控件先将新闻内容选出来,去掉导航栏等影响因素,然后在此基础上,利用保存控件进行标题和正文的配置。
步骤120,基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则。
可选地,通过用户对流程图中各节点所对应的控件进行爬取规则的配置,之后,可依据流程图中各节点所对应控件的配置信息和流程图中各节点间的连接关系,生成针对目标网站的爬取配置规则。作为一种示例,如图3所示,所述基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则的具体实现过程可包括以下步骤:
步骤121,获取用户对流程图中各节点所对应的控件的配置信息。
可选地,提供配置界面,基于该配置界面,接收该用户对流程图中各节点所对应的控件的配置信息,从而可以获得该用户对流程图中各节点所对应的控件的配置信息。其中,在本发明的实施例中,流程图中的根节点所对应的控件为用户所选择的开始控件,流程图中的叶子节点所对应的控件为用户所选择的保存控件。
举例而言,如图2所示,可向用户提供配置界面,当用户点击(如双击)如图2所示的流程设计界面中用户所设计的流程图中的某个节点控件时,可在配置界面提供针对该节点控件的配置规则的操作区域,用户可通过自身需求在该操作区域对该节点控件进行配置规则的增加、展示和修改等,从而通过该配置界面即可获得用户对该节点控件的配置信息。例如,当用户双击该流程图中的根节点所对应的控件(即开始控件)时,用户可将待爬取网站的URL地址输入至该配置界面的操作区域并进行保存,以完成对该开始控件节点的配置信息的配置。
又如,当该流程图中的根节点与叶子节点之间存在选择控件节点时,确定该选择控件节点的父节点所对应的第一网站资源信息,并将该第一网站资源信息提供给该用户,以使该用户利用鼠标点选的方式在该第一网站资源信息上粗粒度的待爬取区域;在该配置界面上显示该用户选择的该待爬取区域所对应的标识规则,此时用户可对该标识规则进行相应的确认与修改,并将该用户选择的该待爬取区域所对应的标识规则确定为该选择控件节点的配置信息。
举例而言,如图5所示,以爬取某网站A的“涨幅榜信息”和“24小时成交额”信息为例:第一步,用户可双击流程图中根节点所对应的控件(即开始控件),并在该配置界面中的操作区域输入该网站A的URL地址并保存,以完成对该开始控件节点的配置信息的配置;第二步,用户双击流程图中的根节点与叶子节点之间选择控件节点,例如,用户先双击如图5所示左边的选择控件节点以实现“涨幅榜”信息所在爬取区域的选取,即此时可先确定该选择控件节点的父节点(即开始控件节点)所对应的第一网站资源信息(即网站A的资源信息),并将该第一网站资源信息提供给该用户。如图5所示,可将该第一网站资源信息在预览模块进行展示以方便用户查看和操作,比如,用户选中该选择控件节点时,用户可利用鼠标点选的方式在该第一网站资源信息上粗粒度的选取待爬取区域,其中,预览模块中所展示的网页页面内容可随着用户的鼠标点选而进行高亮显示。在该配置界面上可显示该用户选取的该待爬取区域所对应的标识规则(如Xpath规则、CSS规则等),并将该用户选取的该待爬取区域所对应的标识规则确定为该选择控件节点的配置信息,此时预览模块中展示用户通过选择控件节点所选取的待爬取区域,此时用户可点击与该选择控件节点所对应的叶子节点(即保存控件节点),并利用鼠标点选的方式在所述所选取的待爬取区域上进行细粒度的选取,并将选取的内容作为待爬取信息,在配置界面上显示用户此时选取的待爬取信息所对应的标识规则,进而将该选取的待爬取信息所对应的标识规则确定为该保存控件节点的配置信息。又如,用户双击如图5所示右边的选择控件节点和与其连接的保存控件节点,以实现“24小时成交额”信息的爬取规则的配置,该配置过程与上述左边的选择控件节点的配置类似,在此不再赘述。
作为一种示例,所述多个可用控件还包括:删除控件。其中,该删除控件的功能主要是删除待爬取网站页面中的干扰因素,以便提高爬取功率。其中,在本发明的实施例中,当该流程图中的根节点与叶子节点之间存在删除控件节点时,确定该删除控件节点的父节点所对应的第二网站资源信息,并将该第二网站资源信息提供给该用户,以使该用户利用鼠标点选的方式在该第二网站资源信息上选择待删除区域;在该配置界面上显示该用户选择的该待删除区域所对应的标识规则,并将该用户选择的该待删除区域所对应的标识规则确定为该删除控件节点的配置信息。
举例而言,如图7所示,以爬取某网站B的正文信息为例,由于该网站B中存在大量图片等干扰因素,若想爬取正文,用户在设计流程图时若在流程图中使用选择控件实现通过直接选择正文的段落的方式来爬取正文,则图片位置的干扰文字会影响整篇文章的准确性,若使用选择控件通过一段正文的选取方式来配置爬取规则,则费时费力,且生成的配置规则不适用于其他同样文章,因为文章的段落一般不同,相同类型的例如广告,文章,视频等都会影响待爬取元素的准确性。因此,用户在设计流程图时使用了删除控件,通过该删除控件实现网页中干扰因素的删除配置。例如,用户设计了如图7所示的流程图,用户对该流程图中的各节点控件进行配置信息的配置时,第一步,用户可双击流程图中根节点所对应的控件(即开始控件),并在该配置界面中的操作区域输入该网站B的URL地址并保存,以完成对该开始控件节点的配置信息的配置;第二步,用户双击流程图中的删除控件节点,此时可确定该删除控件节点的父节点所对应的第二网站资源信息(即网站B的资源信息),并将该第二网站资源信息提供给该用户,如图7所示,可将该第二网站资源信息在预览模块进行展示以方便用户查看和操作,比如,用户选中该删除控件节点时,用户可利用鼠标点选的方式在该第二网站资源信息上选取待删除的图片等干扰因素,其中,预览模块中所展示的网页页面内容可随着用户的鼠标点选而进行高亮显示。在该配置界面上显示该用户选择的该待删除的图片等所对应的标识规则(如Xpath规则、CSS规则等),并将该用户选取的待删除的图片等所对应的标识规则确定为该删除控件节点的配置信息;第三步,双击删除控件节点所对应的叶子节点(即保存控件节点),用户可利用鼠标点选的方式在上述开始控件节点以及删除控件节点的配置信息基础上,对待爬取的正文内容进行选择,然后将该用户此时选取的待爬取信息所对应的标识规则确定为该保存控件节点的配置信息。
需要说明的是,在本发明的实施例中,流程图中控件间的连接关系可通过有向连接线来表示。流程图中的每一条连接线都是表示进行数据的传递。例如将选择控件添加到开始控件的后方,将保存控件添加到选择控件的后方,选择控件的输入值即原始网页的数据,它的输出值就是利用选择控件进行特定区域的选取之后的数据。然后可以在此基础上进行选取,方便去取其他干扰因素的干扰。由此,通过点选的方式进行选择以生成爬虫的配置规则,可以避免查看源码,可以提高研发效率。
步骤122,根据流程图中各节点所对应的控件的配置信息和节点顺序,生成针对目标网站的爬取配置规则。
可选地,确定该流程图中的根节点,并确定该流程图中的叶子节点,并根据该流程图中的根节点、叶子节点、节点顺序(即各节点间连接关系)、和该各节点所对应的控件的配置信息,生成针对该目标网站的爬取配置规则。
例如,可采用遍历方式遍历该流程图中的各个节点,确定该流程图中根节点与叶子节点之间的至少一个路径,并将每个路径上的节点所对应的控件的配置信息进行组合以生成该每个路径的爬取规则,将每个路径的爬取规则确定为针对所述目标网站的爬取配置规则。例如,如图5所示的流程图为例,可根据该流程图中各节点所对应的控件的配置信息和节点顺序,确定出该流程图中根节点与叶子节点之间的存在两个路径,将这两个路径上的节点所对应的控件的配置信息进行组合以生成该两个路径的爬取规则,进而得到针对所述目标网站的爬取配置规则。
步骤130,将爬取配置规则发送给服务端,其中,爬取配置规则用于指示服务端向目标网站发送网络请求,并对目标网站返回的网站内容进行数据爬取。
具体地,可将该目标网站的爬取配置规则发送给服务端。服务端可对该目标网站的爬取配置规则进行解析,得到该目标网站的URL地址以及用户配置的待爬取资源信息的配置信息,先根据该URL地址向该目标网站发送网络请求,并接收该目标网站返回的网站页面内容,之后,可根据该用户配置的待爬取资源信息的配置信息对返回的网站内容进行数据爬取,以得到对应的爬取结果信息,并将得到的爬取结果信息返回给WEB端。
步骤140,接收服务端返回的爬取结果信息,并将爬取结果信息进行展示。
可选地,WEB端接收服务端返回的爬取结果信息,并将该服务端返回的爬取结果信息在预览模块上进行展示。由此,可方便用户预览图片、视频、文本等爬取结果,提升了用户体验。
根据本发明实施例的网站资源的爬取方法,确定用户设计的流程图;其中,流程图中包括多个节点和节点间的连接关系,每个节点对应一个控件,并基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则,将爬取配置规则发送给服务端,其中,爬取配置规则用于指示服务端向目标网站发送网络请求,并对目标网站返回的网站内容进行数据爬取,并接收服务端返回的爬取结果信息,并将爬取结果信息进行展示。该方法可以使得用户根据自身需求设计对应流程图,基于流程图将配置爬虫规则的过程流程化,提高了配置的灵活性和有效性,在保证准确性的前提下,能够有效的节省人力成本和时间成本;另外,通过将基于流程图中的节点所对应的控件而生成的爬取配置规则发送给服务端,由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,提高爬取效率,并将爬取结果信息进行展示,可以方便用户预览图片、视频、文本等爬取结果,提升用户体验。
为了进一步提升用户体验,方便用户对爬取过程的预览,方便定位问题,可选地,在本发明的一个实施例中,如图4所示,该网站资源的爬取方法还可包括:
步骤410,将该流程图提供给该用户。
例如,在用户对自身设计的流程图中各节点所对应的配置规则的配置过程中,可将该流程图在流程设计界面上进行展示,以将该流程图提供给用户,以便用户根据该流程图中的各节点以选择查看某个节点所对应的爬取结果。
步骤420,接收该用户针对该流程图中节点的选择操作。
步骤430,确定该用户选择的节点所对应的控件,并将该用户选择的节点所对应的控件发送给该服务端,以使该服务器从该爬取配置规则中确定出该用户选择的节点控件所对应的配置信息,并根据该用户选择的节点控件所对应的配置信息,从该目标网站中爬取对应内容。
例如,以如图5所示的流程图为例,假设确定出用户选择了流程图左边的保存控件节点时,可将该用户选择的节点所对应的控件发送给该服务端,以使该服务器从该爬取配置规则中确定出该用户选择的节点控件所对应的配置信息(如网站A中“涨幅榜”信息对应的配置信息),并根据该用户选择的节点控件所对应的配置信息,从该网站A爬取“涨幅榜”信息。
又如,如图5所示的流程图为例,假设确定出用户选择了流程图中根节点(即开始控件节点)时,可将该用户选择的节点所对应的控件发送给该服务端,以使该服务器从该爬取配置规则中确定出该用户选择的节点控件所对应的配置信息(如网站A页面资源的配置信息),并根据该用户选择的节点控件所对应的配置信息从该网站A中爬取该网站A页面信息。
步骤440,接收该服务端从该目标网站中爬取到的内容,并将该爬取到的内容进行展示。
例如,如图5所示的流程图为例,假设确定出用户选择了流程图中根节点(即开始控件节点)时,可从爬取配置规则中确定出该节点控件所对应的配置信息为网站A的URL地址,并根据该URL地址爬取到该网站A页面资源,并将该网站A页面资源通过预览模块展现给用户。又如,以如图6所示的流程图为例,假设确定出用户选择了流程图左边的保存控件节点时,可从爬取配置规则中确定出该节点控件所对应的配置信息为网站A中“涨幅榜”信息的配置规则,根据该配置规则可从网站A中爬取到该“涨幅榜”信息,并将该“涨幅榜”信息通过预览模块展现给用户。
由此,基于用户对流程图中各节点控件的选择,可将用户选择的节点控件所对应的爬取内容提供给用户,即用户可以看到流程图中各节点控件的输出值,支持爬取过程的预览,方便定位问题,并利于配置准确的爬取规则。
为了方便本领域技术人员能够更加清楚地了解本发明,下面将举例说明。
举例而言,如图5-图6所示,以爬取某网站A的涨幅榜信息、24小时成交额信息为例:在确定用户设计的流程图之后,可基于用户对流程图中各节点控件所对应的爬虫规则进行配置。例如,第一步:用户可对流程图中根节点(即开始控件节点)进行配置,如在配置界面中的操作区域输入网站A的URL地址,以配置该开始控件节点的爬虫规则,以使后台服务端根据该URL地址发起网络请求;第二步,分别对流程图中左右两边的选择控件节点进行爬虫规则的配置:首先对左边选择控件节点和其连接的保存控件节点进行配置,即将该选择控件节点的父节点(即开始控件节点)的网站资源信息(即网站A的页面资源)展现在预览模块,用户通过鼠标点选的方式在预览模块中选择“涨幅榜”,在配置界面中展示该“涨幅榜”对应的配置规则(如该“涨幅榜”所对应的Xpath规则);之后对右边选择控件节点和其连接的保存控件节点进行配置,即将该选择控件节点的父节点(即开始控件节点)的网站资源信息(即网站A的页面资源)展现在预览模块,用户通过鼠标点选的方式在预览模块中选择“24小时成交额信息”,在配置界面中展示该“24小时成交额信息”对应的配置规则(如该“24小时成交额信息”所对应的Xpath规则)。基于如图5-图6所示的流程图中的节点所对应的控件的配置规则,生成针对该网站A的爬取配置规则,并将该爬取配置规则发送给服务端,以使服务端根据该爬取配置规则对网站A中的“涨幅榜”和“24小时成交额信息”资源信息进行爬取,得到对应的爬取结果信息,并返回给WEB端。WEB接收到服务端返回的网站A中的“涨幅榜”和“24小时成交额信息”资源信息,并将“涨幅榜”和“24小时成交额信息”资源信息在预览模块上进行展示。
又如,如图7-图9所示,以爬取某网站B的文章数据为例:在确定用户设计的流程图之后,可基于用户对流程图中各节点控件所对应的爬虫规则进行配置。例如,第一步:用户可对流程图中根节点(即开始控件节点)进行配置,如在配置界面中的操作区域输入网站B的URL地址,以配置该开始控件节点的爬虫规则,以使后台服务端根据该URL地址发起网络请求,获取相应的html元素并在预览模块进行展示,可以看出该网站文章中含有图片等干扰因素,若想爬取正文,若通过直接选择正文的段落,则图片位置的干扰文字会影响整片文章的准确性,若通过一段段正文的选取则费时费力,且生成的规则不适用于其他同样文章,因为文章的段落一般不同,相同类型的例如广告,文章,视频等都会影响待爬取元素的准确性。针对上面的选取情况,在第二步中,可以利用流程图中的删除控件节点配置待删除的图片等干扰元素的配置规则,即用户可利用鼠标点选的方式配置该删除图片等干扰元素的爬虫规则(如该“待删除图片”所对应的Xpath规则),并利用鼠标点选的方式在上述开始控件节点以及删除控件节点的爬虫规则基础上,对待爬取的正文内容进行选择,然后将该用户此时选取的待爬取信息所对应的标识规则确定为该保存控件节点的配置规则。基于图7-图9所示的流程图中的节点所对应控件的配置规则,生成针对网站B的爬取配置规则,并将该爬取配置规则发送给服务端,以使服务端根据该爬取配置规则将该网站B中的图片进行删除,以爬取到该网站B中文章信息的正文,从而得到对应的爬取结果信息。
需要说明的是,在本发明的实施例中,整个流程图是一种配置规则,对于同一个需求,可以使用不同的流程图达到相同的目的,不同的组合生成的配置规则不同,可以自由设计定义,上述给出的示例仅是为了方便本领域技术人员的理解而给出的示例,并不能作为本发明的具体限定。
还需要说明的是,在对流程图中的各节点所对应的选择控件、删除控件以及保存控件都是可扩展的,上述给出的示例中都是Xpath选择控件,还可以扩展CSS选择控件,删除控件也分为Xpath删除控件和CSS保存控件等。也就是说,整个流程图是用户自由生成的,除了开始通过开始控件,后面可以自由由用户添加选择控件,删除控件,保存控件,在选择控件,删除控件后面也可以继续添加控件,除了保存控件后面不可继续添加之外,可以不止添加一个,可以添加多个。
可以理解,上述图5-图6、图7-图9所示,该WEB端可为用户提供预览模块、流程设计界面、解析模块和配置界面。其中,预览模块主要是进行网页页面的展示以及配置规则的高亮显示等;流程设计界面主要是将配置规则的过程流程化,解析模块的功能主要是将选择出的Xpath规则进行展示与预览,以方便后续的修改与调整;配置界面主要是对不同的配置规则的增加、展示、修改等功能。
与上述几种实施例提供的网站资源的爬取方法相对应,本发明的一种实施例还提供一种网站资源的爬取装置,由于本发明实施例提供的网站资源的爬取装置与上述几种实施例提供的网站资源的爬取方法相对应,因此在前述网站资源的爬取方法的实施方式也适用于本实施例提供的网站资源的爬取装置,在本实施例中不再详细描述。图10是根据本发明一个实施例的网站资源的爬取装置的结构示意图。需要说明的是,本发明实施例的网站资源的爬取装置可应用于WEB端。如图10所示,该网站资源的爬取装置700可以包括:流程图确定模块710、爬取配置规则生成模块720、发送模块730和爬取结果展示模块740。
具体地,流程图确定模块710用于确定用户设计的流程图;其中,流程图中包括多个节点和节点间的连接关系,每个节点对应一个控件。作为一种示例,流程图确定模块710提供流程设计界面,其中,所述流程设计界面具有多个可用控件,并接收所述用户从所述多个可用控件中选择的控件,并接收所述用户输入的针对所述选择的控件间的连接关系,根据所述用户选择的控件和所述连接关系,生成所述用户设计的流程图。
在本发明的一个实施例中,多个可用控件包括:开始控件、选择控件和保存控件;其中,开始控件,用于进行待爬取网站的URL地址的输入;选择控件,用于选择待爬取区域;保存控件,用于细粒度的对待爬取信息的爬虫规则进行配置。
爬取配置规则生成模块720用于基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则。作为一种示例,如图11所示,爬取配置规则生成模块720可包括:获取单元721和生成单元722。其中,获取单元721用于获取所述用户对所述流程图中各节点所对应的控件的配置信息;生成单元722用于根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则。
在本发明的一个实施例中,获取单元721可提供配置界面,基于所述配置界面,接收所述用户对所述流程图中各节点所对应的控件的配置信息;其中,所述流程图中的根节点所对应的控件为所述开始控件,所述流程图中的叶子节点所对应的控件为所述保存控件。
作为一种示例,获取单元721还可用于:当所述流程图中的根节点与叶子节点之间存在选择控件节点时,确定所述选择控件节点的父节点所对应的第一网站资源信息;将所述第一网站资源信息提供给所述用户,以使所述用户利用鼠标点选的方式在所述第一网站资源信息上选择待爬取区域;在所述配置界面上显示所述用户选择的所述待爬取区域所对应的标识规则,并将所述用户选择的所述待爬取区域所对应的标识规则确定为所述选择控件节点的配置信息。
在本发明的一个实施例中,多个可用控件还包括:用于删除所述待爬取网站页面中的干扰因素的删除控件。其中,在本发明的实施例中,获取单元721还可用于:当所述流程图中的根节点与叶子节点之间存在删除控件节点时,确定所述删除控件节点的父节点所对应的第二网站资源信息;将所述第二网站资源信息提供给所述用户,以使所述用户利用鼠标点选的方式在所述第二网站资源信息上选择待删除区域;在所述配置界面上显示所述用户选择的所述待删除区域所对应的标识规则,并将所述用户选择的所述待删除区域所对应的标识规则确定为所述删除控件节点的配置信息。
在本发明的一个实施例中,生成单元722根据流程图中各节点所对应的控件的配置信息和流程图,生成针对目标网站的爬取配置规则的具体实现过程可如下:确定所述流程图中的根节点,并确定所述流程图中的叶子节点;根据所述流程图中的根节点、叶子节点、各节点间连接关系、和所述各节点所对应的控件的配置信息,生成针对所述目标网站的爬取配置规则。
发送模块730用于将爬取配置规则发送给服务端,其中,爬取配置规则用于指示服务端向目标网站发送网络请求,并对目标网站返回的网站内容进行数据爬取。
爬取结果展示模块740用于接收服务端返回的爬取结果信息,并将爬取结果信息进行展示。
为了进一步提升用户体验,方便用户对爬取过程的预览,方便定位问题,可选地,在本发明的一个实施例中,如图12所示,该网站资源的爬取装置700还可包括:流程图提供模块750、控件确定模块760和控件发送模块770。其中,流程图提供模块750用于将所述流程图提供给所述用户;控件确定模块760用于接收所述用户针对所述流程图中节点的选择操作,并确定所述用户选择的节点所对应的控件;控件发送模块770用于将所述用户选择的节点所对应的控件发送给所述服务端,以使所述服务器从所述爬取配置规则中确定出所述用户选择的节点控件所对应的配置信息,并根据所述用户选择的节点控件所对应的配置信息,从所述目标网站中爬取对应内容;爬取结果展示模块740还用于接收所述服务端从所述目标网站中爬取到的内容,并将所述爬取到的内容进行展示。
根据本发明实施例的网站资源的爬取装置,确定用户设计的流程图;其中,流程图中包括多个节点和节点间的连接关系,每个节点对应一个控件,并基于流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则,将爬取配置规则发送给服务端,其中,爬取配置规则用于指示服务端向目标网站发送网络请求,并对目标网站返回的网站内容进行数据爬取,并接收服务端返回的爬取结果信息,并将爬取结果信息进行展示。由此,可以使得用户根据自身需求设计对应流程图,基于流程图将配置爬虫规则的过程流程化,提高了配置的灵活性和有效性,在保证准确性的前提下,能够有效的节省人力成本和时间成本;另外,通过将基于流程图中的节点所对应的控件而生成的爬取配置规则发送给服务端,由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,提高爬取效率,并将爬取结果信息进行展示,可以方便用户预览图片、视频、文本等爬取结果,提升用户体验。
为了实现上述实施例,本发明还提出了另一种网站资源的爬取方法。
图13是根据本发明又一个实施例的网站资源的爬取方法的流程示意图图。需要说明的是,本发明实施例的网站资源的爬取方法可应用于服务端。如图13所示,该网站资源的爬取方法可以包括:
步骤1010,接收WEB端发送的爬取配置规则,其中,爬取配置规则是由WEB端基于用户设计的流程图中的节点所对应的控件而生成的。
步骤1020,对爬取配置规则进行解析,以得到流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息。
步骤1030,根据根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据URL地址进行网络请求。
步骤1040,根据子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息。
步骤1050,将爬取结果信息发送给WEB端,以使WEB端将爬取结果信息进行展示。
根据本发明实施例的网站资源的爬取方法,通过服务端接收WEB端发送的爬取配置规则,其中,爬取配置规则是由WEB端基于用户设计的流程图中的节点所对应的控件而生成的,并对爬取配置规则进行解析,以得到流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息,根据根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据URL地址进行网络请求,并根据子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息,以及将爬取结果信息发送给WEB端,以使WEB端将爬取结果信息进行展示。由此,可以使得用户根据自身需求设计对应流程图,基于流程图将配置爬虫规则的过程流程化,提高了配置的灵活性和有效性,在保证准确性的前提下,能够有效的节省人力成本和时间成本;另外,通过将基于流程图中的节点所对应的控件而生成的爬取配置规则发送给服务端,由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,提高爬取效率,并将爬取结果信息进行展示,可以方便用户预览图片、视频、文本等爬取结果,提升用户体验。
与上述几种实施例(即图13所示的实施例)提供的网站资源的爬取方法相对应,本发明的一种实施例还提供一种网站资源的爬取装置,由于本发明实施例提供的网站资源的爬取装置与上述几种实施例(即图13所示的实施例)提供的网站资源的爬取方法相对应,因此在前述网站资源的爬取方法的实施方式也适用于本实施例提供的网站资源的爬取装置,在本实施例中不再详细描述。图14是根据本发明又一个实施例的网站资源的爬取装置的结构示意图。需要说明的是,本发明实施例的网站资源的爬取装置可应用于服务端上。如图14所示,该网站资源的爬取装置1100可以包括:爬取配置规则接收模块1110、解析模块1120、网络请求模块1130、数据爬取模块1140和发送模块1150。
具体地,爬取配置规则接收模块1110用于接收WEB端发送的爬取配置规则,其中,爬取配置规则是由WEB端基于用户设计的流程图中的节点所对应的控件而生成的。
解析模块1120用于对爬取配置规则进行解析,以得到流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息。
网络请求模块1130用于根据根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据URL地址进行网络请求。
数据爬取模块1140用于根据子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息。
发送模块1150用于将爬取结果信息发送给WEB端,以使WEB端将爬取结果信息进行展示。
根据本发明实施例的网站资源的爬取装置,可以使得用户根据自身需求设计对应流程图,基于流程图将配置爬虫规则的过程流程化,提高了配置的灵活性和有效性,在保证准确性的前提下,能够有效的节省人力成本和时间成本;另外,通过将基于流程图中的节点所对应的控件而生成的爬取配置规则发送给服务端,由服务端对该爬取配置规则进行解析,并发起网络请求,能够有效的避免IP被封,提高爬取效率,并将爬取结果信息进行展示,可以方便用户预览图片、视频、文本等爬取结果,提升用户体验。
为了实现上述实施例,本发明还提出了一种网站资源的爬取系统。
图15是根据本发明一个实施例的网站资源的爬取系统的结构示意图。如图15所示,该网站资源的爬取系统1200可以包括:网站资源的爬取装置700和网站资源的爬取装置1100。其中,该网站资源的爬取装置700可被配置于WEB端。网站资源的爬取装置1100可配置于服务端。网站资源的爬取装置700的功能可参考上述图10至图12所示的网站资源的爬取装置的具体功能描述。网站资源的爬取装置1100的功能可参考上述图14所述的网站资源的爬取装置的具体功能描述。由此,通过采用前后端结合的方式,通过前端配置相应的规则,利用配置好的规则,由服务端发起网络请求,并通过服务端负责数据的解析,将服务端将解析好的数据以及过程信息返回给前端,由前端展示响应的结果。
为了实现上述实施例,本发明还提出了一种计算机设备。
图16是根据本发明一个实施例的计算机设备的结构示意图。如图16所示,该计算机设备1300可包括:存储器1310、处理器1320及存储在存储器1310上并可在处理器1320上执行的计算机程序1330,处理器1320执行计算机程序1330时实现上述图1-图4所示任一个实施例所示的网站资源的爬取方法。
为了实现上述实施例,本发明还提出了另一种计算机设备,该计算机设备可包括:存储器、处理器及存储在存储器上并可在处理器上执行的计算机程序,处理器执行计算机程序时实现上述图13所示实施例所述的网站资源的爬取方法。
为了实现上述实施例,本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述图1-图4所示任一个实施例所示的网站资源的爬取方法。
为了实现上述实施例,本发明还提出了另一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述图13所示实施例所示的网站资源的爬取方法。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程示意图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程示意图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (21)
1.一种网站资源的爬取方法,应用于WEB端,其特征在于,所述方法包括:
确定用户设计的流程图;其中,所述流程图中包括多个节点和节点间的连接关系,每个所述节点对应一个控件;
基于所述流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则;
将所述爬取配置规则发送给服务端,其中,所述爬取配置规则用于指示所述服务端向所述目标网站发送网络请求,并对所述目标网站返回的网站内容进行数据爬取;
接收所述服务端返回的爬取结果信息,并将所述爬取结果信息进行展示;
所述方法还包括:
将所述流程图提供给所述用户;
接收所述用户针对所述流程图中节点的选择操作;
确定所述用户选择的节点所对应的控件,并将所述用户选择的节点所对应的控件发送给所述服务端,以使服务器从所述爬取配置规则中确定出所述用户选择的节点控件所对应的配置信息,并根据所述用户选择的节点控件所对应的配置信息,从所述目标网站中爬取对应内容;
接收所述服务端从所述目标网站中爬取到的内容,并将所述爬取到的内容进行展示。
2.根据权利要求1所述的方法,其特征在于,所述确定用户设计的流程图,包括:
提供流程设计界面,其中,所述流程设计界面具有多个可用控件;
接收所述用户从所述多个可用控件中选择的控件;
接收所述用户输入的针对所述选择的控件间的连接关系;
根据所述用户选择的控件和所述连接关系,生成所述用户设计的流程图。
3.根据权利要求2所述的方法,其特征在于,所述多个可用控件包括开始控件、选择控件和保存控件;其中,
所述开始控件,用于进行待爬取网站的URL地址的输入;
所述选择控件,用于粗粒度选取待爬取区域;
所述保存控件,用于细粒度的对待爬取信息的爬虫规则进行配置。
4.根据权利要求3所述的方法,其特征在于,所述基于所述流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则,包括:
获取所述用户对所述流程图中各节点所对应的控件的配置信息;
根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则。
5.根据权利要求4所述的方法,其特征在于,所述获取所述用户对所述流程图中各节点所对应的控件的配置信息,包括:
提供配置界面;
基于所述配置界面,接收所述用户对所述流程图中各节点所对应的控件的配置信息;其中,所述流程图中的根节点所对应的控件为所述开始控件,所述流程图中的叶子节点所对应的控件为所述保存控件。
6.根据权利要求5所述的方法,其特征在于,
当所述流程图中的根节点与叶子节点之间存在选择控件节点时,确定所述选择控件节点的父节点所对应的第一网站资源信息;
将所述第一网站资源信息提供给所述用户,以使所述用户在所述第一网站资源信息上选择待爬取区域;
在所述配置界面上显示所述用户选择的所述待爬取区域所对应的标识规则,并根据所述用户选择的所述待爬取区域所对应的标识规则确定所述选择控件节点的配置信息。
7.根据权利要求6所述的方法,其特征在于,所述多个可用控件还包括:用于删除所述待爬取区域中的干扰因素的删除控件;其中,
当所述流程图中的根节点与叶子节点之间存在删除控件节点时,确定所述删除控件节点的父节点所对应的第二网站资源信息;
将所述第二网站资源信息提供给所述用户,以使所述用户在所述第二网站资源信息上选择待删除区域;
在所述配置界面上显示所述用户选择的所述待删除区域所对应的标识规则,并根据所述用户选择的所述待删除区域所对应的标识规则确定所述删除控件节点的配置信息。
8.根据权利要求4所述的方法,其特征在于,所述根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则,包括:
确定所述流程图中的根节点和叶子节点;
根据所述流程图中的根节点、叶子节点、各节点间连接关系、和所述各节点所对应的控件的配置信息,生成针对所述目标网站的爬取配置规则。
9.一种网站资源的爬取方法,应用于服务端,其特征在于,所述方法包括:
接收WEB端发送的爬取配置规则,其中,所述爬取配置规则是由所述WEB端基于用户设计的流程图中的节点所对应的控件而生成的;
对所述爬取配置规则进行解析,以得到所述流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息;
根据所述根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据所述URL地址进行网络请求;
根据所述子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对所述待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息;
将爬取结果信息发送给所述WEB端,以使所述WEB端将所述爬取结果信息进行展示。
10.一种网站资源的爬取装置,应用于WEB端,其特征在于,所述装置包括:
流程图确定模块,用于确定用户设计的流程图;其中,所述流程图中包括多个节点和节点间的连接关系,每个所述节点对应一个控件;
爬取配置规则生成模块,用于基于所述流程图中的节点所对应的控件,生成针对目标网站的爬取配置规则;
发送模块,用于将所述爬取配置规则发送给服务端,其中,所述爬取配置规则用于指示所述服务端向所述目标网站发送网络请求,并对所述目标网站返回的网站内容进行数据爬取;
爬取结果展示模块,用于接收所述服务端返回的爬取结果信息,并将所述爬取结果信息进行展示;
所述装置还包括:
流程图提供模块,用于将所述流程图提供给所述用户;
控件确定模块,用于接收所述用户针对所述流程图中节点的选择操作,并确定所述用户选择的节点所对应的控件;
控件发送模块,用于将所述用户选择的节点所对应的控件发送给所述服务端,以使服务器从所述爬取配置规则中确定出所述用户选择的节点控件所对应的配置信息,并根据所述用户选择的节点控件所对应的配置信息,从所述目标网站中爬取对应内容;
其中,所述爬取结果展示模块,还用于接收所述服务端从所述目标网站中爬取到的内容,并将所述爬取到的内容进行展示。
11.根据权利要求10所述的装置,其特征在于,所述流程图确定模块具体用于:
提供流程设计界面,其中,所述流程设计界面具有多个可用控件;
接收所述用户从所述多个可用控件中选择的控件;
接收所述用户输入的针对所述选择的控件间的连接关系;
根据所述用户选择的控件和所述连接关系,生成所述用户设计的流程图。
12.根据权利要求11所述的装置,其特征在于,所述多个可用控件包括开始控件、选择控件和保存控件;其中,
所述开始控件,用于进行待爬取网站的URL地址的输入;
所述选择控件,用于粗粒度选取待爬取区域;
所述保存控件,用于细粒度的对待爬取信息的爬虫规则进行配置。
13.根据权利要求12所述的装置,其特征在于,所述爬取配置规则生成模块包括:
获取单元,用于获取所述用户对所述流程图中各节点所对应的控件的配置信息;
生成单元,用于根据所述流程图中各节点所对应的控件的配置信息和节点顺序,生成针对所述目标网站的爬取配置规则。
14.根据权利要求13所述的装置,其特征在于,所述获取单元具体用于:
提供配置界面;
基于所述配置界面,接收所述用户对所述流程图中各节点所对应的控件的配置信息;其中,所述流程图中的根节点所对应的控件为所述开始控件,所述流程图中的叶子节点所对应的控件为所述保存控件。
15.根据权利要求14所述的装置,其特征在于,所述获取单元还用于:
当所述流程图中的根节点与叶子节点之间存在选择控件节点时,确定所述选择控件节点的父节点所对应的第一网站资源信息;
将所述第一网站资源信息提供给所述用户,以使所述用户在所述第一网站资源信息上选择待爬取区域;
在所述配置界面上显示所述用户选择的所述待爬取区域所对应的标识规则,并根据所述用户选择的所述待爬取区域所对应的标识规则确定所述选择控件节点的配置信息。
16.根据权利要求15所述的装置,其特征在于,所述多个可用控件还包括:用于删除所述待爬取区域中的干扰因素的删除控件;其中,所述获取单元还用于:
当所述流程图中的根节点与叶子节点之间存在删除控件节点时,确定所述删除控件节点的父节点所对应的第二网站资源信息;
将所述第二网站资源信息提供给所述用户,以使所述用户在所述第二网站资源信息上选择待删除区域;
在所述配置界面上显示所述用户选择的所述待删除区域所对应的标识规则,并根据所述用户选择的所述待删除区域所对应的标识规则确定所述删除控件节点的配置信息。
17.根据权利要求13所述的装置,其特征在于,所述生成单元具体用于:
确定所述流程图中的根节点和叶子节点;
根据所述流程图中的根节点、叶子节点、各节点间连接关系、和所述各节点所对应的控件的配置信息,生成针对所述目标网站的爬取配置规则。
18.一种网站资源的爬取装置,应用于服务端,其特征在于,所述装置包括:
爬取配置规则接收模块,用于接收WEB端发送的爬取配置规则,其中,所述爬取配置规则是由所述WEB端基于用户设计的流程图中的节点所对应的控件而生成的;
解析模块,用于对所述爬取配置规则进行解析,以得到所述流程图中根节点控件所对应的配置信息、子节点控件所对应的配置信息和叶子节点控件所对应的配置信息;
网络请求模块,用于根据所述根节点控件所对应的配置信息确定出待爬取网站的URL地址,并根据所述URL地址进行网络请求;
数据爬取模块,用于根据所述子节点控件所对应的配置信息和叶子节点控件所对应的配置信息对所述待爬取网站返回的网站内容进行数据爬取,得到对应的爬取结果信息;
发送模块,用于将爬取结果信息发送给所述WEB端,以使所述WEB端将所述爬取结果信息进行展示。
19.一种网站资源的爬取系统,其特征在于,包括:
如权利要求10至17中任一项所述的网站资源的爬取装置;以及
如权利要求18所述的网站资源的爬取装置。
20.一种计算机设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8中任一项所述的网站资源的爬取方法,或者,实现如权利要求9所述的网站资源的爬取方法。
21.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的网站资源的爬取方法,或者,实现如权利要求9所述的网站资源的爬取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910578458.8A CN110297962B (zh) | 2019-06-28 | 2019-06-28 | 网站资源的爬取方法、装置、系统和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910578458.8A CN110297962B (zh) | 2019-06-28 | 2019-06-28 | 网站资源的爬取方法、装置、系统和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110297962A CN110297962A (zh) | 2019-10-01 |
CN110297962B true CN110297962B (zh) | 2021-08-24 |
Family
ID=68029460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910578458.8A Active CN110297962B (zh) | 2019-06-28 | 2019-06-28 | 网站资源的爬取方法、装置、系统和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110297962B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605764A (zh) * | 2013-11-26 | 2014-02-26 | Tcl集团股份有限公司 | 一种网络爬虫系统及网络爬虫多任务执行和调度方法 |
CN105243159A (zh) * | 2015-10-28 | 2016-01-13 | 福建亿榕信息技术有限公司 | 一种基于可视化脚本编辑器的分布式网络爬虫系统 |
CN107423382A (zh) * | 2017-07-13 | 2017-12-01 | 中国物品编码中心 | 网络爬取方法和装置 |
CN108491420A (zh) * | 2018-02-06 | 2018-09-04 | 平安科技(深圳)有限公司 | 网页爬取的配置方法、应用服务器及计算机可读存储介质 |
CN109408701A (zh) * | 2018-11-08 | 2019-03-01 | 网易(杭州)网络有限公司 | 一种网络爬虫爬取路径的展示方法和装置 |
CN109885744A (zh) * | 2019-01-07 | 2019-06-14 | 平安科技(深圳)有限公司 | 网页数据爬取方法、装置、系统、计算机设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7805426B2 (en) * | 2007-06-14 | 2010-09-28 | International Business Machines Corporation | Defining a web crawl space |
US9342630B2 (en) * | 2011-12-27 | 2016-05-17 | Infosys Limited | System and method for monitoring and analyzing social network databases |
CN106991144B (zh) * | 2017-03-22 | 2021-01-29 | 山东大学 | 一种定制数据爬取工作流的方法及系统 |
CN107729508A (zh) * | 2017-10-23 | 2018-02-23 | 北京京东金融科技控股有限公司 | 信息爬取方法与装置 |
CN108846630B (zh) * | 2018-05-25 | 2022-06-03 | 广州衡昊数据科技有限公司 | 一种资源控制系统及方法 |
US10296552B1 (en) * | 2018-06-30 | 2019-05-21 | FiaLEAF LIMITED | System and method for automated identification of internet advertising and creating rules for blocking of internet advertising |
CN108959539B (zh) * | 2018-06-30 | 2021-09-21 | 成都信息工程大学 | 一种基于规则可配置的网页数据解析方法 |
CN109271145B (zh) * | 2018-09-03 | 2021-12-14 | 科大国创软件股份有限公司 | 基于pythonQT及智能算法的快速规则定制方法 |
CN109657121A (zh) * | 2018-12-09 | 2019-04-19 | 佛山市金穗数据服务有限公司 | 一种基于网络爬虫的Web页面信息采集方法及装置 |
CN109815385A (zh) * | 2019-01-31 | 2019-05-28 | 无锡火球普惠信息科技有限公司 | 基于app客户端的爬虫及爬取方法 |
-
2019
- 2019-06-28 CN CN201910578458.8A patent/CN110297962B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605764A (zh) * | 2013-11-26 | 2014-02-26 | Tcl集团股份有限公司 | 一种网络爬虫系统及网络爬虫多任务执行和调度方法 |
CN105243159A (zh) * | 2015-10-28 | 2016-01-13 | 福建亿榕信息技术有限公司 | 一种基于可视化脚本编辑器的分布式网络爬虫系统 |
CN107423382A (zh) * | 2017-07-13 | 2017-12-01 | 中国物品编码中心 | 网络爬取方法和装置 |
CN108491420A (zh) * | 2018-02-06 | 2018-09-04 | 平安科技(深圳)有限公司 | 网页爬取的配置方法、应用服务器及计算机可读存储介质 |
CN109408701A (zh) * | 2018-11-08 | 2019-03-01 | 网易(杭州)网络有限公司 | 一种网络爬虫爬取路径的展示方法和装置 |
CN109885744A (zh) * | 2019-01-07 | 2019-06-14 | 平安科技(深圳)有限公司 | 网页数据爬取方法、装置、系统、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110297962A (zh) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220156451A1 (en) | Dynamic native content insertion | |
US9547717B2 (en) | Administration of search results | |
CN110297759B (zh) | 一种制作测试页面脚本的方法、装置、设备及存储介质 | |
US9330179B2 (en) | Configuring web crawler to extract web page information | |
CN102792244B (zh) | 用于增加浏览速度的预览功能 | |
US7801891B2 (en) | System and method for collecting user interest data | |
CN102043850B (zh) | 生成热力图的方法及设备 | |
JP5937274B2 (ja) | 電子書籍の提供方法、システム及びクラウドサーバ | |
CN104572777B (zh) | 基于UIWebView组件的网页加载方法及装置 | |
US20140380173A1 (en) | Method and system for web page commenting, browser and storage medium | |
CN102768683B (zh) | 一种图片信息的搜索方法及搜索装置 | |
WO2017124692A1 (zh) | 查找表单页面和目标页面转化关系的方法和装置 | |
CN106874502A (zh) | 一种视频搜索的方法、装置及终端 | |
US20130268314A1 (en) | Brand analysis using interactions with search result items | |
US8150878B1 (en) | Device method and computer program product for sharing web feeds | |
CN110287394B (zh) | 网站资源的爬取方法、装置、计算机设备和存储介质 | |
TWI519980B (zh) | 網頁顯示方法和裝置及電腦可讀取儲存介質 | |
CN113918789A (zh) | 一种web页面元素查找方法及装置与计算设备 | |
JP2008097259A (ja) | アクセス解析を利用した営業支援システム及び営業支援方法 | |
CN103793453A (zh) | 用于web导航跟踪的方法和系统 | |
CN110297962B (zh) | 网站资源的爬取方法、装置、系统和计算机设备 | |
KR20110086791A (ko) | 웹페이지에 대한 방문기록을 도식화하는 방법 및 시스템 그리고 상기 방문기록을 이용한 추가정보 제공 방법 및 시스템 | |
US8719416B1 (en) | Multiple subparts of a uniform resource locator | |
JP2019101889A (ja) | テスト実行装置及びプログラム | |
WO2016011699A1 (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 |