[发明专利]一种基于Scrapy框架的网络数据的采集方法及装置有效
申请号: | 201811444993.6 | 申请日: | 2018-11-29 |
公开(公告)号: | CN109614535B | 公开(公告)日: | 2021-10-08 |
发明(设计)人: | 吕婧;辛北军;张岩;刘建华;胡向旭;马宏强 | 申请(专利权)人: | 中电万维信息技术有限责任公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951 |
代理公司: | 深圳市科吉华烽知识产权事务所(普通合伙) 44248 | 代理人: | 胡吉科 |
地址: | 730000 甘*** | 国省代码: | 甘肃;62 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 scrapy 框架 网络 数据 采集 方法 装置 | ||
本发明涉及一基于Scrapy框架的网络数据的采集方法及装置,所述方法包括:基于一代码固定的Item动态类,获取网络采集事件中的采集字段;获取与每一个所述采集字段对应的字段内容;存储所述字段内容。本发明对于任意一个网络采集事件,均可以采用一个固定的Item动态类,获取网络采集事件中的采集字段,而不需要在对于不同的网络采集事件去对应修改Item类,提高采集字段的获取效率;且对于任何一个网络采集事件,其中的采集字段可以灵活配置,没有局限性。
技术领域
本发明涉及计算机技术领域,特别是涉及一种基于Scrapy框架的网络数据的采集方法及装置。
背景技术
Scrapy是一个开源且较为著名的爬虫框架,可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取(或者网络抓取)所设计的,也可以应用在获取API所返回的数据(例如AmazonAssociates Web Services)或者通用的网络爬虫,主要功能是爬取网站数据,从非结构性的数据源提取结构性数据。
Scrapy提供了Item类满足常用数据输出的需求。Item类可以使用简单的 class定义语法,其类成员由Field对象声明而来。Field对象指明了每个字段的元数据(metadata),可以为每个字段指明任何类型的元数据。
但是针对不同的采集项目,每次在采集时需要都需要修改Item类来适配具体的采集场景,即在不同的采集场景下,需要对应修改Item类代码才可以适用。这种方式对于采集场景较多,任务较多时,会产生操作繁琐,工作效率较低的技术问题。
发明内容
基于此,有必要针对目前在不同采集场景下需要修改Item类的问题,提供一种基于Scrapy框架的网络数据的采集方法及装置。
一种基于Scrapy框架的网络数据的采集方法,包括:
基于一代码固定的Item动态类,获取网络采集事件中的采集字段;
获取与每一个所述采集字段对应的字段内容;
存储所述字段内容。
在其中一个实施例中,所述基于一代码固定的Item类,获取网络采集事件中的采集字段之前,所述方法还包括:
定义一代码固定的Item动态类,所述Item动态类包含一通用的采集字段变量,所述变量指向对应的采集字段对象。
在其中一个实施例中,所述基于一代码固定的Item动态类,获取网络采集事件中的采集字段,具体为:
基于一代码固定的Item动态类,循环增加采集域的数量,遍历所述网络采集事件以获取所述采集字段。
在其中一个实施例中,所述获取与每一个所述采集字段对应的字段内容之后,所述方法还包括:
将与每一个所述采集字段对应的字段内容添加至目标数组中;
遍历所述目标数组,将读取的所述目标数组中与每一个所述采集字段对应的字段内容拼接成目标字符串;
所述存储所述字段内容,具体为:
存储包含所述字段内容的所述目标字符串。
在其中一个实施例中,所述将与每一个所述采集字段对应的字段内容添加至目标数组中,包括:
采用hxs对象读取所述网络采集事件中每个网站中的页面信息;
通过hxs对象的xpath方法从所述页面信息中提取与每个所述采集字段对应的字段内容;
将提取的与每个所述采集字段对应的字段内容添加至目标数组中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中电万维信息技术有限责任公司,未经中电万维信息技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811444993.6/2.html,转载请声明来源钻瓜专利网。