本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及网页内容提取方法和装置。
背景技术:
对于web数据挖掘来说,网页的正文内容提取通常作为数据挖掘前期的基础步骤。能不能高效准确地提取出网页正文内容,并很容易地推广至各个网站,决定了后续数据挖掘的效果。
现有技术中,通常仅采用单一的提取算法来对网页正文内容进行提取。由于网站子页面多而且形式较为多样,网站主体可能是文字,也可能是图片甚至图文混杂,内部的网站标签也多种多样;此外,网站中既存在大量不需要提取内容的部分如首页导航页、列表页等,又存在需要提取素材的内容页。如果不加分辨地采用单一算法进行提取,很容易提取到过多噪声,无法满足网页正文内容提取的准确性和全面性两方面的要求。
技术实现要素:
本申请的目的在于提出一种改进的网页内容提取方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种网页内容提取方法,包括:解析待提取网页以确定待提取网页包含的超文本标记语言html标签;从html标签中提取出待提取网页的html特征;将所提取出的html特征导入预先训练的图片网页识别模型;以及响应于确定待提取网页为图片网页,提取待提取网页中的图片和与图片对应的html标签。
在一些实施例中,方法还包括:响应于确定待提取网页为非图片网页,将所提取出的html特征导入预先训练的素材网页识别模型;响应于确定待提取网页为素材网页,提取待提取网页中的图片和文本。
在一些实施例中,从html标签中提取出待提取网页的html特征,包括:从html标签中筛选出与待提取网页的正文相对应的html正文标签;遍历待提取网页的各html正文标签以确定待提取网页的html特征。
在一些实施例中,html特征包括以下至少一者:类别为图片标签的html正文标签占待提取网页的html正文标签的比例;类别为超链接标签的html正文标签占待提取网页的html正文标签的比例;类别为表单标签的html正文标签占待提取网页的html正文标签的比例;待提取网页的各html正文标签的文本密度,文本密度为该html正文标签所包含的文本长度与待提取网页的各html正文标签所包含的文本长度之和的比例;以及待提取网页的各html正文标签的文本密度的统计特征。
在一些实施例中,在解析待提取网页以确定待提取网页包含的第一超文本标记语言html标签之前,方法还包括:响应于接收到网页的统一资源定位符url,解析与网页隶属于同一网站的各网页作为待提取网页。
第二方面,本申请提供了一种网页内容提取装置,包括:解析模块,配置用于解析待提取网页以确定待提取网页包含的超文本标记语言html标签;特征提取模块,配置用于从html标签中提取出待提取网页的html特征;图片网页识别模块,配置用于将所提取出的html特征导入预先训练的图片网页识别模型;以及图片内容特征提取模块,配置用于响应于确定待提取网页为图片网页,提取待提取网页中的图片和与图片对应的html标签。
在一些实施例中,装置还包括:素材网页识别模块,配置用于响应于确定待提取网页为非图片网页,将所提取出的html特征导入预先训练的素材网页识别模型;素材内容特征提取模块,配置用于响应于确定待提取网页为素材网页,提取待提取网页中的图片和文本。
在一些实施例中,特征提取模块进一步配置用于:从html标签中筛选出与待提取网页的正文相对应的html正文标签;以及遍历待提取网页的各html正文标签以确定待提取网页的html特征。
在一些实施例中,html特征包括以下至少一者:类别为图片标签的html正文标签占待提取网页的html正文标签的比例;类别为超链接标签的html正文标签占待提取网页的html正文标签的比例;类别为表单标签的html正文标签占待提取网页的html正文标签的比例;待提取网页的各html正文标签的文本密度,文本密度为该html正文标签所包含的文本长度与待提取网页的各html正文标签所包含的文本长度之和的比例;以及待提取网页的各html正文标签的文本密度的统计特征。
在一些实施例中,解析模块在解析待提取网页以确定待提取网页包含的第一超文本标记语言html标签之前,还配置用于:响应于接收到网页的统一资源定位符url,解析与网页隶属于同一网站的各网页作为待提取网页。
第三方面,本申请提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上的网页内容提取方法。
第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的网页内容提取方法。
本申请提供的技术方案,通过解析待提取网页,确定其包含的html标签,再从html标签中提取html特征,基于html特征确定待提取网页是否为图片网页,若待提取网页为图片网页,则提取该待提取网页中的图片。从而可以基于待提取网页的类型(例如图片类型和非图片类型),来采用不同的策略提取网页内容,实现了网页内容提取的准确性、全面性的提升。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的网页内容提取方法的一个实施例的示意性流程图;
图3是根据本申请的网页内容提取方法的另一个实施例的示意性流程图;
图4是本申请各实施例的网页内容提取方法中,从html标签中提取出所提取网页的html特征的分解流程图;
图5是根据本申请的网页内容提取方法的一个应用场景的示意图;
图6是根据本申请的网页内容提取装置的一个实施例的结构示意图;
图7是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的网页内容提取方法或网页内容提取装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括第一服务器101、多个网站服务器102以及网络103。网络103用以在第一服务器101和各网站服务器102之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用第一服务器101通过网络103与各网站服务器102交互,以接收或发送消息等。第一服务器101上可以安装有各种通讯应用,例如网页浏览器应用、网络爬取应用等。
第一服务器101可以是提供各种服务的服务器,例如对网站服务器102提供的网页进行网页内容提取的数据挖掘服务器。数据挖掘服务器可以对爬取得到的网页页面数据进行分析等处理,从而提取出网页的正文内容。
需要说明的是,本申请实施例所提供的网页内容提取方法一般由第一服务器101执行,相应地,网页内容提取装置一般设置于第一服务器101中。
应该理解,图1中的第一服务器101、网络103和网站服务器102的数目仅仅是示意性的。根据实现需要,可以具有任意数目的第一服务器、网络和网站服务器。
继续参考图2,其示出了根据本申请的网页内容提取方法的一个实施例的流程200。所述的网页内容提取方法,包括以下步骤:
步骤210,解析待提取网页以确定待提取网页包含的超文本标记语言html标签。
在本实施例中,网页内容提取方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式从一个或多个网站服务器中获取网页数据。例如,电子设备可以接收用户输入的期望进行网页内容提取的网页的地址,即网址。实践中,网址一般由统一资源定位符(uniformresourcelocator,url)来表示。需要指出的是,上述无线连接方式可以包括但不限于3g/4g连接、wifi连接、蓝牙连接、wimax连接、zigbee连接、uwb(ultrawideband)连接、以及其他现在已知或将来开发的无线连接方式。
在一些应用场景中,在接收到用户输入的网址后,电子设备可以基于网址来向与之对应的网站服务器发送网页内容获取请求,以请求获取与网址对应的网页(即待提取网页)的数据。
一般而言,网页的数据可以包括多个超文本标记语言(hypertextmarkuplanguage,html)文件,html文件可以表明该部分的网页数据的类型,例如,文字、图形、动画、声音、表格、链接等类型。每个html文件可以表示网页的一部分内容。html文件中可以包括多个html标签,通过对待提取网页进行解析,可以得到属于该网页的全部html标签。
步骤220,从html标签中提取出待提取网页的html特征。
在这里,html特征可以理解为任何可以体现该待提取网页的特点的定量和/或定性的描述。
步骤230,将所提取出的html特征导入预先训练的图片网页识别模型。
本步骤中,通过将待识别网页的html特征导入预先训练的图片网页识别模型,可以确定出该待识别网页是否为图片网页。在这里,图片网页例如可以理解为在该网页中,图片内容所占比例超过一预设比例阈值的网页。
在这里,图片网页识别模型例如可以是支持向量机学习分类模型。在训练时,例如,可以首先采集多个网页的html文件数据,对这些网页进行是否为图片网页的标注,并提取这些网页的html特征。将对这些网页的标注信息和这些网页的html特征作为标注数据输入支持向量机学习分类模型并对模型进行循环训练,当该模型的准召率达到一预设的准召率阈值时,可认为该模型训练完成。
步骤240,响应于确定待提取网页为图片网页,提取待提取网页中的图片和与图片对应的html标签。
在步骤230中将待提取网页导入预先训练的图片网页识别模型进行了判断。若待识别网页为图片网页,则在本步骤240中,可以将待识别网页中所有为图片格式(包括但不限于.jpg格式、.bmp格式、.png格式、.raw等等)的内容以及与各图片对应的标签提取出来,作为最终提取出的网页内容。
本实施例的网页内容提取方法,在对网页内容进行提取之前,首先基于待提取网页的html特征判断该待提取网页是否为图片网页,当待提取网页为图片页面时,提取其中的图片和与图片对应的标签作为该页面的内容提取结果。从而避免了待提取页面为非图片页面(例如,正文内容不仅包括图片还包括一定比例文字的图文混排页面)时,仅提取页面中的图片导致的网页内容提取不全面的问题。
参见图3所示,其示出了本申请的网页内容提取方法的另一个实施例的示意性流程300。
本实施例的网页内容提取方法,包括:
步骤310,解析待提取网页以确定待提取网页包含的超文本标记语言html标签。
步骤320,从html标签中提取出待提取网页的html特征。
步骤330,将所提取出的html特征导入预先训练的图片网页识别模型。
步骤340,响应于确定待提取网页为图片网页,提取待提取网页中的图片和与图片对应的标签。
本实施例的步骤310~步骤340与图2所示实施例的步骤210~步骤240类似,在此不再赘述。
与图2所示的实施例不同的是,本实施例还进一步包括:
步骤350,响应于确定待提取网页为非图片网页,将所提取出的html特征导入预先训练的素材网页识别模型。
在这里,“素材网页”可以理解为具有网页内容提取价值的非图片类型的网页。
例如,在一些应用场景中,待提取网页为某一公司的主页,由于该网页包含了对该公司的业务范围的描述并且提供了一些公司产品的照片图片,可以认为,该待提取网页所包含的网页内容具有一定提取价值,属于素材网页的范畴。
而在另一些应用场景中,待提取网页为一导航页面,用户需对该导航页面中针对某一分类的超链接进行点击才能够获得针对该分类的具体描述信息。由于该导航页面本身并未包含有实用价值的内容,可以认为,该待提取网页所包含网页内容不具有提取价值,不属于素材网页的范畴。例如,待提取网页为一天气预报网站的主页。在该主页上,仅提供了与多个城市对应的超链接,用户需要点击期望进行天气查询的城市对应的超链接进入该天气预报网站的一个子页面,才能够获得与该城市对应的天气信息。由于该天气预报网站的主页上并未包含任何天气信息,因而,可认为该主页未包含有实用价值的内容,该主页所包含的网页内容不具有提取价值,不属于素材网页的范畴。
此外,本步骤中,与预先训练的图片网页识别模型类似,预先训练的素材网页识别模型同样可以是支持向量机学习分类模型。在训练时,例如,可以首先采集多个网页的html文件数据,对这些网页进行是否为素材网页的标注,并提取这些网页的html特征。将对这些网页的标注信息和这些网页的html特征作为标注数据输入支持向量机学习分类模型并对模型进行循环训练,当该模型的准召率达到一预设的准召率阈值时,可认为该模型训练完成。
由于在对素材网页识别模型进行训练时,可以手动对网页进行“是”或“否”素材网页的标注。因此,在素材网页识别模型的训练过程中,可以不断地学习素材网页的html特征,从而不断地调整模型输出,最终达到预设的准召率。
步骤360,响应于确定待提取网页为素材网页,提取待提取网页中的图片和文本。
若通过步骤350的预先训练的素材网页识别模型判断出待提取网页为素材网页,可以提取其中的图片和文本,作为该网页的网页内容。
另一方面,若通过步骤350的预先训练的素材网页识别模型判断出待提取网页不是素材网页,则可以表明该待提取网页未包含有价值内容(例如,待提取网页为如上描述的导航页),此时,可以不再对该待提取网页进行任何的内容提取操作以避免计算资源和/或网络资源的浪费。
本步骤中,若待提取网页为素材网页,可以基于现有的网页内容分析算法(例如,redability算法)来提取网页中的图片和文本。
本实施例的网页内容提取方法,在对网页内容进行提取之前,首先基于待提取网页的html特征判断该待提取网页是否为图片网页,当待提取网页为图片页面时,提取其中的图片作为该页面的内容提取结果。从而避免了待提取页面为非图片页面(例如,正文内容不仅包括图片还包括一定比例文字的图文混排页面)时,仅提取页面中的图片导致的网页内容提取不全面的问题。
此外,本实施例的网页内容提取方法,通过将非图片网页导入预先训练的素材网页识别模型,并判断待提取网页是否为素材网页,若待提取网页时素材网页,则对其中的图片和文字进行提取,从而确保了网页内容提取的全面性。另一方面,若待提取网页不是素材网页,此时,可以不再对该待提取网页进行任何的内容提取操作以避免计算资源和/或网络资源的浪费。
在本申请上述二实施例的网页内容提取方法的一些可选的实现方式中,步骤220和步骤320的从html标签中提取出待提取网页的html特征可以通过如图4所示的分解流程400来实现。
具体而言,在步骤410中,从html标签中筛选出与待提取网页的正文相对应的html正文标签。
在一些应用场景中,例如,可以将处于标签<body>和标签</body>之间的html标签作为与待提取网页的正文相对应的html正文标签。
在步骤420中,遍历待提取网页的各html正文标签以确定待提取网页的html特征。
在这些可选的实现方式中,html特征例如可以包括以下至少一者:类别为图片标签的html正文标签占待提取网页的html正文标签的比例;类别为超链接标签的html正文标签占待提取网页的html正文标签的比例;类别为表单标签的html正文标签占待提取网页的html正文标签的比例;待提取网页的各html正文标签的文本密度,文本密度为该html正文标签所包含的文本长度与待提取网页的各html正文标签所包含的文本长度之和的比例;以及待提取网页的各html正文标签的文本密度的统计特征。在这里,待提取网页的各html正文标签的文本密度的统计特征例如可以包括但不限于各html正文标签的文本密度的均值、方差等统计特征。
在一些可选的实现方式中,尽管在步骤220和步骤320中提取出了待提取网页的多个html特征。但在导入相应的识别模型(例如预先训练的图片网页识别模型或预先训练的素材网页识别模型)进行网页类型的判断时,各识别模型可以仅从多个html特征中选取一部分作为识别网页类型的依据。
例如,在一些应用场景中,预先训练的图片网页识别模型可以采用类别为图片标签的html正文标签占待提取网页的html正文标签的比例、类别为超链接标签的html正文标签占待提取网页的html正文标签的比例、类别为表单标签的html正文标签占待提取网页的html正文标签的比例、待提取网页的各html正文标签的文本密度这几个html特征作为依据来进行识别。而预先训练的素材网页识别模型可以采用类别为超链接标签的html正文标签占待提取网页的html正文标签的比例、类别为表单标签的html正文标签占待提取网页的html正文标签的比例、待提取网页的各html正文标签的文本密度、待提取网页的各html正文标签的文本密度的统计特征这几个html特征作为依据来进行识别。
此外,在本申请上述二实施例的网页内容提取方法的一些可选的实现方式中,在步骤210和步骤310的解析待提取网页以确定所述待提取网页包含的超文本标记语言html标签之前,本申请的网页内容提取方法还可以进一步包括:
响应于接收到网页的统一资源定位符url,解析与网页隶属于同一网站的各网页作为待提取网页。
这样一来,用户仅需输入隶属于某一网站的一个网页的url,电子设备便可以解析得到该网站的各网页并将这些网页作为待提取网页,并对这些待提取网页分别执行网页内容提取的操作。从而提升了网页内容提取的提取效率。
参见图5所示,其示出了本申请的网页内容提取方法的一个应用场景的示意图。
在步骤510中,用户输入期望进行内容提取的网站的主页网址。
在步骤520中,解析与该网页的各级子页面。例如,可以利用后台爬虫程序爬取出该网站的各级子页面。
在步骤530中,分别解析隶属于该网站的各网页的html特征。
在步骤540中,将各网页的html特征输入预先训练的图片网页识别模型进行识别。
在步骤550中,网站的子页面a属于图片网页,则提取该子页面a中的图片和与各图片对应的标签。
在步骤560中,网站的子页面b不属于图片网页,则将该子页面进一步输入预先训练的素材网页识别模型进行识别。
在步骤570中,子页面b属于素材网页,则对子页面b执行redability算法以提取子页面b中的图片和文本。
从以上的对步骤510~570的描述可以看出,本申请的网页内容提取方法,可以对不同类型的网页采用不同的提取策略进行网页内容提取,从而提升网页内容提取的准确度和全面度。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种网页内容提取装置的一个实施例,该装置实施例与图2或图3所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
本实施例的网页内容提取装置包括解析模块610、特征提取模块620、图片网页识别模块630和图片内容特征提取模块640。
其中,解析模块610可配置用于解析待提取网页以确定待提取网页包含的超文本标记语言html标签。
特征提取模块620可配置用于从html标签中提取出待提取网页的html特征。
图片网页识别模块630可配置用于将所提取出的html特征导入预先训练的图片网页识别模型。
图片内容特征提取模块640可配置用于响应于确定待提取网页为图片网页,提取待提取网页中的图片和与图片对应的html标签。
在一些可选的实现方式中,本实施例的网页内容提取装置还可以进一步包括素材网页识别模块650和素材内容特征提取模块660。
其中,素材网页识别模块650可配置用于响应于确定待提取网页为非图片网页,将所提取出的html特征导入预先训练的素材网页识别模型。
素材内容特征提取模块660可配置用于响应于确定待提取网页为素材网页,提取待提取网页中的图片和文本。
在一些可选的实现方式中,特征提取模块620还可以进一步配置用于:从html标签中筛选出与待提取网页的正文相对应的html正文标签;以及遍历待提取网页的各html正文标签以确定待提取网页的html特征。
在一些可选的实现方式中,html特征包括以下至少一者:类别为图片标签的html正文标签占待提取网页的html正文标签的比例;类别为超链接标签的html正文标签占待提取网页的html正文标签的比例;类别为表单标签的html正文标签占待提取网页的html正文标签的比例;以及待提取网页的各html正文标签的文本密度,文本密度为该html正文标签所包含的文本长度与待提取网页的各html正文标签所包含的文本长度之和的比例。
在一些可选的实现方式中,解析模块610在解析待提取网页以确定待提取网页包含的第一超文本标记语言html标签之前,还可以进一步配置用于:响应于接收到网页的统一资源定位符url,解析与网页隶属于同一网站的各网页作为待提取网页。
本领域技术人员可以理解,上述网页内容提取装置600还可包括一些其他公知结构,例如处理器、存储器等,为了不必要地模糊本公开的实施例,这些公知的结构在图6中未示出。
下面参考图7,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统700的结构示意图。
如图7所示,计算机系统700包括中央处理单元(cpu)701,其可以根据存储在只读存储器(rom)702中的程序或者从存储部分708加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram703中,还存储有系统700操作所需的各种程序和数据。cpu701、rom702以及ram703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。
以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括解析模块、特征提取模块、图片网页识别模块以及图片内容特征提取模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,解析模块还可以被描述为“解析待提取网页以确定所述待提取网页包含的超文本标记语言html标签的模块”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当一个或者多个程序被一个设备执行时,使得设备:解析待提取网页以确定待提取网页包含的超文本标记语言html标签;从html标签中提取出待提取网页的html特征;将所提取出的html特征导入预先训练的图片网页识别模型;以及响应于确定待提取网页为图片网页,提取待提取网页中的图片和与图片对应的html标签。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。