本发明涉及一种可配置的网络爬虫方法,属于网络安全。
背景技术:
1、网络爬虫是一种按照一定的规则、自动地抓取万维网信息的程序或者脚本。传统的网页信息爬取通常是采用硬编码的方式来实现的,即根据目标网页的爬取需求进行代码编写,形成爬虫程序或脚本,从而实现网页信息的获取。
2、但由于网络环境非常复杂,网络信息冗余量大,硬编码的方式给开发人员带来了繁琐的工作量,而且一旦目标网页或需求有所变化时,开发人员则需要对代码进行修改甚至重写,这些情况使得开发人员的工作量繁重,且代码开发的质量和工期都无法得到很好的保证,从而导致网页信息爬取效率低等问题。
技术实现思路
1、本发明的技术解决问题是:克服现有技术的不足,提出一种可配置的网络爬虫方法,该方法通过自定义配置文件的方式实现对网页信息的爬取,解决了在爬取网页时,使用传统的硬编码方式所带来的编码复杂、修改代码繁琐等效率低、开发周期和质量不易保证的问题,以硬编码的方式实现网页信息爬取所存在的问题。
2、本发明的技术解决方案是:
3、一种可配置的网络爬虫方法,该方法步骤包括:
4、步骤1,在目标网页中,定位目标信息的位置信息;
5、步骤2,将步骤1获取的位置信息按照配置模板格式形成爬虫配置文件;
6、步骤3,解析与验证步骤2中形成的爬虫配置文件的有效性,如果有效进入步骤4,如果无效则丢弃无效的爬虫配置文件;
7、步骤4,根据爬虫配置文件的内容,爬取目标信息,并将目标信息存入指定的文件或者数据库表中。
8、所述步骤1中,位置信息包括网页页码、翻页方式、网页dom树路径、等待加载时间。
9、所述步骤2中,爬虫配置文件格式为yaml格式,内容包括:网页链接、字段名称、字段所在网页的dom树路径、网页页码、翻页方式、字段格式、字段筛选条件、重试次数、等待时间、存储方式、信息存储路径。
10、所述步骤3中,解析与验证爬虫配置文件的有效性是指对爬虫配置文件进行格式验证和内容验证。
11、所述格式验证是指验证爬虫配置文件的格式是否是符合yaml格式规范,配置字段层级是否和配置模板一致。
12、所述内容验证是指验证配置文件中必填字段是否填写以及字段内容是否符合规范,检查爬虫存储路径是否有效,如果采用普通磁盘存储,需要验证存储路径是否有效;如果采用数据库存储,需要测试数据库是否能够正常连接,相应的数据库表是否存在。
13、所述的步骤1中,目标网页格式是html格式,html中包括若干个的标签,这些标签作为html中最基本的单位,形式上由关键词和一对尖括号构成,如果html标签是成对出现的,则html标签包括开始标签和结束标签,目标信息则被写在两个标签中间;如果html标签是单独呈现的标签,目标信息则会在标签属性中直接赋值。
14、所述的步骤2中,配置模板是配置爬虫配置文件需要遵循的配置规范,包括配置格式规范、配置项、配置项之间关系。
15、所述的步骤2中,字段筛选条件通过dom路径中各个标签的属性来进行筛选。
16、有益效果
17、本发明提出了一种可配置的网络爬虫方法,以灵活的配置文件代替硬编码的方式,实现对网页信息的爬取,使得开发人员只需对配置文件进行编写或修改即可,省去了硬编码所带来的复杂的开发量以及后期维护的高成本,能够更高效率地满足网页信息的爬取需求。
1.一种可配置的网络爬虫方法,其特征在于该方法步骤包括:
2.根据权利要求1所述的一种可配置的网络爬虫方法,其特征在于:
3.根据权利要求1所述的一种可配置的网络爬虫方法,其特征在于:
4.根据权利要求1所述的一种可配置的网络爬虫方法,其特征在于:
5.根据权利要求4所述的一种可配置的网络爬虫方法,其特征在于:
6.根据权利要求4或5所述的一种可配置的网络爬虫方法,其特征在于:
7.根据权利要求1所述的一种可配置的网络爬虫方法,其特征在于:
8.根据权利要求1所述的一种可配置的网络爬虫方法,其特征在于:
9.根据权利要求1所述的一种可配置的网络爬虫方法,其特征在于: