CN112148298A - Html数据解析方法、装置、计算机设备和存储介质 - Google Patents

Html数据解析方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN112148298A
CN112148298A CN202010952980.0A CN202010952980A CN112148298A CN 112148298 A CN112148298 A CN 112148298A CN 202010952980 A CN202010952980 A CN 202010952980A CN 112148298 A CN112148298 A CN 112148298A
Authority
CN
China
Prior art keywords
html data
mark
name
analysis
tag
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
Application number
CN202010952980.0A
Other languages
English (en)
Inventor
徐静
范渊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DBAPPSecurity Co Ltd
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Hangzhou Dbappsecurity Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Dbappsecurity Technology Co Ltd filed Critical Hangzhou Dbappsecurity Technology Co Ltd
Priority to CN202010952980.0A priority Critical patent/CN112148298A/zh
Publication of CN112148298A publication Critical patent/CN112148298A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种HTML数据解析方法、装置、计算机设备和存储介质,该方法包括:获取HTML数据,并对所述HTML数据进行标记解析得到标记名称;基于所述标记名称与预设重写标记进行匹配,得到匹配信息;根据所述匹配信息以及预设双解析规则,选取对应解析子规则;所述预设双解析规则包括至少两种所述解析子规则;根据所述解析子规则对所述标记名称对应的HTML数据段进行解析;重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。通过本申请,使HTML数据解析方式更加灵活,提高了解析本身的速度,降低了交互带来的性能负担,减短了用户对网站系统访问的响应时间。

Description

HTML数据解析方法、装置、计算机设备和存储介质
技术领域
本申请涉及页面处理技术领域,特别是涉及一种HTML数据解析方法、装置、计算机设备和存储介质。
背景技术
随着互联网及其应用的快速发展,绝大多数企业都建立自己的网站,增强对外联络,加速业务流程,客户对网站系统访问的响应时间、网站内容以及所提供服务的可靠性、即时性等要求也越来越高。
通常情况下,标准的HTML树解析器需要检索整个文件以生成完整的DOM树。浏览器很少需要处理大小超过1Mb的HTML页面,并且平均页面加载时间最多约为3s。对于浏览器的HTML解析器来说,大约3Mbps的加载量是可以接受的。然而,在某些系统中,每个CPU可能拥有数百兆的流量,交互负担大、降低了系统的响应时间,使得以单台服务器来支撑整个网站的系统无法满足客户需求。
发明内容
本申请实施例提供了一种HTML数据解析方法、装置、计算机设备和存储介质,以至少解决相关技术中HTML数据解析效率低的问题。
第一方面,本申请实施例提供了一种HTML数据解析方法,包括:
获取HTML数据,并对所述HTML数据进行标记解析得到标记名称;
基于所述标记名称与预设重写标记进行匹配,得到匹配信息;
根据所述匹配信息以及预设双解析规则,选取对应解析子规则;所述预设双解析规则包括至少两种所述解析子规则;
根据所述解析子规则对所述标记名称对应的HTML数据段进行解析;
重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。
在其中一些实施例中,所述HTML数据为HTML字符串或HTML字节流。
在其中一些实施例中,基于所述标记名称与预设重写标记进行匹配,得到匹配信息,包括:
根据所述标记名称与预设重写标记判定是否需要标记附加信息;
当需要标记附加信息时,基于所述标记名称获取对应的标记附加信息;
根据所述标记名称和对应的标记附加信息,与预设重写标记进行匹配,得到匹配信息。
在其中一些实施例中,所述标记附加信息包括对应的标记名称的属性。
在其中一些实施例中,根据所述匹配信息以及预设双解析规则,选取对应解析子规则,包括:
当所述标记名称与预设重写标记匹配时,选取对应解析子规则为:跳过对所述标记名称对应的HTML数据段的解析;所述标记名称包括开始标记和结束标记,所述标记名称对应的HTML数据段位于所述开始标记和所述结束标记之间。
在其中一些实施例中,根据所述匹配信息以及预设双解析规则,选取对应解析子规则,包括:
当所述标记名称与预设重写标记不匹配时,选取对应解析子规则为:解析所述标记名称对应的HTML数据段直至所述结束标记。
在其中一些实施例中,将所述标记名称与预设重写标记进行匹配,得到匹配信息之前,还包括:
根据HTML数据中的标记名称配置重写内容,以得到预设重写标记。
第二方面,本申请实施例提供了一种HTML页面解析装置,包括:
标记名称获取单元,用于获取HTML数据,并对所述HTML数据进行标记解析得到标记名称;
匹配单元,用于基于所述标记名称与预设重写标记进行匹配,得到匹配信息;
解析规则选取单元,用于根据所述匹配信息以及预设双解析规则,选取对应解析子规则;所述预设双解析规则包括至少两种所述解析子规则;
解析单元,用于根据所述解析子规则对所述标记名称对应的HTML数据段进行解析;
循环单元,用于重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的HTML数据解析方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的HTML数据解析方法。
相比于相关技术,本申请实施例提供的HTML数据解析方法,通过将HTML数据进行标记解析得到的标记名称与预设重写标记进行匹配,并根据根据所述匹配信息以及预设双解析规则,选取对应解析子规则,可以根据预设重写标记设置数据匹配和快速解析方法,使HTML数据解析方式更加灵活,提高了解析本身的速度,降低了交互带来的性能负担,从而减短了用户对网站系统访问的响应时间。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请其中一个实施例中HTML数据解析方法的流程示意图;
图2是根据本申请其中一个优选实施例中HTML数据解析方法的流程示意图;
图3是根据本申请其中一个实施例中HTML数据解析装置的结构框图;
图4是根据本申请其中一个实施例中计算机设备的结构框图。
附图说明:201、标记名称获取单元;202、匹配单元;203、解析规则选取单元;204、解析单元;205、循环单元;40、总线;41、处理器;42、存储器;43、通信接口。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
万维网(World Wide Web,WWW或Web)是目前应用最为广泛的Internet服务之一。万维网以图形界面和超文本链接方式来组织资源信息,是一个基于超文本的方便用户在Internet上搜索和浏览信息的分布式超媒体信息服务系统。在该系统中,所有资源由统一的资源标识符(URL)标识资源在网络中的位置,这些资源用超文本标记语言(HTML)标记成超文本文件,通过超文本传输协议(HTTP)传送给使用者。
本申请中提供的HTML数据解析方法可应用于浏览器对各种应用或服务终端访问网站、浏览网络页面的过程对HTML文件的解析过程中。通过对HTML数据进行解析,可以获取超文本标记语言(HTML)定义的超文本文件的标题、图像定位、表格和文本格式,使得浏览器以特定的结构和风格进行访问信息显示。
本实施例提供了一种HTML数据解析方法。图1是根据本申请实施例的HTML数据解析方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,获取HTML数据,并对所述HTML数据进行标记解析得到标记名称。
在本实施例中,当用户访问网页时,DNS服务器即域名解析系统根据用户提供的域名查找对应的IP地址,找到后,系统会向对应IP地址的网络服务器发送一个http请求。网络服务器解析该请求并发送给数据库服务器。数据库服务器将请求的资源返回给网络服务器,网络服务器解析数据,并生成HTML数据定义的文件返回至浏览器。
其中,所述HTML数据为HTML字符串或HTML字节流。通常,所述HTML数据通过定义一系列标记名称(tag)来组织各种文档,浏览器通过对解析各种标记名称以及标签名称对应的HTML数据段后,将内容在页面进行显示。可选地,可以利用标记扫描器对所述HTML数据进行标记解析得到标记名称。
步骤S102,基于所述标记名称与预设重写标记进行匹配,得到匹配信息。
在本实施例中,可根据HTML数据中的标记名称配置重写内容,以得到预设重写标记。其中,所述预设重写标记可以用于标记HTML数据中的重写内容,所述重写内容可以是标题、图形、表格或文本等自定义内容,本申请不做具体限定。
可以理解,所述预设重写标记可以与所述HTML数据中的一个或多个标记名称相同,或具有相对应关系。从而通过所述标记名称与预设重写标记进行匹配,可以得到匹配信息:即标记名称对应的HTML数据段与预设重写标记对应的重写内容是否一致。
步骤S103,根据所述匹配信息以及预设双解析规则,选取对应解析子规则。所述预设双解析规则包括至少两种所述解析子规则。
步骤S104,根据所述解析子规则对所述标记名称对应的HTML数据段进行解析。
所述标记名称是由符号“<”和“>”括起来的一组代码,通常成对出现,包括开始标记和结束标记,所述标记名称对应的HTML数据段位于所述开始标记和所述结束标记之间,HTML数据段包括头部信息、段落、列表和超链接等。
在本实施例中,区别于常规的完整解析,可针对每一个标记名称根据匹配信息选取不同的解析子规则对HTML数据段进行数据解析。可选地,所述解析子规则可以是常规解析、跳过不解析、解析标记名称对应的附加信息或其他自定义解析规则等,这些都在本申请的保护范围之内。
步骤S105,重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。
在本实施例中,当完成所述标记名称对应的HTML数据段的解析后,继续对HTML数据进行标记解析得到下一标记名称,并重复以上步骤解析下一标记名称对应的HTML数据段,直至完成对所有标记名称对应的HTML数据段的解析,到达页面结尾。
综上,本申请实施例提供的HTML数据解析方法,通过将HTML数据进行标记解析得到的标记名称与预设重写标记进行匹配,并根据根据所述匹配信息以及预设双解析规则,选取对应解析子规则,可以根据预设重写标记设置数据匹配和快速解析方法,使HTML数据解析方式更加灵活,提高了解析本身的速度,降低了交互带来的性能负担,从而减短了用户对网站系统访问的响应时间。
下面通过优选实施例对本申请实施例进行描述和说明。
在其中一个实施例中,基于所述标记名称与预设重写标记进行匹配,得到匹配信息,包括:
步骤S1021,根据所述标记名称与预设重写标记判定是否需要标记附加信息;
步骤S1022,当需要标记附加信息时,基于所述标记名称获取对应的标记附加信息;
步骤S1023,根据所述标记名称和对应的标记附加信息,与预设重写标记进行匹配,得到匹配信息。
在本实施例中,基于所述标记名称与预设重写标记进行匹配时是否需要更多的标记附加信息才能得到匹配信息。其中,所述标记附加信息包括但不限于对应的标记名称的属性,如标记名称对应的类名、id、行内样式、额外信息,解释关键词等等。在一些实施方式中,标记名称与预设重写标记不相同,无法直接进行判定是否匹配,需要获取更多的标记附加信息才能得到匹配信息,这时,可以通过对标记名称进行常规解析获取标记附加信息,然后标记名称和对应的标记附加信息,与预设重写标记进行匹配。在另一些实施方式中,标记名称与预设重写标记相同,这时可以直接进行判定是否匹配,不需要获取更多的标记附加信息。
在上述实施例的基础上,其中一个实施例中,根据所述匹配信息以及预设双解析规则,选取对应解析子规则,包括:当所述标记名称与预设重写标记匹配时,选取对应解析子规则为:跳过对所述标记名称对应的HTML数据段的解析。
在本实施例中,当所述标记名称与预设重写标记匹配时,表明所述标记名称对应的HTML数据段在所述预设重写标记对应的重写范围内。这时,跳过对对应的HTML数据段的解析,不对这部分的HTML数据段生成输出。通过跳过与预设重写标记对应的重写内容的解析,提高了解析本身的速度,从而降低了客户对网站系统访问的响应时间,满足了用户对网站内容以及所提供服务的可靠性、即时性要求。
在其中一个实施例中,根据所述匹配信息以及预设双解析规则,选取对应解析子规则,包括:当所述标记名称与预设重写标记不匹配时,选取对应解析子规则为:解析所述标记名称对应的HTML数据段直至所述结束标记。
当所述标记名称与预设重写标记不匹配时,判定不能跳过所述标记名称对应的HTML数据段内容的解析。这时,对标记名称对应的HTML数据段内容进行常规解析,为该HTML数据段内的所有内容生成输出,直至遇到结束标记后完成解析。
图2是根据本申请其中一个优选实施例中HTML数据解析方法的流程图,如图2所示,在本实施例中,该流程包括如下步骤:
S201,当获取到HTML数据后,对所述HTML数据进行标记解析得到标记名称。
S202,根据所述标记名称与预设重写标记判定是否需要标记附加信息才能进行匹配。当需要标记附加信息时,基于所述标记名称获取对应的标记附加信息,并根据所述标记名称和对应的标记附加信息,与预设重写标记进行匹配,得到匹配信息;否则,将所述标记名称与预设重写标记直接进行匹配,得到匹配信息。
S203,当所述标记名称与预设重写标记匹配时,跳过对所述标记名称对应的HTML数据段的解析,不对这部分的HTML数据段生成输出,然后继续步骤S201解析标记名称。当所述标记名称与预设重写标记不匹配时,解析所述标记名称对应的HTML数据段,为该HTML数据段内的所有内容生成输出,直至所述结束标记后完成解析。上述步骤通过跳过与预设重写标记对应的重写内容的解析,提高了解析本身的速度。
S204,重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行常规解析,并判断是否到达页面结尾,当到达页面结尾时,完成HTML数据的解析。
例如,在一种具体的实施方式中,HTML数据为HTML字节流,HTML字节流包括以下内容:
Figure BDA0002677650220000081
根据HTML数据中的标记名称配置重写内容,得到预设重写标记为“<div”。根据上述HTML数据可以解析得到的标记名称包括:“<body和</body>”、“<script和</script>”、“<div和</div>”等等。则HTML数据解析方法包括以下步骤:
获取上述HTML数据并进行标记名称解析,当获取标记名称为“<script”时,所述标记名称与预设重写标记“<div”不匹配,则解析所述标记名称“<script”对应的HTML数据段直至遇到结束标记“</script>”,并判断未到达页面结尾,这时继续解析所述HTML数据“</script>”后面一个字节。当获取到标记名称“<div”时,所述标记名称与预设重写标记“<div”匹配,则跳过对所述标记名称“<div”对应的HTML数据段的解析,直至结束标记“</div>”,不对该部分的HTML数据段生成输出,同时判断得出达页面结尾,完成解析。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例还提供了一种HTML页面解析装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本申请实施例的HTML页面解析装置的结构框图,如图3所示,该装置包括:标记名称获取单元201、匹配单元202、解析规则选取单元203、解析单元204和循环单元205。
标记名称获取单元201,用于获取HTML数据,并对所述HTML数据进行标记解析得到标记名称;
匹配单元202,用于基于所述标记名称与预设重写标记进行匹配,得到匹配信息;
解析规则选取单元203,用于根据所述匹配信息以及预设双解析规则,选取对应解析子规则;所述预设双解析规则包括至少两种所述解析子规则;
解析单元204,用于根据所述解析子规则对所述标记名称对应的HTML数据段进行解析;
循环单元205,用于重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。
在其中一个实施例中,所述HTML数据为HTML字符串或HTML字节流。
在其中一个实施例中,匹配单元202,包括:判定模块、标记附加信息获取模块和匹配模块。
所述判定模块,用于根据所述标记名称与预设重写标记判定是否需要标记附加信息;
所述标记附加信息获取模块,用于当需要标记附加信息时,基于所述标记名称获取对应的标记附加信息;
所述匹配模块,用于根据所述标记名称和对应的标记附加信息,与预设重写标记进行匹配,得到匹配信息。
在其中一个实施例中,所述标记附加信息包括对应的标记名称的属性。
在其中一个实施例中,解析规则选取单元203,具体用于:
当所述标记名称与预设重写标记匹配时,选取对应解析子规则为:跳过对所述标记名称对应的HTML数据段的解析;所述标记名称包括开始标记和结束标记,所述标记名称对应的HTML数据段位于所述开始标记和所述结束标记之间。
在其中一个实施例中,解析规则选取单元203,具体用于:
当所述标记名称与预设重写标记不匹配时,选取对应解析子规则为:解析所述标记名称对应的HTML数据段直至所述结束标记。
在其中一个实施例中,HTML页面解析装置,还包括:
配置单元,用于根据HTML数据中的标记名称配置重写内容,以得到预设重写标记。
另外,结合图1-2描述的本申请实施例HTML数据解析方法可以由计算机设备来实现。图4为根据本申请实施例的计算机设备的硬件结构示意图。
计算机设备可以包括处理器41以及存储有计算机程序指令的存储器42。
具体地,上述处理器41可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
其中,存储器42可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器42可包括硬盘驱动器(Hard Disk Drive,简称为HDD)、软盘驱动器、固态驱动器(SolidState Drive,简称为SSD)、闪存、光盘、磁光盘、磁带或通用串行总线(Universal SerialBus,简称为USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器42可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器42可在数据处理装置的内部或外部。在特定实施例中,存储器42是非易失性(Non-Volatile)存储器。在特定实施例中,存储器42包括只读存储器(Read-Only Memory,简称为ROM)和随机存取存储器(RandomAccess Memory,简称为RAM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(Programmable Read-Only Memory,简称为PROM)、可擦除PROM(Erasable ProgrammableRead-Only Memory,简称为EPROM)、电可擦除PROM(Electrically Erasable ProgrammableRead-Only Memory,简称为EEPROM)、电可改写ROM(Electrically Alterable Read-OnlyMemory,简称为EAROM)或闪存(FLASH)或者两个或更多个以上这些的组合。在合适的情况下,该RAM可以是静态随机存取存储器(Static Random-Access Memory,简称为SRAM)或动态随机存取存储器(Dynamic Random Access Memory,简称为DRAM),其中,DRAM可以是快速页模式动态随机存取存储器(Fast Page Mode Dynamic Random Access Memory,简称为FPMDRAM)、扩展数据输出动态随机存取存储器(Extended Date Out Dynamic RandomAccess Memory,简称为EDODRAM)、同步动态随机存取内存(Synchronous Dynamic Random-Access Memory,简称SDRAM)等。
存储器42可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器41所执行的可能的计算机程序指令。
处理器41通过读取并执行存储器42中存储的计算机程序指令,以实现上述实施例中的任意一种HTML数据解析方法。
在其中一些实施例中,计算机设备还可包括通信接口43和总线40。其中,如图4所示,处理器41、存储器42、通信接口43通过总线40连接并完成相互间的通信。
通信接口43用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。通信接口43还可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
总线40包括硬件、软件或两者,将计算机设备的部件彼此耦接在一起。总线40包括但不限于以下至少之一:数据总线(Data Bus)、地址总线(Address Bus)、控制总线(Control Bus)、扩展总线(Expansion Bus)、局部总线(Local Bus)。举例来说而非限制,总线40可包括图形加速接口(Accelerated Graphics Port,简称为AGP)或其他图形总线、增强工业标准架构(Extended Industry Standard Architecture,简称为EISA)总线、前端总线(Front Side Bus,简称为FSB)、超传输(Hyper Transport,简称为HT)互连、工业标准架构(Industry Standard Architecture,简称为ISA)总线、无线带宽(InfiniBand)互连、低引脚数(Low Pin Count,简称为LPC)总线、存储器总线、微信道架构(Micro ChannelArchitecture,简称为MCA)总线、外围组件互连(Peripheral Component Interconnect,简称为PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(Serial AdvancedTechnology Attachment,简称为SATA)总线、视频电子标准协会局部(Video ElectronicsStandards Association Local Bus,简称为VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线40可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
该计算机设备可以基于获取到的HTML数据解析方法,执行本申请实施例中的HTML数据解析方法,从而实现结合图1-2描述的HTML数据解析方法。
另外,结合上述实施例中的HTML数据解析方法,本申请实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种HTML数据解析方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种HTML数据解析方法,其特征在于,包括:
获取HTML数据,并对所述HTML数据进行标记解析得到标记名称;
基于所述标记名称与预设重写标记进行匹配,得到匹配信息;
根据所述匹配信息以及预设双解析规则,选取对应解析子规则;所述预设双解析规则包括至少两种所述解析子规则;
根据所述解析子规则对所述标记名称对应的HTML数据段进行解析;
重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。
2.根据权利要求1所述的HTML数据解析方法,其特征在于,所述HTML数据为HTML字符串或HTML字节流。
3.根据权利要求1所述的HTML数据解析方法,其特征在于,基于所述标记名称与预设重写标记进行匹配,得到匹配信息,包括:
根据所述标记名称与预设重写标记判定是否需要标记附加信息;
当需要标记附加信息时,基于所述标记名称获取对应的标记附加信息;
根据所述标记名称和对应的标记附加信息,与预设重写标记进行匹配,得到匹配信息。
4.根据权利要求3所述的HTML数据解析方法,其特征在于,所述标记附加信息包括对应的标记名称的属性。
5.根据权利要求1所述的HTML数据解析方法,其特征在于,根据所述匹配信息以及预设双解析规则,选取对应解析子规则,包括:
当所述标记名称与预设重写标记匹配时,选取对应解析子规则为:跳过对所述标记名称对应的HTML数据段的解析;所述标记名称包括开始标记和结束标记,所述标记名称对应的HTML数据段位于所述开始标记和所述结束标记之间。
6.根据权利要求5所述的HTML数据解析方法,其特征在于,根据所述匹配信息以及预设双解析规则,选取对应解析子规则,包括:
当所述标记名称与预设重写标记不匹配时,选取对应解析子规则为:解析所述标记名称对应的HTML数据段直至所述结束标记。
7.根据权利要求1所述的HTML数据解析方法,其特征在于,将所述标记名称与预设重写标记进行匹配,得到匹配信息之前,还包括:
根据HTML数据中的标记名称配置重写内容,以得到预设重写标记。
8.一种HTML页面解析装置,其特征在于,包括:
标记名称获取单元,用于获取HTML数据,并对所述HTML数据进行标记解析得到标记名称;
匹配单元,用于基于所述标记名称与预设重写标记进行匹配,得到匹配信息;
解析规则选取单元,用于根据所述匹配信息以及预设双解析规则,选取对应解析子规则;所述预设双解析规则包括至少两种所述解析子规则;
解析单元,用于根据所述解析子规则对所述标记名称对应的HTML数据段进行解析;
循环单元,用于重复以上步骤对所述HTML数据中其他标记名称对应的HTML数据段进行解析。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的HTML数据解析方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至7中任一项所述的HTML数据解析方法。
CN202010952980.0A 2020-09-11 2020-09-11 Html数据解析方法、装置、计算机设备和存储介质 Pending CN112148298A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010952980.0A CN112148298A (zh) 2020-09-11 2020-09-11 Html数据解析方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010952980.0A CN112148298A (zh) 2020-09-11 2020-09-11 Html数据解析方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN112148298A true CN112148298A (zh) 2020-12-29

Family

ID=73890215

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010952980.0A Pending CN112148298A (zh) 2020-09-11 2020-09-11 Html数据解析方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN112148298A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1896992A (zh) * 2006-06-15 2007-01-17 Ut斯达康通讯有限公司 基于应用定制解析xml文档的方法及装置
US20110113046A1 (en) * 2009-11-09 2011-05-12 Sony Corporation Information processing apparatus, information extracting method, program, and information processing system
US20110197125A1 (en) * 2008-10-21 2011-08-11 Sun Zengcai Web Page Loading Method and Apparatus
CN102651019A (zh) * 2012-03-30 2012-08-29 奇智软件(北京)有限公司 一种标记文件解析方法和装置
WO2015100994A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 页面处理方法、装置及系统
CN110119423A (zh) * 2019-05-17 2019-08-13 厦门商集网络科技有限责任公司 一种可配置化的数据解析方法和计算机可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1896992A (zh) * 2006-06-15 2007-01-17 Ut斯达康通讯有限公司 基于应用定制解析xml文档的方法及装置
US20110197125A1 (en) * 2008-10-21 2011-08-11 Sun Zengcai Web Page Loading Method and Apparatus
US20110113046A1 (en) * 2009-11-09 2011-05-12 Sony Corporation Information processing apparatus, information extracting method, program, and information processing system
CN102651019A (zh) * 2012-03-30 2012-08-29 奇智软件(北京)有限公司 一种标记文件解析方法和装置
WO2015100994A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 页面处理方法、装置及系统
CN110119423A (zh) * 2019-05-17 2019-08-13 厦门商集网络科技有限责任公司 一种可配置化的数据解析方法和计算机可读存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
李营那等: "一种可自由配置的网页采集系统原理及其实现", 《电脑知识与技术》 *
杨建红等: "面向VxWorks的嵌入式浏览器解析和布局技术研究", 《湖北大学学报(自然科学版)》 *
王奔: "基于标准XML的Web信息高效抽取算法", 《湖北工业大学学报》 *
王琦等: "基于DOM的网页主题信息自动提取", 《计算机研究与发展》 *

Similar Documents

Publication Publication Date Title
US10515142B2 (en) Method and apparatus for extracting webpage information
US8660976B2 (en) Web content rewriting, including responses
CN104063460B (zh) 一种在浏览器中加载网页的方法和装置
US8745341B2 (en) Web server cache pre-fetching
US8131753B2 (en) Apparatus and method for accessing and indexing dynamic web pages
US20100180192A1 (en) Dynamically configuring a presentation layer associated with a webpage delivered to a client device
US20130275496A1 (en) Method, Apparatus And System For Rendering Web Page
CN104077310B (zh) 加载资源文件的方法、设备和系统
US20170199850A1 (en) Method and system to decrease page load time by leveraging network latency
CN111104587A (zh) 网页显示方法、装置和服务器
NZ566291A (en) Methods and devices for post processing rendered web pages and handling requests of post processed web pages
WO2017202255A1 (zh) 页面展示方法、装置和客户端设备
CN106126693A (zh) 一种网页的相关数据的发送方法及装置
US10049089B2 (en) Methods for compressing web page menus and devices thereof
US20210406217A1 (en) Method for processing resource description file, page resource acquisition method, and intermediate server
CN110990732A (zh) 基于网页的加载方法、装置、设备及存储介质
CN110955855B (zh) 一种信息拦截的方法、装置及终端
WO2015154682A1 (zh) 一种网络请求处理方法、网络服务器和网络系统
CN102033926A (zh) 一种页面内容处理方法及装置
US20070124667A1 (en) Verifying content of resources in markup language documents
US20010056497A1 (en) Apparatus and method of providing instant information service for various devices
CN110413861B (zh) 基于网络爬虫的链接提取方法、装置、设备及存储介质
CN112148298A (zh) Html数据解析方法、装置、计算机设备和存储介质
CN107508705B (zh) 一种http元素的资源树构建方法及计算设备
JP2009259248A (ja) ウェブページに含まれるイメージに対してタグ付けを実行し、その結果を利用してウェブ検索サービスを提供するための方法、装置及びコンピュータ読み取り可能な記録媒体

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201229