CN106599280B - 确定网页节点路径信息的方法及装置 - Google Patents
确定网页节点路径信息的方法及装置 Download PDFInfo
- Publication number
- CN106599280B CN106599280B CN201611208259.0A CN201611208259A CN106599280B CN 106599280 B CN106599280 B CN 106599280B CN 201611208259 A CN201611208259 A CN 201611208259A CN 106599280 B CN106599280 B CN 106599280B
- Authority
- CN
- China
- Prior art keywords
- information
- node
- destination node
- global buffer
- storage location
- 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.)
- Active
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了确定网页节点路径的信息方法及装置;该方法包括:根据网页中目标节点的标识信息,查找预置字典中是否存在目标节点,字典中存储有网页节点的属性信息在全局缓冲区的存储位置信息;若存在,根据存储位置信息从全局缓冲区中确定目标节点的路径信息,全局缓冲区包括各个节点的存储位置信息与网页对应的DOM树中各个节点的层级关系的对应信息。本发明中,根据字典中目标节点的属性信息在全局缓冲区的存储位置信息,在全局缓冲区中查找到目标节点的属性信息,并根据全局缓冲区中网页中的各个节点之间的层级关系,以及各个节点的属性信息,确定出目标节点的路径信息,相比于现有技术,本发明提高了确定目标节点的路径信息的效率。
Description
技术领域
本发明涉及通讯技术领域,具体而言,本发明涉及确定网页节点路径的信息方法及装置。
背景技术
目前,为了满足不同用户的需求,一个网页中通常包含多个链接,其中,每个链接都会对应一条唯一路径,用户可以根据自身需求,通过这些路径访问到目标信息。
网页的结构是DOM树结构,如图1所示为一个结构简单的DOM树,树中节点A、B、C、D和E均表示链接,这些链接可以表示不同的网页,也可以表示相同网页中不同的版块,例如,图片、邮件地址或应用等。在现有技术中,当需要解析网页中目标节点对应的链接时,会先计算目标节点的路径,具体地,计算从根节点出发到目标节点的路径,如图1所示,当用户访问节点D对应的链接时,会先计算从节点A到节点B,以及从节点B到节点D的路径,当获得节点D的路径信息后,可依据路径信息执行网页聚类、页面展示等后续操作。
由上述现有技术计算节点路径的方法可知:当网页对应的DOM树结构十分复杂时,解析从根节点到目标节点的路径需要经过大量的运算,这样导致计算节点的路径信息的效率较低。
发明内容
本发明针对现有技术的缺点,提出了一种确定网页节点路径的信息方法及装置,用于解决现有技术中服务器在计算节点的路径时效率较低的问题。
本发明的实施例提供了一种确定网页节点路径信息的方法,包括:
根据网页中目标节点的标识信息,查找预置的字典中是否存在所述目标节点,所述字典中存储有所述网页中节点的属性信息在全局缓冲区的存储位置信息;
若存在,根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息,所述全局缓冲区包括所述网页中各个节点的存储位置信息与所述网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息。
其中,依据所述网页对应的DOM树从根节点至子节点的顺序确定所述网页中的各个节点的路径信息。
其中,所述根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息的步骤,包括:
根据所述存储位置信息,从所述全局缓冲区中确定所述目标节点的属性信息;
根据所述DOM树中各个节点的层级关系,确定所述DOM树中的目标节点之上的全部节点对应的属性信息;
根据所述目标节点的属性信息、以及所述DOM树中目标节点之上的全部节点对应的属性信息,确定所述目标节点的路径信息。
其中,所述方法还包括:
若所述目标节点不存在所述字典中,则在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息;
根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
其中,所述在所述字典中查找所述目标节点所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息的步骤,包括:
根据所述目标节点的属性信息,通过递归方式查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息。
其中,所述方法还包括:
若目标节点为根节点,确定所述目标节点的属性信息在所述全局缓冲区的存储位置信息位于所述全局缓冲区的末尾。
其中,所述存储位置信息包括网页中节点的属性信息在全局缓冲区的起始位置信息及长度信息。
本发明的又一实施例提供了一种确定网页节点路径信息的装置,包括:
第一查找单元和第一确定单元,其中:
所述第一查找单元,用于根据网页中目标节点的标识信息,查找预置的字典中是否存在所述目标节点,所述字典中存储有所述网页中节点的属性信息在全局缓冲区的存储位置信息;
所述第一确定单元,用于当所述字典中存在所述目标节点时,根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息,所述全局缓冲区包括所述网页中各个节点的存储位置信息与所述网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息。
其中,所述第一确定单元依据所述网页对应的DOM树从根节点至子节点的顺序确定所述网页中的各个节点的路径信息。
其中,所述第一确定单元根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息的步骤,包括:
根据所述存储位置信息,从所述全局缓冲区中确定所述目标节点的属性信息;
根据所述DOM树中各个节点的层级关系,确定所述DOM树中的目标节点之上的全部节点对应的属性信息;
根据所述目标节点的属性信息、以及所述DOM树中目标节点之上的全部节点对应的属性信息,确定所述目标节点的路径信息。
其中,所述装置还包括第二查找单元和第二确定单元,其中:
所述第二查找单元,用于当所述目标节点不存在所述字典时,在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息;
所述第二确定单元,用于根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
其中,所述第二查找单元在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,包括:
根据所述目标节点的属性信息,通过递归方式查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息。
其中,所述装置还包括第三确定单元,用于当所述目标节点为根节点时,确定所述目标节点的属性信息在所述全局缓冲区的存储位置信息位于所述全局缓冲区的末尾。
其中,所述存储位置信息包括网页中节点的属性信息在全局缓冲区的起始位置信息及长度信息。
本发明实施例中,在预置的字典中存储网页中节点的属性信息在全局缓冲区的存储位置,在全局缓冲区中将网页中的各个节点的存储位置信息与网页中的DOM文档对象模型树中各个节点的层级关系的对应信息。首先,根据目标节点的标识信息,在字典中查找目标节点的属性信息在全局缓冲区的存储位置信息,其次,根据存储位置信息,在全局缓冲区中查找到目标节点的属性信息,然后,根据全局缓冲区中存储的网页中的各个节点之间的层级关系,确定DOM树中目标节点之上的全部节点对应的属性信息,最后,根据目标节点的tag信息、以及DOM树中目标节点之上的全部节点对应的tag信息,确定目标节点的路径信息,这样,避免了现有技术在计算目标节点的路径信息时,需要从根节点出发一直计算到目标节点,才可获得目标节点的路径位置信息问题,相比于现有技术,本发明提高了确定目标节点的路径信息的效率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为现有技术提供的一种结构简单的DOM树结构;
图2为本发明实施例的一种确定网页节点路径信息的方法的流程示意图;
图3为本发明中一个优选实施例的确定网页节点路径信息的DOM树、对应的字典及全局缓冲区的示意图;
图4为本发明实施例的一种全局缓冲区的示意图;
图5为本发明实施例的一种确定网页节点路径信息的装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本发明实施例提供了一种确定网页节点路径信息的方法,该方法的流程示意图如图2所示,具体包括以下步骤:
S201:根据网页中目标节点的标识信息,查找预置的字典中是否存在目标节点,字典中存储有网页中节点的属性信息在全局缓冲区的存储位置信息;
S202:若存在,根据存储位置信息从全局缓冲区中确定目标节点的路径信息,全局缓冲区包括网页中各个节点的存储位置信息与网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息;
S203:若不存在,则在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,并根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
需要说明的是:本发明中的网页,可以是HTML编写的网页,或者是HTML结合XML编写的网页,或者是HTML结合XTML编写的网页,或者是HTML结合JS编写的网页,等等,这里不作具体限定。
本发明实施例中,在预置的字典中存储网页中节点的属性信息在全局缓冲区的存储位置,在全局缓冲区中将网页中的各个节点的存储位置信息与网页中的DOM文档对象模型树中各个节点的层级关系的对应信息。首先,根据目标节点的标识信息,在字典中查找目标节点的属性信息在全局缓冲区的存储位置信息,其次,根据存储位置信息,在全局缓冲区中查找到目标节点的属性信息,然后,根据全局缓冲区中存储的网页中的各个节点之间的层级关系,确定DOM树中目标节点之上的全部节点对应的属性信息,最后,根据目标节点的tag信息、以及DOM树中目标节点之上的全部节点对应的tag信息,确定目标节点的路径信息,这样,避免了现有技术在计算目标节点的路径信息时,需要从根节点出发一直计算到目标节点,才可获得目标节点的路径位置信息问题,相比于现有技术,本发明提高了确定目标节点的路径信息的效率。
以下针对以上各个步骤的具体实现做进一步的说明,但在对各个步骤详细说明之前,为了更清楚的理解本发明,需要对本发明中所述的“预置的字典”和“全局缓冲区”进行详细说明,具体如下:
如图3所示,图中左半部分为一个简单的DOM树结构,具体包括“bookstore”、“title”、“year”、“author”和“price”五个节点;图中右半部分为预置的字典和全局缓冲区,全局缓冲区包括网页中各个节点的存储位置信息与该网页对应的DOM文档对象模型树(DOM树)中各个节点的层级关系的对应关系。
具体地,全局缓冲区中存储的网页中的各个节点的属性信息(tag信息),且存储方式满足有序性,具体可以是根据对网页解析的顺序,从DOM树的根节点出发,进行左序遍历或右序遍历,将DOM树中各层中各个节点的tag信息有序的存储在全局缓冲区,这样,全局缓存区可以较为清楚的展示出DOM树中各个节点之间的层级关系,也就是说,可以从全局缓冲区中确定出网页中各个节点的路径信息,具体的确定方法会在下述S202中详细说明。
上述在全局缓冲区中存储网页中各个节点的tag信息的方式,可以将根节点的tag信息存储在全局缓冲区的末尾,再根据网页DOM树中各个节点之间的层级关系,将其它节点的tag信息有序的存储在全局缓冲区中,如图3所示,根节点“bookstore”的tag信息位于全局缓冲区的末尾,其它节点按照从左往右的方式,将DOM树中各层的节点的tag信息存储在全局缓冲区中;也可以将根节点的tag信息存储在全局缓冲区的开头,再根据网页DOM树中各个节点之间的层级关系,将其它节点的tag信息有序的存储在全局缓冲区,这里不作具体限定。
预置的字典中存储有网页中节点的tag信息在全局缓冲区的存储位置信息;该存储位置信息有多种表示方式,一种优选的表示方式为:网页中节点的tag信息在全局缓冲区的起始位置信息和长度信息,如图3所示,根节点“bookstore”的tag信息在全局缓冲区的存储位置信息为:起始位置为“0”,tag信息的长度为“10”。
存储位置信息还可以只表示为网页节点的tag信息在全局缓冲区的起始位置信息,具体的应用场景是:固定全局缓冲区中每个节点的tag信息的长度,当服务器根据目标节点的tag信息的起始位置信息,在全局缓冲区中找到该目标节点的tag信息时,只要将固定长度中的信息读出,便可确定出该目标节点的tag信息,这部分内容将也会在下述S202中详细说明。
另外,预置的字典中可以存储网页中全部节点的tag信息在全局缓冲区的存储位置信息,也可以存储网页中部分节点的tag信息在全局缓冲区的存储位置信息。
在对“预置的字典”和“全局缓冲区”说明之后,下面对S201、S202和S203进行详细说明:
S201:根据网页中目标节点的标识信息,查找预置的字典中是否存在所述目标节点。
在本步骤中,根据网页中的目标节点的标识信息,在字典中查找是否存在目标节点。如图3所示的DOM树,假设目标节点为“author”,如果目标节点“author”的标识信息为“C”,则根据该标识信息,从字典中查找是否存在该目标节点。
S202:若存在,根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息。
若根据目标节点的标识信息,确定字典中存在目标节点,则从字典获取目标节点的tag信息在全局缓冲区的存储位置信息,如图3所示,假设目标节点为“author”的标识信息为“C”,在确定字典中存在标识信息为“C”的节点,即目标节点“author”后,从字典中读取节点“author”的存储位置信息为:起始位置为“19”,长度为“6”,具体表示为:目标节点“author”的tag信息的起始位置位于全局缓冲区的第19字节处,且tag信息的长度为6个字节。
在获得目标节点的tag信息在全局缓冲区的存储位置信息后,根据该存储位置信息,从全局缓冲区中确定目标节点的路径信息。
确定目标节点的路径信息的方法为:依据网页对应的DOM树,从根节点至子节点的顺序确定网页中的各个节点的路径信息,具体包括以下步骤:
S2021:根据目标节点的tag信息在全局缓冲区的存储位置信息,从全局缓冲区中确定目标节点的属性信息;
S2022:根据DOM树中各个节点的层级关系,确定DOM树中的目标节点之上的全部节点对应的tag信息;
S2023:根据目标节点的tag信息、以及DOM树中目标节点之上的全部节点对应的tag信息,确定目标节点的路径信息。
沿用上述例子,首先,在字典中确定出目标节点“author”的tag信息在全局缓冲区的存储位置信息后,根据该存储位置信息,从全局缓冲区的第19字节处找到目标节点的tag信息的起始位置,且根据该tag信息的长度为6,确定目标节点的tag信息为“author”;其次,根据DOM树中各个节点的层级关系,确定目标节点“author”的父节点的tag信息为“title”,以及节点“title”的父节点为根节点,且tag信息为“bookstore”;最后,将目标节点的tag信息、以及DOM树中目标节点以上的全部节点的tag信息进行拼接,获得目标节点的路径信息,即:将目标节点“author”的tag信息、以及父节点“title”和根节点“bookstore”的tag信息进行拼接,获得目标节点的路径信息为“bookstore/title/author”。
前述内容中提到:字典中存储的节点的tag信息在全局缓冲区的存储位置信息,还可以只表示为节点的tag信息在全局缓冲区的起始位置信息,如图4所示,为这种情况下的具体应用场景,假设固定全局缓冲区中每个节点存储tag信息的长度为7个字节,若目标信息的tag信息的存储位置信息为:起始位置m,则在全局缓冲区的第m字节处,找到目标信息的tag信息的起始位置,并读出固定长度7个字节中所保存的信息,则该信息为目标节点的tag信息,因此,读出目标信息的路径信息为“man”。
S203:若不存在,则在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,并根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
若根据目标节点的标识信息,确定字典中不存在目标节点时,则在字典中查找目标节点在DOM树中对应父节点的属性信息在全局缓冲区的存储位置信息。具体地,根据目标节点的tag信息,并通过递归方式查找目标节点对应父节点在全局缓冲区的存储位置信息。
如图3所示,假设目标节点为“price”,如果目标节点的标识信息为“D”,确定在字典中不存在目标节点,这时,根据目标节点的tag信息,通过递归方式,在字典中查找目标节点“price”对应的父节点“title”的tag信息在全局缓冲区的存储位置信息,该存储位置信息为:起始位置为“10”,长度为“5”,根据该存储位置信息,在全局缓冲区的第10字节处找到字节“title”的tag信息起始位置,并根据长度确定出节点“title”的tag信息为“title”,其次,根据DOM树中各个节点的层级关系,确定节点“title”的父节点为根节点“bookstore”,最后,将目标节点的tag信息、以及DOM树中目标节点以上的全部节点的tag信息进行拼接,获得目标节点的路径信息,即:将目标节点“price”的tag信息、以及父节点“title”和根节点“bookstore”的tag信息进行拼接,获得目标节点“price”的路径信息为“bookstore/title/price”。
由上述确定目标节点的路径信息的方法可知:因为全局缓冲区是按照解析网页DOM树中各节点的顺序,将网页中所有节点的tag信息存储在其中的,因此,在计算目标节点的路径时,只需在全局缓冲区中找到目标节点的tag信息,并根据DOM树中各节点之间的层级关系,从全局缓冲区直接获取DOM树中目标节点之上节点的tag信息,就可以确定出目标节点的路径信息,避免了在每次计算目标节点的路径信息时,都要从根节点计算到目标节点才可以确定出目标节点的路径信息的问题,显然,相比于现有技术,本发明确定目标节点的路径信息的效率更高。
需要说明的是:以上内容中的字典中的“标识信息”、“tag信息”“起始位置信息”、“长度”,以及全局缓冲区中的“路径信息”等元素的表示方式,均只是为了方便理解本发明而进行示例性的说明,在实际应用中,这些元素的表示方式会更加的复杂。
下面对本发明涉及到的“预置的字典”和“全局缓冲区”的相关逻辑进行示例性的详细说明:
1、定义全局缓冲区,全局缓冲区的长度为最大网页的长度,此时全局缓冲区中没有存储任何信息。
定义字典,例如:定义id_spec_map_t字典,优选地,字典对应的哈希(hash)个数设置为最大网页的节点个数,目的是可以将网页中所有节点的存储位置信息都存储在字典中,同样,此时词典中没有存储任何信息。
2、在字典中增加节点,具体可以将网页中全部节点或部分节点的tag信息在全局缓冲区的存储位置信息存储在字典中,并将网页中全部节点的tag信息存储在全局缓冲区中。
例如,STR_POS*str_node=(STR_POS*)id_spec_map_add_node(ism,id),通过“id_spec_map_add_node”接口增加“key”为“id”的网页节点,并转化为自定义类型“STR_POS”,得到STR_POS对象存储在字典中,并且将id对应的node节点的路径信息的存储位置信息记录在字典中,例如,“str_node->begin;//节点的起始位置信息”。
3、根据目标节点的标识信息,查找目标节点是否存在于字典中,例如,if(NULL!=(usr_node=id_spec_map_get_node(ism,id))){return((STR_POS*)(usr_node))->beg;。
4、提取网页节点的tag信息,例如,遍历node->html_tag.attribute,如果“attributes->name”为“id”或者“class”,则将其值attributes->value记录下来,一直遍历“next”,直到“node->html_tag.attribute”为空。
遍历完成后在id值前加上“#”,class值前加上“.”,如果class属性含有多个值,可以将这多个值以空格合并成一字符串,从而得到node节点的tag信息,最后加上“/”,即该节点的tag信息为“#id_value.class_value/”
以上有关“预置的字典”和“全局缓冲区”的逻辑均只是示例性的说明,在实际应用中,可以根据用户的需要编写相应的逻辑,这里就不再赘述。
本发明的又一实施例提供了一种确定网页节点路径信息的装置,该装置的结构示意图如图5所示,具体包括以下单元:
第一查找单元501和第一确定单元502,其中:
所述第一查找单元501,用于根据网页中目标节点的标识信息,查找预置的字典中是否存在所述目标节点,所述字典中存储有所述网页中节点的属性信息在全局缓冲区的存储位置信息;
所述第一确定单元502,用于当所述字典中存在所述目标节点时,根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息,所述全局缓冲区包括所述网页中各个节点的存储位置信息与所述网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息。
本装置的工作流程具体为:首先,第一查找单元501根据网页中目标节点的标识信息,查找预置的字典中是否存在目标节点,该字典中存储有网页中节点的属性信息在全局缓冲区的存储位置信息,其次,当字典中存在目标节点时,第一确定单元502根据该存储位置信息,从全局缓冲区中确定目标节点的属性信息,该全局缓冲区包括网页中各个节点的存储位置信息与网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息。
本发明实施例中,在预置的字典中存储网页中节点的属性信息在全局缓冲区的存储位置,在全局缓冲区中将网页中的各个节点的存储位置信息与网页中的DOM文档对象模型树中各个节点的层级关系的对应信息。首先,第一查找单元501根据目标节点的标识信息,在字典中查找目标节点的属性信息在全局缓冲区的存储位置信息,其次,第一确定单元502根据存储位置信息,在全局缓冲区中查找到目标节点的属性信息,然后,根据全局缓冲区中存储的网页中的各个节点之间的层级关系,确定DOM树中目标节点之上的全部节点对应的属性信息,最后,根据目标节点的tag信息、以及DOM树中目标节点之上的全部节点对应的tag信息,确定目标节点的路径信息,这样,避免了现有技术在计算目标节点的路径信息时,需要从根节点出发一直计算到目标节点,才可获得目标节点的路径位置信息问题,相比于现有技术,本发明提高了确定目标节点的路径信息的效率。
本装置实施例实现确定网页节点路径信息的方式有很多种,例如,在第一种实施方式中,所述第一确定单元502依据所述网页对应的DOM树从根节点至子节点的顺序确定所述网页中的各个节点的路径信息。
在第二种实施方式中,所述第一确定单元502根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息的步骤,包括:
根据所述存储位置信息,从所述全局缓冲区中确定所述目标节点的属性信息;
根据所述DOM树中各个节点的层级关系,确定所述DOM树中的目标节点之上的全部节点对应的属性信息;
根据所述目标节点的属性信息、以及所述DOM树中目标节点之上的全部节点对应的属性信息,确定所述目标节点的路径信息。
在第三种实施方式中,所述装置还包括第二查找单元503和第二确定单元504,其中:
所述第二查找单元503,用于当所述目标节点不存在所述字典时,在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息;
所述第二确定单元504,用于根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
在第四种实施方式中,所述第二查找单元503在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,包括:
根据所述目标节点的属性信息,通过递归方式查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息。在第五种实施方式中,所述装置还包括第三确定单元505,用于当所述目标节点为根节点时,确定所述目标节点的属性信息在所述全局缓冲区的存储位置信息位于所述全局缓冲区的末尾。
在又一种实施方式中,所述存储位置信息包括网页中节点的属性信息在全局缓冲区的起始位置信息及长度信息。
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种确定网页节点路径信息的方法,包括:
根据网页中目标节点的标识信息,查找预置的字典中是否存在所述目标节点,所述字典中存储有所述网页中节点的属性信息在全局缓冲区的存储位置信息;
若存在,根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息,所述全局缓冲区包括所述网页中各个节点的存储位置信息与所述网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息;
其中,依据所述网页对应的DOM树从根节点至子节点的顺序确定所述网页中的各个节点的路径信息。
2.根据权利要求1所述的方法,其中,所述根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息的步骤,包括:
根据所述存储位置信息,从所述全局缓冲区中确定所述目标节点的属性信息;
根据所述DOM树中各个节点的层级关系,确定所述DOM树中的目标节点之上的全部节点对应的属性信息;
根据所述目标节点的属性信息、以及所述DOM树中目标节点之上的全部节点对应的属性信息,确定所述目标节点的路径信息。
3.根据权利要求1或2所述的方法,其中,所述方法还包括:
若所述目标节点不存在所述字典中,则在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息;
根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
4.根据权利要求3所述的方法,其中,所述在所述字典中查找所述目标节点所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息的步骤,包括:
根据所述目标节点的属性信息,通过递归方式查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息。
5.根据权利要求1或2所述的方法,其中,所述方法还包括:
若目标节点为根节点,确定所述目标节点的属性信息在所述全局缓冲区的存储位置信息位于所述全局缓冲区的末尾。
6.根据权利要求1或2所述的方法,其中,所述存储位置信息包括网页中节点的属性信息在全局缓冲区的起始位置信息及长度信息。
7.一种确定网页节点路径信息的装置,包括:
第一查找单元和第一确定单元,其中:
所述第一查找单元,用于根据网页中目标节点的标识信息,查找预置的字典中是否存在所述目标节点,所述字典中存储有所述网页中节点的属性信息在全局缓冲区的存储位置信息;
所述第一确定单元,用于当所述字典中存在所述目标节点时,根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息,所述全局缓冲区包括所述网页中各个节点的存储位置信息与所述网页对应的DOM文档对象模型树中各个节点的层级关系的对应信息;
其中,所述第一确定单元依据所述网页对应的DOM树从根节点至子节点的顺序确定所述网页中的各个节点的路径信息。
8.根据权利要求7所述的装置,其中,所述第一确定单元根据所述存储位置信息从所述全局缓冲区中确定所述目标节点的路径信息的步骤,包括:
根据所述存储位置信息,从所述全局缓冲区中确定所述目标节点的属性信息;
根据所述DOM树中各个节点的层级关系,确定所述DOM树中的目标节点之上的全部节点对应的属性信息;
根据所述目标节点的属性信息、以及所述DOM树中目标节点之上的全部节点对应的属性信息,确定所述目标节点的路径信息。
9.根据权利要求7或8所述的装置,其中,所述装置还包括第二查找单元和第二确定单元,其中:
所述第二查找单元,用于当所述目标节点不存在所述字典时,在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息;
所述第二确定单元,用于根据所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,从所述全局缓冲区中确定所述目标节点的路径信息。
10.根据权利要求9所述的装置,其中,所述第二查找单元在所述字典中查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息,包括:
根据所述目标节点的属性信息,通过递归方式查找所述目标节点在所述DOM树中对应父节点的属性信息在所述全局缓冲区的存储位置信息。
11.根据权利要求 7或8所述的装置,其中,所述装置还包括第三确定单元,用于当所述目标节点为根节点时,确定所述目标节点的属性信息在所述全局缓冲区的存储位置信息位于所述全局缓冲区的末尾。
12.根据权利要求7或8所述的装置,其中,所述存储位置信息包括网页中节点的属性信息在全局缓冲区的起始位置信息及长度信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611208259.0A CN106599280B (zh) | 2016-12-23 | 2016-12-23 | 确定网页节点路径信息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611208259.0A CN106599280B (zh) | 2016-12-23 | 2016-12-23 | 确定网页节点路径信息的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106599280A CN106599280A (zh) | 2017-04-26 |
CN106599280B true CN106599280B (zh) | 2019-11-22 |
Family
ID=58601419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611208259.0A Active CN106599280B (zh) | 2016-12-23 | 2016-12-23 | 确定网页节点路径信息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106599280B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334560B (zh) * | 2018-01-03 | 2022-04-15 | 腾讯科技(深圳)有限公司 | 一种信息获取方法及相关设备 |
CN110309364B (zh) * | 2018-03-02 | 2023-03-28 | 腾讯科技(深圳)有限公司 | 一种信息抽取方法及装置 |
CN108694242B (zh) * | 2018-05-14 | 2023-03-21 | 中国平安财产保险股份有限公司 | 基于dom的节点查找方法、设备、存储介质及装置 |
CN113438317B (zh) * | 2021-07-08 | 2022-08-05 | 数字广东网络建设有限公司 | 一种网关数据处理的方法及装置 |
CN116049588A (zh) * | 2022-12-30 | 2023-05-02 | 格兰菲智能科技有限公司 | 页面加载方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944094A (zh) * | 2009-07-06 | 2011-01-12 | 富士通株式会社 | 网页信息提取方法和装置 |
CN102831121A (zh) * | 2011-06-15 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 一种网页信息抽取的方法和系统 |
CN103049494A (zh) * | 2012-12-07 | 2013-04-17 | 华为技术有限公司 | 一种xml文档的表格存储方法及装置 |
CN104965901A (zh) * | 2015-06-30 | 2015-10-07 | 北京奇虎科技有限公司 | 一种目标页面内容抓取方法和装置 |
-
2016
- 2016-12-23 CN CN201611208259.0A patent/CN106599280B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944094A (zh) * | 2009-07-06 | 2011-01-12 | 富士通株式会社 | 网页信息提取方法和装置 |
CN102831121A (zh) * | 2011-06-15 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 一种网页信息抽取的方法和系统 |
CN103049494A (zh) * | 2012-12-07 | 2013-04-17 | 华为技术有限公司 | 一种xml文档的表格存储方法及装置 |
CN104965901A (zh) * | 2015-06-30 | 2015-10-07 | 北京奇虎科技有限公司 | 一种目标页面内容抓取方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106599280A (zh) | 2017-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106599280B (zh) | 确定网页节点路径信息的方法及装置 | |
CN110059320B (zh) | 实体关系抽取方法、装置、计算机设备和存储介质 | |
WO2022218186A1 (zh) | 个性化知识图谱的生成方法、装置及计算机设备 | |
US9558211B1 (en) | Incremental schema consistency validation on geographic features | |
US20090049062A1 (en) | Method for Organizing Structurally Similar Web Pages from a Web Site | |
CN109325201A (zh) | 实体关系数据的生成方法、装置、设备及存储介质 | |
Cox et al. | A geologic timescale ontology and service | |
CN107220307B (zh) | 网页搜索方法和装置 | |
CN109086133B (zh) | 在内存中维护数据的方法和系统 | |
CN103294781A (zh) | 一种用于处理页面数据的方法与设备 | |
JP2009520284A (ja) | Xmlファイルデータのアクセス方法 | |
US20130311507A1 (en) | Representing Incomplete and Uncertain Information in Graph Data | |
CN110851664B (zh) | 一种面向主题的社交网络节点重要度评估方法 | |
CN110377884A (zh) | 文档解析方法、装置、计算机设备及存储介质 | |
CN108021692A (zh) | 一种监控网页的方法、服务器及计算机可读存储介质 | |
CN113157899B (zh) | 一种大数据画像分析方法、服务器及可读存储介质 | |
CN113535986B (zh) | 一种应用于医学知识图谱的数据融合方法及装置 | |
CN114661861A (zh) | 文本匹配方法及装置、存储介质、终端 | |
WO2020199947A1 (zh) | 摘要生成方法、装置和设备以及项目管理方法 | |
CN104484337B (zh) | Xml文档的存储方法 | |
CN113704415B (zh) | 医学文本的向量表示生成方法和装置 | |
US8983980B2 (en) | Domain constraint based data record extraction | |
US20120310938A1 (en) | Information organizing sytem and information organizing method | |
CN112632223A (zh) | 案事件知识图谱构建方法及相关设备 | |
US9165020B2 (en) | String substitution apparatus, string substitution method and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20191118 Address after: Room 2309, building 20, building 12, No. 93 Jianguo Road, Beijing, Chaoyang District, China Patentee after: Beijing Fu Tong Tong Technology Co., Ltd. Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park) Patentee before: Beijing Qihu Technology Co., Ltd. |
|
TR01 | Transfer of patent right |