一种一步式采集互联网数据的方法
技术领域
本发明涉及信息检索
技术领域
,特别涉及一种一步式采集互联网数据的方法。背景技术
现代社会是一个高速发展的社会,随着计算机和信息技术的迅猛发展和普及应用,行业应用系统的规模迅速扩大,行业应用所产生的数据呈爆炸性增长,人们愈加认识到数据的重要性,数据这一概念已经引起了各行业从业者与用户的广泛关注。对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。而随着政府信息公开与企业数字化发展,大量有价值的数据都可以通过对互联网数据的采集来获取。
信息检索(Information Retrieval),通常指文本信息检索,包括信息的存储、组织、表现、查询、存取等各个方面,其核心为文本信息的索引和检索。从历史上看,信息检索经历了手工检索、计算机检索到目前网络化、智能化检索等多个发展阶段。信息检索的对象从相对封闭、稳定一致、由独立数据库集中管理的信息内容扩展到开放、动态、更新快、分布广泛、管理松散的Web内容;信息检索的用户也由原来的情报专业人员扩展到包括商务人员、管理人员、教师学生、各专业人士等在内的普通大众,他们对信息检索从结果到方式提出了更高、更多样化的要求。适应网络化、智能化以及个性化的需要是目前信息检索技术发展的新趋势。
近年来随着计算机网络的全面普及,多媒体信息检索发展很快。传统的数据采集技术一般不涉及对网站访问请求的人为变更,即不会根据采集需求人为修改请求访问参数,通常都是根据网站页面的默认显示形式去遍历网站进而获取全量目标数据。
由于目前各大网站的内容不断扩展、数据总量不断增大,按网站默认显示形式发送请求获取响应数据时所需的发送次数大幅增长。若数据采集程序仍按照网站既定的显示参数提取全量目标数据,则所需的采集用时、资源节点、处理加工等数据采集成本必定随之大幅上升。
基于上述情况,本发明提出了一种一步式采集互联网数据的方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的一步式采集互联网数据的方法。
本发明是通过如下技术方案实现的:
一种一步式采集互联网数据的方法,其特征在于:包括以下步骤:
步骤1:获取请求参数;
步骤2:对用于网站检索的请求参数进行自定义设定;
步骤3:通过自定义的请求参数对网站发送访问请求,得到与自定义的数据显示参数相符的响应信息;
步骤4:对网站数据进行一次性采集,获取全量数据;
步骤5:将得到检索结果信息做结构化处理,保存到数据库达到数据采集的目的。
所述步骤1中,通过浏览器开发者工具或数据抓包工具,对向目标网站发送的检索请求或翻页请求进行拦截,获取包括每页显示上限和当前页数在内的各个请求参数名称。
所述步骤2中,自定义的请求参数是指与需要采集的网站数据的显示形式有相关含义的数值,包括页数以及每页显示上限数。
所述步骤2中,对爬虫程序访问请求参数的数据显示上限和页数加以调整,设定大于或等于网站显示全部条数的显示上限数值,同时将页数设为1。
所述步骤3中,自定义设定显示上限和页数的值后,发送1次请求并获取网站响应数据,与网站对应网页的显示内容做对比,观察两者是否相符合;若相符,则跳转到步骤4进行一步式采集,若不相符,则结束访问,停止数据采集。
所述步骤3中的响应信息即为所需采集的全量目标数据。
对所述步骤4中获取的全量数据进行数据处理,提取目标字段,即可得到检索结果信息。
所述步骤5中,将得到检索结果信息做结构化处理,存入数据库,完成数据采集。
本发明的有益效果是:该一步式采集互联网数据的方法,脱离了网站自身的数据显示形式的限制,通过指定与数据显示相关的请求参数,从而一次性访问获取网站的全量目标数据,使访问请求次数降低为1次,采集用时更短,不占用采集资源节点,不仅避免了数据漏采,能够快速高效地取得数据,还简化或省略了爬虫程序的开发,也为后续数据存储和数据分析提供了便利。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1为本发明一步式采集互联网数据的方法示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明中的技术方案,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚,完整的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
该一步式采集互联网数据的方法,包括以下步骤:
步骤1:获取请求参数;
步骤2:对用于网站检索的请求参数进行自定义设定;
步骤3:通过自定义的请求参数对网站发送访问请求,得到与自定义的数据显示参数相符的响应信息;
步骤4:对网站数据进行一次性采集,获取全量数据;
步骤5:将得到检索结果信息做结构化处理,保存到数据库达到数据采集的目的。
所述步骤1中,通过浏览器开发者工具或数据抓包工具,对向目标网站发送的检索请求或翻页请求进行拦截,获取包括每页显示上限和当前页数在内的各个请求参数名称,如pageSize和pageNo等。
所述步骤2中,自定义的请求参数是指与需要采集的网站数据的显示形式有相关含义的数值,包括页数以及每页显示上限数。
所述步骤2中,对爬虫程序访问请求参数的数据显示上限和页数加以调整,设定大于或等于网站显示全部条数的显示上限数值,同时将页数设为1。
理论上每页显示上限的值应大于或等于目标数据的总量,可根据采集需求自行设定。例如某网站共20万条数据,默认每页显示10条共2万页。若将每页显示上限自定义为20000且页数为1,则发送1次检索请求就可获取全量数据。
所述步骤3中,自定义设定显示上限和页数的值后,发送1次请求并获取网站响应数据,与网站对应网页的显示内容做对比,观察两者是否相符合;若相符,则跳转到步骤4进行一步式采集,若不相符,则结束访问,停止数据采集。
例如某网站共20万条数据,默认每页显示10条共2万页。若将显示上限自定义为20000且页数为1,则发送1次检索请求后可获得总共20万条数据。抽检所得数据若与网站页面显示的内容相一致,则说明发明方法适用。
所述一次性请求即可获取全量数据是指获取网站公开显示的全量数据所需发送的访问请求次数仅需1次。
所述步骤3中的响应信息即为所需采集的全量目标数据。
对所述步骤4中获取的全量数据进行数据处理,提取目标字段,即可得到检索结果信息。
所述步骤5中,将得到检索结果信息做结构化处理,存入数据库,完成数据采集。
结构化信息是指信息经过分析后可分解成多个互相关联的组成部分,各组成部分间有明确的层次结构,其使用和维护通过数据库进行管理,并有一定的操作规范。结构化数据简单来的说就是数据库。结构化信息社会的特点就是,全社会经济文化活动,将会在各种信息的有序互动中完成,信息是结构化的,是有序的,是可以互动的。所述步骤5中,对全量数据进行结构化处理是指构建全量数据的层级结构,使其成为有序的结构化信息。
与现有技术相比,该一步式采集互联网数据的方法,具有以下特点:
第一、解决了互联网数据采集过程中,由于采集范围大而造成的采集用时长、资源节点占用量大、目标数据漏采的问题;脱离了网站自身的数据显示形式的限制,通过对爬虫程序访问请求参数的数据显示上限和页数加以调整,从而一次性访问获取网站的全量目标数据,使访问请求次数降低为1次,采集用时更短,不占用采集资源节点,是对传统的互联网数据采集方法的优化升级,是一种更为高效的网络爬虫方法,不仅能够避免数据漏采,快速高效地取得数据,还简化或省略了爬虫程序的开发,也为后续数据存储和数据分析提供了便利。
第二、提高了互联网数据的利用效率,有利于大数据研究者在数据采集环节简化或省略爬虫程序的开发,降低研发成本,同时也为后续的数据存储和数据分析等工作提供了便利。
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。