CN105677862A - 一种抓取网页内容的方法及装置 - Google Patents
一种抓取网页内容的方法及装置 Download PDFInfo
- Publication number
- CN105677862A CN105677862A CN201610011277.3A CN201610011277A CN105677862A CN 105677862 A CN105677862 A CN 105677862A CN 201610011277 A CN201610011277 A CN 201610011277A CN 105677862 A CN105677862 A CN 105677862A
- Authority
- CN
- China
- Prior art keywords
- webpage
- captured
- rule
- phrase
- crawl
- 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.)
- Pending
Links
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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
-
- 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)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种抓取网页内容的方法及装置,用于解决目前在对不同类型网页内容进行抓取的过程中,存在网页内容抓取复杂度高,以及网页内容抓取效率低的问题。本发明实施例中,当检测到待抓取网页时,即从预设的抓取规则库中查找上述待抓取网页的URL,当该抓取规则库中不存在URL对应的抓取规则时,对待抓取网页中的内容进行分析,并对满足条件的待抓取网页生成抓取规则。采用本发明技术方案,对待抓取网页中的内容进行分析,根据分析结果自动生成待抓取网页对应的抓取规则,无须人工设置抓取规则,有效降低了网页内容抓取的复杂度,提高了网页内容抓取的效率。
Description
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种抓取网页内容的方法及装置。
背景技术
网络爬虫是搜索引擎技术的基础组成部分。网络爬虫技术是从一个或若干初始网页的URL(UniformResourceLocator,统一资源定位符)开始,获得初始网页上的URL,在抓取网页信息的过程中,根据网页的抓取规则,不断从当前页面上抽取新的URL放入队列,直到满足某种停止条件。然后将抓取到的网页信息存储在搜索引擎的服务器中,从而可以加快用户的搜索速度。
目前,在采用网络爬虫技术对网页进行抓取过程中,抓取规则为人工设置,针对不同类型的网页,需要人工设置相应的抓取规则,当需要抓取的网页类型众多时,将耗费大量的人力去设置抓取规则,从而增加了网页内容抓取的复杂度。
由此可见,目前在对不同类型网页内容进行抓取的过程中,存在网页内容抓取复杂度高,以及网页内容抓取效率低的问题。
发明内容
本发明实施例提供一种抓取网页内容的方法及装置,用以解决目前在对不同类型网页内容进行抓取的过程中,存在网页内容抓取复杂度高,以及网页内容抓取效率低的问题。
本发明实施例提供的具体技术方案如下:
一种抓取网页内容的方法,包括:
获取待抓取网页的URL;
在抓取规则库中,获取所述待抓取网页的URL对应的抓取规则;
当无法获取到对应于所述待抓取网页的URL的抓取规则时,对所述待抓取网页中的内容进行分析,并对满足抓取条件的所述待抓取网页生成抓取规则;
将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新。
可选的,对所述待抓取网页中包含的内容进行分词划分,生成分词组;计算所述分词组与每一个预先建立的主题语义库之间的相似度;当计算得到的所述分词组与任一所述主题语义库之间的相似度大于等于第一预设阈值时,对所述待抓取网页对应的抓取规则进行生成。
可选的,获取所述计算得到的相似度所对应的至少一个主题语义库;获取所述待抓取网页对应的HTML文档,将所述HTML文档中最高层级的分段标签作为根节点,其他层级对应的分段标签作为分节点,构建树状结构;由根节点开始,逐层遍历所述树状结构;在所述树状结构中,当存在任一分节点对应的文本内容与所述至少一个主题语义库之间的相似度大于等于第二预设阈值时,获取所述任一分节点的标识;将所述任一分节点的标识及其对应的分段标签,作为所述待抓取网页的抓取规则。
进一步的,将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新之后,将所述待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库中;按照预设周期统计所述主题内容库中,每一个分词组的出现频率;从所述主题内容库中的所有分词组中,选取出现频率大于等于预设频率阈值的分词组,存储至所述主题语义库中。
可选的,所述抓取规则库的生成方法,包括:获取样本网页的URL;建立所述样本网页对应的预设抓取规则与所述样本网页的URL之间的对应关系,将所述对应关系存储至抓取规则库中;并获取样本网页中包含的样本内容以及所述样本网页类型;根据所述样本网页中包含的样本内容,对所述样本内容进行分词划分,将生成的每一个样本分词组均作为特征值;将所有特征值存储至与所述样本网页类型相对应的预设的主题语义库中
一种抓取网页内容的装置,包括:
第一获取单元,用于获取待抓取网页的URL;
第二获取单元,用于在抓取规则库中,获取所述待抓取网页的URL对应的抓取规则;
抓取规则生成单元,用于当无法获取到对应于所述待抓取网页的URL的抓取规则时,对所述待抓取网页中的内容进行分析,并对满足抓取条件的所述待抓取网页生成抓取规则;
更新单元,用于将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新。
可选的,所述抓取规则生成单元,具体用于:对所述待抓取网页中包含的内容进行分词划分,生成分词组;计算所述分词组与每一个预先建立的主题语义库之间的相似度;当计算得到的所述分词组与任一所述主题语义库之间的相似度大于等于第一预设阈值时,对所述待抓取网页对应的抓取规则进行生成。
可选的,所述抓取规则生成单元,具体用于:获取所述计算得到的相似度所对应的至少一个主题语义库;获取所述待抓取网页对应的HTML文档,将所述HTML文档中最高层级的分段标签作为根节点,其他层级对应的分段标签作为分节点,构建树状结构;由根节点开始,逐层遍历所述树状结构;在所述树状结构中,当存在任一分节点对应的文本内容与所述至少一个主题语义库之间的相似度大于等于第二预设阈值时,获取所述任一分节点的标识;将所述任一分节点的标识及其对应的分段标签,作为所述待抓取网页的抓取规则。
进一步的,上述装置还包括存储单元,用于:将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新之后,将所述待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库中;按照预设周期统计所述主题内容库中,每一个分词组的出现频率;从所述主题内容库中的所有分词组中,选取出现频率大于等于预设频率阈值的分词组,存储至所述主题语义库中。
进一步的,上述装置还包括抓取规则库生成单元,还用于:获取样本网页的URL;建立所述样本网页对应的预设抓取规则与所述样本网页的URL之间的对应关系,将所述对应关系存储至抓取规则库中;并获取样本网页中包含的样本内容以及所述样本网页类型;根据所述样本网页中包含的样本内容,对所述样本内容进行分词划分,将生成的每一个样本分词组均作为特征值;将所有特征值存储至与所述样本网页类型相对应的预设的主题语义库中。
本发明实施例中,当检测到待抓取网页时,即从预设的抓取规则库中查找上述待抓取网页的URL,当该抓取规则库中不存在URL对应的抓取规则时,对待抓取网页中的内容进行分析,并对满足条件的待抓取网页生成抓取规则。采用本发明技术方案,对待抓取网页中的内容进行分析,根据分析结果自动生成待抓取网页对应的抓取规则,无须人工设置抓取规则,有效降低了网页内容抓取的复杂度,提高了网页内容抓取的效率。
附图说明
图1为本发明实施例中通信系统架构示意图;
图2为本发明实施例中网页内容抓取流程图;
图3为本发明实施例中样本网页示意图;
图4为本发明实施例中依存句法树示意图;
图5为本发明实施例中待抓取网页示意图;
图6为本发明实施例中具体应用场景下的网页内容抓取流程图;
图7为本发明实施例中网页内容抓取装置结构示意图。
具体实施方式
为了解决目前在对不同类型网页内容进行抓取的过程中,存在网页内容抓取复杂度高,以及网页内容抓取效率低的问题。本发明实施例中,当检测到待抓取网页时,即从预设的抓取规则库中查找上述待抓取网页的URL,当该抓取规则库中不存在URL对应的抓取规则时,对待抓取网页中的内容进行分析,并对满足条件的待抓取网页生成抓取规则。采用本发明技术方案,对待抓取网页中的内容进行分析,根据分析结果自动生成待抓取网页对应的抓取规则,无须人工设置抓取规则,有效降低了网页内容抓取的复杂度,提高了网页内容抓取的效率。
参阅图1所示,为本发明实施例中通信系统示意图,该通信系统包括客户端和至少一个web服务器;客户端包含用户界面,用户可以通过该用户界面与客户端进行信息交互,指示客户端呈现浏览器界面,以及根据用户指示向web服务器请求相应的数据包,并根据该数据包呈现相应的网页;web服务器,用户根据客户端发送的请求,向客户端发送相应的数据包。
下面结合附图对本发明优选的实施方式进行详细说明。
参阅图2所示,本发明实施例中,网页内容抓取过程包括:
步骤200:获取待抓取网页的URL。
本发明实施例中,客户端根据用户指示,运行浏览器应用程序;当客户端检测到用户在浏览器中输入所请求的网页信息时,根据该网页信息生成网页内容请求发送至相应的web服务器,其中,上述网页信息可以为网址或者与网址相关的关键字;web服务器根据该网页内容请求,生成包含网页内容数据包的网页内容响应,并将该网页内容响应发送至客户端;客户端根据该网页内容数据包,通过浏览器向用户呈现相应的网页,并将该呈现的网页作为待抓取网页。
客户端接收到网页内容响应之后,获取该待抓取网页的URL;其中,该URL由上述网页内容响应承载。
步骤210:在抓取规则库中,获取待抓取网页的URL对应的抓取规则。
本发明实施例中,客户端根据上述待抓取网页的URL,在抓取规则库中进行查找;其中,抓取规则库为预先设置在本地的数据库,该抓取规则库中包含各个URL与抓取规则的对应关系。
可选的,上述抓取规则库根据对样本网页(如图3所示)对应的抓取规则进行训练生成;具体的,客户端获取样本网页的URL;建立样本网页对应的预设抓取规则与所述样本网页的URL之间的对应关系,将该对应关系存储至抓取规则库中。在抓取规则库中URL和抓取规则一一对应。
进一步的,在客户端获取待抓取网页的URL的同时,客户端按照预设抓取规则获取样本网页中包含的样本内容,样本网页类型,并根据该样本网页中包含的样本内容,建立隐马尔科夫模型,并采用维比特算法,对该样本内容进行分词划分,将生成的每一个样本分词组中包含的指定词性的分词组均作为特征值;将所有特征值存储至与上述样本网页类型相对应的主题语义库中。在客户端中包含多个主题语义库,每一个主题语义库中包含一种网页类型的样本分词组,由于一个主题语义库中可能包含多个URL对应的样本网页中的样本分词组,因此,一个主题语义库可能对应多个抓取规则。其中,上述指定词性为分词或者动词。
步骤220:当无法获取到对应于待抓取网页的URL的抓取规则时,对待抓取网页中的内容进行分析,并对满足抓取条件的待抓取网页生成抓取规则。
本发明实施例中,当抓取规则库中不存在待抓取网页的URL时,客户端采用网络爬虫技术获取待抓取网页中包含的所有内容;根据该待抓取网页中包含的内容,建立隐马尔科夫模型,并采用维比特算法,对该待抓取网页中包含的内容进行分词划分,生成多个分词组。其中,在对待抓取网页中所包含的待划分字符串进行划分时,该待划分字符串是否为一个分词组仅与该待划分字符串之前的分词组相关,客户端根据该待划分字符串与该待划分字符串之前已划分分词组的关联性,确定建立的隐马尔科夫模型的阶数;具体的,由于本发明实施例中,上述待划分字符串是否为一个分词组的概率仅与该待划分字符串之前的上一个分词组相关,而与该上一个分词组之前的分词组无关,因此,客户端在本地建立一阶隐马尔科夫模型。
可选的,客户端对待抓取网页中包含的每一个句子进行分词划分,确定该句子对应的各种组合类型的初始分词组,每一种组合类型的初始分词组均能组成上述待抓取网页所包含的内容;针对每一种组合类型,客户端根据该种组合类型中包含的所有分词组,以及该任一组合类型对应的句子,基于贝叶斯公式,建立隐马尔科夫模型,并计算该种组合类型中包含的所有分词组相对于该组合类型所对应的句子的概率值;将所有组合类型中概率值最大的组合类型中包含的初始分词组,作为待抓取网页对应的分词组。
其中,待抓取网页中包含的任一句子对应的任一种组合类型中包含的所有分词组可以表示为X=x1,x2,…,xi,…,xn,xi表示一个分词组;上述任一句子可以表示为Y=y1,y2,…,yi,…,yn,yi表示一个字;贝叶斯公式可以表示为:
公式一
其中,为任一种组合类型相对于上述任一句子的概率值。
本发明实施例中,客户端采用上述方式确定待抓取网页所包含的每一个句子对应的概率值最大的组合类型,并将所有组合类型中包含的初始分词组确定为待抓取网页所对应的分词组。
可选的,客户端基于上述分词划分方式,获取待抓取网页对应的所有分词组,并确定每一个分词组的词性,在本地生成依存句法树,在生成的依存句法树中,ROOT代表待抓取网页中包含的所有内容,IP代表将上述所有内容进行划分后得到的简单从句,NP代表简单从句中包含的名词短语,VP代表简单从句中包含的动词短语,NR代表简单从句中包含的固有名词,VV代表短语中包含的动词,NN代表短语中包含的常用名词,VP代表短语中的副词短语或者形容词短语。
采用上述技术方案,根据该内容中包含的每相邻多个字组成一个词的概率,确定待抓取网页对应的分词组,由于基于概率分布的比较方式能够较为准确的确定字与字之间的关系,因此,基于隐马尔客户模型和维特比算法对待抓取网页中包含的内容进行分词划分,能够提高获取的分词组的准确性,进而保证后续对待抓取网页按照相应的抓取规则进行网页内容抓取的准确性。
进一步的,当计算得到的待抓取网页对应的所有分词组与任一主题语义库之间的相似度大于等于第一预设阈值时,对待抓取网页对应的抓取规则进行生成。具体的,客户端基于对上述待抓取网页对应的分词组,采用余弦定理,计算待抓取网页的所有分词组与每一个主题语义库中包含的所有特征值之间的相似度;当存在任一相似度大于等于第一预设阈值时,确定待抓取网页对应的抓取规则;并采用确定的抓取规则,抓取待抓取网页中的内容;并将待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库中;其中,该第一预设阈值为根据具体应用场景预先设置的值;该指定词性为名词或者动词。
其中,针对待抓取网页对应的所有分词组与任一主题语义库之间的相似度比较,客户端根据任一主题语义库中每一个分词组的出现次数生成第一向量,以及根据待抓取网页对应的每一个分词组的出现次数生成第二向量,可以采用如下公式计算待抓取网页对应的所有分词组与任一主题语义库之间的相似度:
公式二
其中,为待抓取网页对应的所有分词组与任一主题语义库之间的相似度;A表示第一向量,且该第一向量的维数为n,Ai表示该n维向量中的一个元素,用于表示该任一主题语义库中每一个分词组的出现次数;B表示第二向量,且该第二向量的维数为n,Bi表示该n维向量中的一个元素,用于表示该待抓取网页对应的所有分词组中每一个分词组的出现次数。
例如,当任一主题语义库中每一个分词组出现的次数分别为:中国3,两国2,合作2,发展3……;待抓取网页对应的每一个分词组出现的次数分别为:互联网2,发展3,中国2,国际2,信息1……;则生成的第一向量为A=[3,2,2,3,1,…],生成的第二向量B=[2,3,2,2,1,…],采用公式二计算第一向量和第二向量和之间的相似度,当越趋近于1,即表示第一向量和第二向量之间的相似度越高。
特殊的,当主题语义库中包含的不同分词组的数目小于待抓取网页对应的不同分词组的数目时,采用待抓取网页对应的分词组中存在,而主题语义库中不存在的分词组,对主题语义库中的分词组进行补齐,该补齐的分词组的出现次数为零,使主题语义库中包含的不同分词组的数目少于待抓取网页对应的不同分词组的数目相等;当主题语义库中包含的不同分词组的数目大于待抓取网页对应的不同分词组的数目时,采用主题语义库中存在的分词组,而待抓取网页对应的分词组中不存在的分词组,对待抓取网页对应的分词组进行补齐,该补齐的分词组的出现次数为零,使主题语义库中包含的不同分词组的数目少于待抓取网页对应的不同分词组的数目相等。
采用上述技术方案,分别基于主题语义库中包含的分词组和待抓取网页对应的分词组,生成相应的向量,采用余弦定理法则,能够准确获取两个向量之间的相似度,从而保证了获取的主题语义库和带抓取网页之间的相似度的准确性,进而保证了后续获取的待抓取网页对应的抓取规则的准确性。
可选的,当客户端判定存在任一相似度大于等于第一预设阈值时,获取待抓取网页对应的抓取规则的方法,包括:客户端获取待抓取网页对应的HTML(HyperTextMarkupLanguage;超文本标记语言)文档,将该HTML文档去除js标签和head标签之后,将body标签中最高层级的分段标签作为根节点,将其他分段标签作为分节点,根据该HTML文档中各个分段标签及其对应层级,构建树状结构;由根节点开始,逐层遍历上述树状结构,采用余弦定理,依次计算每一个分节点对应的文本内容分别与相似度达到第一预设阈值的各个主题语义库之间的相似度,计算文本内容与相似度达到第一预设阈值的各个主题语义库之间的相似度,即为计算文本内容对应的各个分词组,与相似度达到第一预设阈值的各个主题语义库之间的相似度;当在该树状结构中,存在任一分节点对应的文本内容与任一主题语义库之间的相似度大于等于第二预设阈值时,获取该任一分节点的标识;将该任一分节点的标识及其对应的分段标签,确定为待抓取网页对应的抓取规则,其中,该分节点标识可以分段标签的标识,也可以为预先设置的标识,上述遍历方式为广度遍历。在具体应用场景下,该body标签中最高层级的分段标签即为body标签中第一个div标签;上述树状结构可以为Xtree。
可选的,客户端还可将获取的HTML文档中每一个元素的属性值去除,从而简化该HTML文档,以便于后期在对树状结构进行遍历时,快速获取所需要的信息。
由于在HTML文档中div标签下可能包含子div标签,即HTML文档中不同div标签存在层级关系,根据div标签之间的层级关系,生成XTree,在该XTree中,将每一个div标签均对应一个分节点,将根节点的标识定义为1,第二层中的两个分节点的标识分别定义为11和12,第三层中将以标识为11的分节点为父节点的分节点的标识定义为111和112,第三层中以标识为12的分节点为父节点的分节点的标识定义为121和122,依次类推,为XTree中的每一个分节点定义相应的标识,此外,该每一个分节点还拥有自身的文本(text)属性,该文本标识属性即为文本内容。可选的,客户端还可以为每一个分节点设置相应的层级标识,以标识该分节点在树状结构中所处的层级。
例如,当待抓取网页如图5所示时,获取该待抓取网页对应的HTML文档,将该HTML文档中的js标签和head标签之后,HTML文档中将包含各个div标签。基于该HTML文档生成的XTree格式如下所示:
<?xmlversion="1.0"encoding="UTF-8"standalone="yes"?>
<xml>
<x1id=”1”text=”...”>
<x2id=”11”text=”Fitbit可谓是纯正血统的智能穿戴第一股,更关键的是能够把净利润整到近2亿美元,同样是干智能穿戴的,为啥商业结果的差距会那么大?”>
<x3id=”111”text=”Fitbit可谓是纯正血统的智能穿戴第一股,更关键的是这哥们能够把净利润整到近2亿美元,这利润要是分给“中国硅谷”的这帮哥们的话,我想大家的日子就不会那么苦逼了。”></x3>
</x2>
<x2id=”12”text=”同样是干智能穿戴的,为啥商业结果的差距会那么大?当然,我们也可以自我安慰,在智能穿戴产业商业化方面,起步比人家晚一点。”>
<x3id=”121”text=”我们先来浏览一组数据,看看人家Fitbit是怎么样如何变迁的:”></x3>
</x2>
.....
</x1>
</xml>
客户端从上述XTree的根节点开始进行遍历,当遍历至分节点111时,确定该分节点111对应的相似度达到第二预设阈值时,生成的抓取规则为:div[id=”111”]text。
进一步的,将待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库之后,客户端按照预设周期统计上述主题内容库中,每一个分词组的出现频率;从该主题内容库中的所有分词组中,选取出现频率大于等于预设频率阈值的分词组,存储至主题语义库中。
采用上述技术方案,从主题内容库中将满足预设条件的分词组存储至主题语义库中,从而起到丰富主题语义库的作用。
步骤230:将待抓取网页的URL以及对应于生成的待抓取网页抓取规则在抓取规则库中进行更新。
本发明实施例中,客户端将待抓取网页的URL以及生成的抓取规则的对应关系保存出抓取规则库中。
进一步的,当客户端从本地的抓取规则库中查找到待抓取网页的URL时,即从抓取规则库中获取该查找到的URL对应的抓取规则,并采用该获取的抓取规则,抓取待抓取网页中的内容。
采用上述技术方案,在客户端本地预设的抓取规则库,仅通过将待抓取网页的URL与抓取规则库中保存的URL进行匹配,即可获取符合该待抓取网页的抓取规则,无须人工设置抓取规则,有效降低了网页内容抓取的复杂度,提高了网页内容抓取的效率。
基于上述技术方案,参阅图6所示,下面结合具体应用场景,详细描述网页内容获取过程:
步骤600:客户端对待抓取网页进行解析,获取该待抓取网页的URL。
步骤610:客户端在本地保存的抓取规则库中,查找是否保存有上述待抓取网页的URL,若是,执行步骤620;否则,执行步骤630。
步骤620:客户端采用查找到的URL对应的抓取规则,抓取待抓取网页中的内容。
步骤630:客户端采用网络爬虫技术获取待抓取网页中包含的所有内容,并根据该待抓取网页中包含的内容,对该待抓取网页中包含的内容进行分词划分,生成多个分词组。
步骤640:客户端计算待抓取网页对应的分词组与每一个预先建立的主题语义库之间的相似度。
步骤650:客户端判断上述所有相似度中是否存在任一相似度大于等于第一预设阈值,若存在,执行步骤660;否则,结束当前操作。
步骤660:客户端获取上述相似度达到第一预设阈值所对应的主题语义库,并建立树状结构。
步骤670:客户端由根节点开始遍历上述树状结构,将树状结构中的任一分节点与上述获取的主题语义库进行相似度比较,获取相应的相似度。
步骤680:客户端判断该任一分节点对应的相似度中是否大于等于第二预设阈值,若存在,执行步骤690;否则,继续遍历操作,直至所有分节点均与上述获取的主题语义库进行比较。
特殊的,当客户端将所有节点均与上述获取的主题语义库进行相似度比较之后,没有分节点对应的相似度大于等于第二预设阈值,则客户端停止对该待抓取网页进行解析。
步骤690:客户端停止遍历,并将该任一分节点的标识及其对应的分段标签,确定为待抓取网页对应的抓取规则。
基于上述技术方案,参阅图7所示,本发明实施例中,提供一种网页内容抓取装置,包括第一获取单元70,第二获取单元71,抓取规则生成单元72,以及更新单元73,其中:
第一获取单元70,用于获取待抓取网页的URL;
第二获取单元71,用于在抓取规则库中,获取所述待抓取网页的URL对应的抓取规则;
抓取规则生成单元72,用于当无法获取到对应于所述待抓取网页的URL的抓取规则时,对所述待抓取网页中的内容进行分析,并对满足抓取条件的所述待抓取网页生成抓取规则;
更新单元73,用于将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新。
进一步的,上述装置还包括存储单元74,用于:将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新之后,将所述待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库中;按照预设周期统计所述主题内容库中,每一个分词组的出现频率;从所述主题内容库中的所有分词组中,选取出现频率大于等于预设频率阈值的分词组,存储至所述主题语义库中。
进一步的,上述装置还包括抓取规则库生成单元75,还用于:获取样本网页的URL;建立所述样本网页对应的预设抓取规则与所述样本网页的URL之间的对应关系,将所述对应关系存储至抓取规则库中;并获取样本网页中包含的样本内容,所述样本网页类型;根据所述样本网页中包含的样本内容,对所述样本内容进行分词划分,将生成的每一个样本分词组均作为特征值;将所有特征值存储至与所述样本网页类型相对应的预设的主题语义库中。
综上所述,本发明实施例中,获取待抓取网页的URL;在抓取规则库中,获取待抓取网页的URL对应的抓取规则;当无法获取到对应于待抓取网页的URL的抓取规则时,对待抓取网页中的内容进行分析,并对满足抓取条件的待抓取网页生成抓取规则;将待抓取网页的URL以及对应于生成的待抓取网页抓取规则在抓取规则库中进行更新。采用本发明技术方案,在对待抓取网页中的内容进行分析,根据分析结果自动生成待抓取网页对应的抓取规则,无须人工设置抓取规则,有效降低了网页内容抓取的复杂度,提高了网页内容抓取的效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种抓取网页内容的方法,其特征在于,包括:
获取待抓取网页的URL;
在抓取规则库中,获取所述待抓取网页的URL对应的抓取规则;
当无法获取到对应于所述待抓取网页的URL的抓取规则时,对所述待抓取网页中的内容进行分析,并对满足抓取条件的所述待抓取网页生成抓取规则;
将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新。
2.如权利要求1所述的方法,其特征在于,当无法获取到对应所述待抓取网页URL的抓取规则时,对所述待抓取网页中的内容进行分析,并对满足抓取条件的所述待抓取网页生成抓取规则,包括:
对所述待抓取网页中包含的内容进行分词划分,生成分词组;
计算所述分词组与每一个预先建立的主题语义库之间的相似度;
当计算得到的所述分词组与任一所述主题语义库之间的相似度大于等于第一预设阈值时,对所述待抓取网页对应的抓取规则进行生成。
3.如权利要求2所述的方法,其特征在于,当计算得到的所述分词组与任一所述主题语义库之间的相似度大于等于第一预设阈值时,对所述待抓取网页对应的抓取规则进行生成,具体包括:
获取所述计算得到的相似度所对应的至少一个主题语义库;
获取所述待抓取网页对应的HTML文档,将所述HTML文档中最高层级的分段标签作为根节点,其他层级对应的分段标签作为分节点,构建树状结构;
由根节点开始,逐层遍历所述树状结构;
在所述树状结构中,当存在任一分节点对应的文本内容与所述至少一个主题语义库之间的相似度大于等于第二预设阈值时,获取所述任一分节点的标识;
将所述任一分节点的标识及其对应的分段标签,作为所述待抓取网页的抓取规则。
4.如权利要求2或3所述的方法,其特征在于,将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新之后,进一步包括:
将所述待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库中;
按照预设周期统计所述主题内容库中,每一个分词组的出现频率;
从所述主题内容库中的所有分词组中,选取出现频率大于等于预设频率阈值的分词组,存储至所述主题语义库中。
5.如权利要求1-3任一项所述的方法,其特征在于,所述抓取规则库的生成方法,包括:
获取样本网页的URL;
建立所述样本网页对应的预设抓取规则与所述样本网页的URL之间的对应关系,将所述对应关系存储至抓取规则库中;并
获取样本网页中包含的样本内容以及所述样本网页类型;
根据所述样本网页中包含的样本内容,对所述样本内容进行分词划分,将生成的每一个样本分词组均作为特征值;
将所有特征值存储至与所述样本网页类型相对应的预设的主题语义库中。
6.一种抓取网页内容的装置,其特征在于,包括:
第一获取单元,用于获取待抓取网页的URL;
第二获取单元,用于在抓取规则库中,获取所述待抓取网页的URL对应的抓取规则;
抓取规则生成单元,用于当无法获取到对应于所述待抓取网页的URL的抓取规则时,对所述待抓取网页中的内容进行分析,并对满足抓取条件的所述待抓取网页生成抓取规则;
更新单元,用于将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新。
7.如权利要求6所述的装置,其特征在于,所述抓取规则生成单元,具体用于:
对所述待抓取网页中包含的内容进行分词划分,生成分词组;计算所述分词组与每一个预先建立的主题语义库之间的相似度;当计算得到的所述分词组与任一所述主题语义库之间的相似度大于等于第一预设阈值时,对所述待抓取网页对应的抓取规则进行生成。
8.如权利要求7所述的装置,其特征在于,所述抓取规则生成单元,具体用于:
获取所述计算得到的相似度所对应的至少一个主题语义库;获取所述待抓取网页对应的HTML文档,将所述HTML文档中最高层级的分段标签作为根节点,其他层级对应的分段标签作为分节点,构建树状结构;由根节点开始,逐层遍历所述树状结构;在所述树状结构中,当存在任一分节点对应的文本内容与所述至少一个主题语义库之间的相似度大于等于第二预设阈值时,获取所述任一分节点的标识;将所述任一分节点的标识及其对应的分段标签,作为所述待抓取网页的抓取规则。
9.如权利要求7或8所述的装置,其特征在于,还包括存储单元,用于:
将所述待抓取网页的URL以及对应于生成的所述待抓取网页抓取规则在所述抓取规则库中进行更新之后,将所述待抓取网页对应的分词组中包含的指定词性的分词组保存至主题内容库中;按照预设周期统计所述主题内容库中,每一个分词组的出现频率;从所述主题内容库中的所有分词组中,选取出现频率大于等于预设频率阈值的分词组,存储至所述主题语义库中。
10.如权利要求6-8任一项所述的装置,其特征在于,还包括抓取规则库生成单元,还用于:
获取样本网页的URL;建立所述样本网页对应的预设抓取规则与所述样本网页的URL之间的对应关系,将所述对应关系存储至抓取规则库中;并获取样本网页中包含的样本内容以及所述样本网页类型;根据所述样本网页中包含的样本内容,对所述样本内容进行分词划分,将生成的每一个样本分词组均作为特征值;将所有特征值存储至与所述样本网页类型相对应的预设的主题语义库中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610011277.3A CN105677862A (zh) | 2016-01-08 | 2016-01-08 | 一种抓取网页内容的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610011277.3A CN105677862A (zh) | 2016-01-08 | 2016-01-08 | 一种抓取网页内容的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105677862A true CN105677862A (zh) | 2016-06-15 |
Family
ID=56299502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610011277.3A Pending CN105677862A (zh) | 2016-01-08 | 2016-01-08 | 一种抓取网页内容的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105677862A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776693A (zh) * | 2016-11-10 | 2017-05-31 | 福建中金在线信息科技有限公司 | 一种网站数据采集方法及装置 |
CN107861974A (zh) * | 2017-09-19 | 2018-03-30 | 北京金堤科技有限公司 | 一种自适应网络爬虫系统及其数据获取方法 |
CN107992501A (zh) * | 2016-10-27 | 2018-05-04 | 腾讯科技(深圳)有限公司 | 社交网络信息识别方法、处理方法及装置 |
CN108182496A (zh) * | 2018-01-02 | 2018-06-19 | 华南理工大学 | 一种城市互联网开放数据获取处理分析方法 |
CN108694197A (zh) * | 2017-04-10 | 2018-10-23 | 富士通株式会社 | 超文本抓取方法和装置 |
CN112711690A (zh) * | 2020-12-28 | 2021-04-27 | 广州品唯软件有限公司 | 获取专题页面链接方法、系统和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101763425A (zh) * | 2010-01-12 | 2010-06-30 | 苏州阔地网络科技有限公司 | 一种通用的可用于任何网页的网页内容抓取的方法 |
US8181104B1 (en) * | 2004-08-31 | 2012-05-15 | Adobe Systems Incorporated | Automatic creation of cascading style sheets |
CN102663023A (zh) * | 2012-03-22 | 2012-09-12 | 浙江盘石信息技术有限公司 | 一种提取网页内容的实现方法 |
CN102855248A (zh) * | 2011-06-29 | 2013-01-02 | 中国移动通信集团广西有限公司 | 一种用户特征信息的确定方法、装置及系统 |
CN103514234A (zh) * | 2012-06-30 | 2014-01-15 | 北京百度网讯科技有限公司 | 一种页面信息提取方法和装置 |
US20140207784A1 (en) * | 2013-01-22 | 2014-07-24 | Splunk Inc. | Sampling of events to use for developing a field-extraction rule for a field to use in event searching |
CN104391917A (zh) * | 2014-11-19 | 2015-03-04 | 四川长虹电器股份有限公司 | 一种增量抓取网页内容的方法 |
CN104866517A (zh) * | 2014-12-30 | 2015-08-26 | 智慧城市信息技术有限公司 | 一种抓取网页内容的方法及装置 |
-
2016
- 2016-01-08 CN CN201610011277.3A patent/CN105677862A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8181104B1 (en) * | 2004-08-31 | 2012-05-15 | Adobe Systems Incorporated | Automatic creation of cascading style sheets |
CN101763425A (zh) * | 2010-01-12 | 2010-06-30 | 苏州阔地网络科技有限公司 | 一种通用的可用于任何网页的网页内容抓取的方法 |
CN102855248A (zh) * | 2011-06-29 | 2013-01-02 | 中国移动通信集团广西有限公司 | 一种用户特征信息的确定方法、装置及系统 |
CN102663023A (zh) * | 2012-03-22 | 2012-09-12 | 浙江盘石信息技术有限公司 | 一种提取网页内容的实现方法 |
CN103514234A (zh) * | 2012-06-30 | 2014-01-15 | 北京百度网讯科技有限公司 | 一种页面信息提取方法和装置 |
US20140207784A1 (en) * | 2013-01-22 | 2014-07-24 | Splunk Inc. | Sampling of events to use for developing a field-extraction rule for a field to use in event searching |
CN104391917A (zh) * | 2014-11-19 | 2015-03-04 | 四川长虹电器股份有限公司 | 一种增量抓取网页内容的方法 |
CN104866517A (zh) * | 2014-12-30 | 2015-08-26 | 智慧城市信息技术有限公司 | 一种抓取网页内容的方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992501A (zh) * | 2016-10-27 | 2018-05-04 | 腾讯科技(深圳)有限公司 | 社交网络信息识别方法、处理方法及装置 |
CN106776693A (zh) * | 2016-11-10 | 2017-05-31 | 福建中金在线信息科技有限公司 | 一种网站数据采集方法及装置 |
CN108694197A (zh) * | 2017-04-10 | 2018-10-23 | 富士通株式会社 | 超文本抓取方法和装置 |
CN107861974A (zh) * | 2017-09-19 | 2018-03-30 | 北京金堤科技有限公司 | 一种自适应网络爬虫系统及其数据获取方法 |
CN107861974B (zh) * | 2017-09-19 | 2018-12-25 | 北京金堤科技有限公司 | 一种自适应网络爬虫系统及其数据获取方法 |
CN108182496A (zh) * | 2018-01-02 | 2018-06-19 | 华南理工大学 | 一种城市互联网开放数据获取处理分析方法 |
CN112711690A (zh) * | 2020-12-28 | 2021-04-27 | 广州品唯软件有限公司 | 获取专题页面链接方法、系统和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109241538B (zh) | 基于关键词和动词依存的中文实体关系抽取方法 | |
CN105677862A (zh) | 一种抓取网页内容的方法及装置 | |
US10713441B2 (en) | Hybrid learning system for natural language intent extraction from a dialog utterance | |
Phan et al. | Pair-linking for collective entity disambiguation: Two could be better than all | |
CN110727839B (zh) | 自然语言查询的语义解析 | |
US11520992B2 (en) | Hybrid learning system for natural language understanding | |
US9626358B2 (en) | Creating ontologies by analyzing natural language texts | |
CN110795911B (zh) | 在线文本标签的实时添加方法、装置及相关设备 | |
CN104866517A (zh) | 一种抓取网页内容的方法及装置 | |
CN105095433B (zh) | 实体推荐方法及装置 | |
CN107301170B (zh) | 基于人工智能的切分语句的方法和装置 | |
KR102354127B1 (ko) | 데이터 모델을 구축하는 방법, 장치, 기기 및 매체 | |
CN108052659A (zh) | 基于人工智能的搜索方法、装置和电子设备 | |
CN112115232A (zh) | 一种数据纠错方法、装置及服务器 | |
CN105608218A (zh) | 智能问答知识库的建立方法、建立装置及建立系统 | |
CN112883165B (zh) | 一种基于语义理解的智能全文检索方法及系统 | |
JP2019082931A (ja) | 検索装置、類似度算出方法、およびプログラム | |
CN110909126A (zh) | 一种信息查询方法及装置 | |
CN112100470B (zh) | 基于论文数据分析的专家推荐方法、装置、设备及存储介质 | |
CN109189907A (zh) | 一种基于语义匹配的检索方法及装置 | |
US20220229994A1 (en) | Operational modeling and optimization system for a natural language understanding (nlu) framework | |
CN113204643B (zh) | 一种实体对齐方法、装置、设备及介质 | |
CN114676698A (zh) | 一种基于知识图谱的设备故障关键信息提取方法及系统 | |
CN117743593A (zh) | 基于知识图谱的设备在线辅助维修方法及系统 | |
CN111581960A (zh) | 一种获取医学文本语义相似度的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160615 |