CN109657184B - 富文本处理方法、装置、服务器及计算机可读介质 - Google Patents
富文本处理方法、装置、服务器及计算机可读介质 Download PDFInfo
- Publication number
- CN109657184B CN109657184B CN201811559522.XA CN201811559522A CN109657184B CN 109657184 B CN109657184 B CN 109657184B CN 201811559522 A CN201811559522 A CN 201811559522A CN 109657184 B CN109657184 B CN 109657184B
- Authority
- CN
- China
- Prior art keywords
- node
- content
- rich text
- label
- target content
- 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
Images
Abstract
本发明实施例的方面涉及富文本处理方法、装置、服务器及计算机可读介质。富文本处理方法包括:结构化步骤,对富文本进行结构化处理,得到包括节点对象的第一结构化对象;打捞步骤,根据预设的目标内容,对所述第一结构化对象进行打捞,得到打捞的目标内容,根据所述打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象;以及存储步骤,序列化所述第二结构化对象,并对序列化后的第二结构化对象进行存储。通过本发明实施例,可实现包括节点对象的结构化数据在存储前进行目标内容的打捞,提升页面加载速度,提升用户体验。
Description
技术领域
本发明实施例涉及互联网技术领域,尤其涉及富文本数据的处理方法、装置、服务器及计算机可读介质。
背景技术
富文本是一种包含HTML标签,支持丰富格式的文本,比如文字效果、文字链接等,对用户而言,观感更好。
目前,网络技术为用户提供多种平台,比如:网站、手机上的APP、微信、以及微信上的小程序等,以供用户发表各类信息,如评价产品、评价服务、发布自己的体验、或者发布照片等富文本内容。
用户通常通过浏览电商平台发布的富文本来获取自己需要的信息,在用户浏览富文本的过程中,为了帮助用户快速地获取需要的信息,精准的为用户匹配最合适的商家,需要对用户创作的富文本在发布前,对富文本进行目标内容的打捞,再对富文本内容进行展示。通常,目标内容会根据电商平台上可提供服务的商家、商家展示的产品、服务或者用户的兴趣点等,进行预设。当用户浏览被打捞后的富文本时,可以快速的获取到自己感兴趣的目标内容的链接,从而节省客户时间,提升用户体验。
例如,用户在旅游电商平台发布了一段富文本游记,旅游电商需要对平台中富文本的“目的地”“兴趣点”“超链接”等目标内容进行打捞,针对该游记,得到打捞的信息有目的地如“东京”,当其他用户浏览该游记,又想了解“东京”时,可以直接点击“东京”,就可以跳转到东京的主页。
现有技术中,针对富文本中目标内容的打捞是在富文本展示过程中进行,然而在内容展示过程中进行目标内容的打捞,严重影响了页面加载速度,降低了用户体验。
发明内容
本发明实施例提供的富文本的处理方法、装置、服务器及计算机可读介质,可对富文本进行结构化处理,得到包括节点对象的结构化对象,针对包括节点对象的结构化数据可实现在存储前进行目标内容的打捞,进而提升页面加载速度,提升用户体验。
本发明实施例的一方面提供了富文本处理方法,该方法包括结构化步骤,对富文本进行结构化处理,得到包括节点对象的第一结构化对象;打捞步骤,根据预设的目标内容,对第一结构化对象进行打捞,得到打捞的目标内容,根据打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象;以及存储步骤,序列化第二结构化对象,并对序列化后的第二结构化对象进行存储。
一种可能的实施例中,结构化步骤包括:获取富文本的标签以及与标签对应的标签内容;将富文本的标签替换为预设的节点标识;将标签对应的标签内容存储至与预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象;以及将节点对象有序的存储,得到第一结构化对象。
另一种可能的实施例中,结构化步骤包括:获取富文本的标签以及与标签对应的标签内容;将富文本的标签替换为预设的节点标识;根据标签内容与富文本标识,获取标签内容与富文本标识的关联标识,将标签内容与富文本标识的关联标识,存储至与预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
可能的实施例中,富文本为经过过滤得到的富文本。
又一种可能的实施例中,在结构化步骤中,对富文本标签确定节点标识,其中,节点标识与富文本标签为一一对应关系。
一种可能的实施例中,打捞步骤包括:获取要打捞的目标内容;以及根据打捞的目标内容,遍历第一结构化对象里的节点对象,得到打捞的目标内容。
另一种可能的实施例中,打捞步骤包括:确定第一结构化对象中得到打捞目标内容的打捞节点对象;将打捞节点对象的节点内容,以目标内容为基准,分为位于目标内容前端的前端节点内容、目标内容、以及位于目标内容的后端的后端节点内容;将前端节点内容、目标内容、后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象;将打捞节点对象替换为前端节点对象、目标内容节点对象、后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施例中,打捞步骤包括:确定第一结构化对象中得到打捞目标内容的打捞节点对象;当打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
另一种可能的实施例中,在存储步骤之后还包括:解析步骤,用于对序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
本发明实施例的另一个方面提供了富文本处理装置,该装置包括结构化单元,打捞单元和序列化单元。其中,结构化单元,用于对富文本进行结构化处理,得到包括节点对象的第一结构化对象。打捞单元,用于根据预设的目标内容,对第一结构化对象进行打捞,得到打捞的目标内容;根据打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象。序列化单元,用于序列化第二结构化对象,并对序列化后的第二结构化对象进行存储。
一种可能的实施例中,结构化单元用于:获取富文本的标签以及与标签对应的标签内容;将富文本的标签替换为预设的节点标识;将标签对应的标签内容存储至与预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象;以及将节点对象有序的存储,得到第一结构化对象。
另一种可能的实施例中,结构化单元用于:获取富文本的标签以及与标签对应的标签内容;将富文本的标签替换为预设的节点标识;根据标签内容与富文本标识,获取标签内容与富文本标识的关联标识;将标签内容与富文本标识的关联标识,存储至与预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
可能的实施例中,富文本为经过过滤得到的富文本。
又一种可能的实施例中,结构化单元用于对富文本标签确定节点标识,其中,节点标识与富文本标签为一一对应关系。
一种可能的实施例中,打捞单元用于:获取要打捞的目标内容;以及根据打捞的目标内容,遍历第一结构化对象里的节点对象,得到打捞的目标内容。
另一种可能的实施例中,打捞单元用于:确定第一结构化对象中得到打捞目标内容的打捞节点对象;将打捞节点对象的节点内容,以目标内容为基准,分为位于目标内容前端的前端节点内容、目标内容、以及位于目标内容的后端的后端节点内容;将前端节点内容、目标内容、后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象;将打捞节点对象替换为前端节点对象、目标内容节点对象、后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
又一种可能的实施例中,打捞单元用于:确定第一结构化对象中得到打捞目标内容的打捞节点对象;当打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施例中,序列化单元还用于:对所述序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
本发明实施例提供的富文本的处理方法、装置、服务器及计算机可读介质,将富文本结构化处理,得到包括节点对象的结构化对象。针对包括节点对象的结构化对象进行目标内容的打捞,并将打捞的目标内容以节点对象的形式存储到对应的结构化对象中,实现了富文本在存储前进行目标内容的打捞,提升了页面加载速度,提升了用户体验。
附图说明
图1是本发明实施例提供的富文本处理方法实施流程图。
图2是本发明实施例提供的富文本处理装置示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明实施例的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明实施例,而并非以任何方式限制本发明的范围。
需要注意,虽然本文中使用“第一”、“第二”等表述来描述本发明的实施方式的不同模块、步骤和数据等,但是“第一”、“第二”等表述仅是为了在不同的模块、步骤和数据等之间进行区分,而并不表示特定的顺序或者重要程度。实际上,“第一”、“第二”等表述完全可以互换使用。
本发明实施例提供的富文本处理方法,该富文本处理方法可应用于针对要发布的富文本中目标内容的打捞(比如:兴趣点、超链接等)的应用场景。在该场景下,一种可能的实施方式中可将富文本结构化处理,得到由节点对象组成的结构化对象,然后基于节点对象化的结构化对象,进行目标内容的打捞,并将打捞的目标内容以节点对象的形式存储到对应的结构化对象中,由此实现了富文本在存储前进行目标内容的打捞,提升了页面加载速度,提升了用户体验。
图1所示为本发明实施例提供的富文本处理方法实施流程图。图1所示的方法执行主体可以是富文本处理装置,该富文本处理装置可以是服务器,也可以是计算机、移动终端等终端,本发明实施例不做限定。参阅图1所示,该富文本处理方法包括:
S101:对富文本进行过滤处理,得到安全的富文本。
本发明实施例中涉及的富文本可以是用户通过不同展示渠道的客户端发布的富文本,例如,用户可以通过PC端、APP端、微信或者小程序等渠道的客户端发布富文本。可能的实施方式中,富文本可以包含HTML标签,标签可以嵌套,比如本发明实施例中,富文本可以是包含HTML标签的富文本,该标签可以包括嵌套的标签。
作为一种可能的实施方式,本发明实施例可针对富文本的标签、标签属性以及传输协议与地址(url)进行过滤。
作为针对标签过滤的实施方式,本发明实施例可预先配置好允许标签,例如“b、strong、a、p、br、img、h3、ul、ol、li、h3、video”作为允许标签,允许上述标签及标签内容通过。针对“style、script”标签,严格过滤“style、script”标签。过滤器在过滤标签的过程中,会从富文本开头进行分析处理,保留允许通过的标签,对需要过滤的标签,会利用标签替换形式更改标签名称来过滤标签。例如,将style更改为stl,将script更改为spt等。
作为针对标签属性过滤的实施方式,过滤器可以对每个HTML标签的属性进行过滤处理。例如,本发明实施例可针对所有标签的“title、width、height、color”等属性进行保留。本发明实施例可针对特殊的html标签,只保留指定的属性,例如a标签只保留href属性,img标签只保留src属性等,而对其他属性进行过滤。针对上述特殊的html标签,可以预先指定需要保留的属性以及/或者需要过滤的属性,也可以预先制作标签与保留属性的对照表或者标签与过滤属性的对照表,来实现针对特殊的html标签的属性的过滤。
针对富文本中的传输协议与url过滤的实施方式,本发明实施例可保留http和https传输协议以及预先设定好的链接域名。对于其他协议以及域名的链接可以直接过滤掉。
如上所述,通过过滤器对富文本进行过滤处理,由此可得到过滤后安全的富文本。
可以理解的是,本发明实施例虽然对富文本进行了过滤,得到安全的富文本,并针对安全的富文本进行后续的操作步骤,但并不代表过滤步骤为本发明实施例的必要步骤,可能的实施例中,可省略对富文本的过滤,直接对富文本进行结构化处理。
S102:对富文本进行结构化处理,得到包括节点对象的第一结构化对象。
可以对经过过滤器处理的、保留了系统允许的HTML标签及标签属性的安全的富文本进行结构化处理。
本发明实施例中可采用节点对象的方式对富文本进行结构化处理。在该结构化处理中,从富文本的开端开始识别富文本中的标签与内容,生成相应的节点对象,对所生成的节点对象进行有序存储,形成结构化对象。
其中,节点对象包含节点标识与节点内容,作为一种可能的实施方式,本发明实施例的节点标识可以是预设的节点标识,且该节点标识与富文本中的标签具有一一对应关系。作为示例,可以将富文本中的标签替换成预设的节点标识来作为节点对象。例如,针对包含HTML标签的富文本,可预设“i”节点标识代表图片标签,预设“t”节点标识代表普通文本标签,预设“v”代表视频标签等。然后将富文本中标签内容存储到与节点标识对应的节点内容中,得到与富文本标签和标签内容相对应的节点对象,将节点对象有序的存储,来得到结构化对象。本发明实施例为描述方便,将富文本进行结构化处理后,得到包括节点对象的结构化对象,称为第一结构化对象。
一种可能的实施方式中,作为示例,本发明实施例中将富文本转化为包括节点对象的第一结构化对象,可以采用如下方式:
例如,具有以下描述的一段富文本:一段纯文字紧接着一张图片信息,然后是一段加粗的文本,之后是一个被HTML标签ul包裹的一段包含加粗以及普通文本的文本内容,最后是一个纯文本内容。
针对上述一段富文本,将此段富文本转为包括节点对象的第一结构化对象如下:
按照富文本的顺序识别到富文本中的文本标签以及标签内容,将文本标签替换为预设的t节点标识,并将文本内容存储到和t节点标识对应的节点内容中,得到第一个节点对象。
然后识别图片标签,将图片标签替换为预设的i节点标识,并将图片信息存储到和i节点标识对应的节点内容中,得到第二个节点对象,存储在第一个节点对象之后。
接着识别出加粗的文本标签,将加粗的文本标签替换为预设的b节点标识,将加粗的文本存储到和b节点标识对应的节点内容中,得到第三个节点对象,存储在第二个节点对象之后。
接着识别出ul标签,将ul标签替换为预设的u节点标识,并将ul标签包含的富文本存储到和u节点标识对应的节点内容中,然后针对嵌套在ul标签里的包含加粗文本标签以及普通文本标签的富文本分别进行结构化处理,得到b节点标识与b节点标识对应的节点内容,t节点标识与t节点标识对应的节点内容,由此,形成u节点标识的节点对象中嵌套了b节点标识的节点对象和t节点标识的节点对象。将u节点对象以及u节点对象中嵌套的b节点对象和u节点对象中嵌套的t节点对象作为整体,得到第四个节点对象,存储在第三个节点对象之后。
最后识别到富文本中的文本标签,将文本标签替换为预设的t节点标识,并将文本内容存储到和t节点标识对应的节点内容中,得到第五个节点对象。
至此,一段富文本已完全转化为包括第一节点对象至第五节点对象的第一结构化对象,该第一结构化对象为一个多节点存储的、有序的、易提取的结构化对象。
比如一段富文本中包含一个图片或视频,其中视频可以视频的url地址展现。将图片或者视频转化成相应节点对象的过程中,可将图片作为节点内容存储到图片的节点对象中,针对视频的url可将视频的url描述为字符串类型,作为节点内容存储到视频的节点对象中。但是这样不仅多占用数据库存储资源,同时也不便于数据资源的维护。
在本发明实施例中,可以对富文本进行优化处理,如对富文本中的图片或者视频资源的结构化处理进行优化。下面以图片作为示例进行说明:数据库会为每个待发布的富文本进行标识,并根据富文本的标识来识别该富文本。具体的,针对富文本中的图片信息,可以根据图片信息与富文本标识的对应关系,得到图片信息与富文本标识的关联标识,将描述图片信息与富文本标识的关联标识代替图片信息存储到图片节点内容中,得到图片节点标识与节点标识对应的存储了关联标识的节点内容,由此组成了优化后图片的节点对象。作为一例子,可以将图片资源信息以及图片对应的富文本内容ID一并存入数据库中,数据库根据图片资源信息以及图片对应的富文本内容ID,生成并返回图片资源信息与富文本内容ID的关联ID,将数据库中返回的关联ID,作为上述图片信息与富文本标识的关联标识。由此,不仅减少了结构化对象占用的空间,同时针对同一富文本资源,能够更容易掌握图片或视频资源的相关信息。
S103:根据预设的目标内容,对所述第一结构化对象进行打捞,得到打捞的目标内容,根据所述打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象。
具体地,本发明实施例中,针对第一结构化对象进行目标内容的打捞,可以是对第一结构化对象中的节点对象分别进行目标内容的打捞,即通过遍历节点对象中的节点内容,来实现对目标内容的打捞。需要打捞的目标内容可以是根据打捞规则,预先配置好的目标内容,例如一个旅游网站根据业务或者用户需求,可以将预先配置的打捞规则确定为针对目的地、兴趣点或者超链接等进行打捞,并配置具体包括的目的地、兴趣点以及需要添加的超链接作为目标内容进行打捞。当然目标内容可根据实际情况进行配置,针对其他需求配置打捞的目标内容,本发明在此不做限定。
下面仅作为示例,对目标内容的打捞进行说明。例如,一个结构化对象为:
针对该结构化对象需要打捞的是目的地,例如包括北京、上海、广州,对该结构化对象进行打捞的过程可采用如下方式:
遍历该结构化对象中的两个节点对象,即第一个对象:
在第一个节点对象的节点内容中得到打捞的目的地“北京”。
本发明实施例为描述方便,将对第一结构化对象进行处理后,得到的结构化对象,称为第二结构化对象。
作为可能的实施方式,本发明实施例中,打捞得到目标内容之后,会首先判断打捞的目标内容的准确性,如果打捞的目标内容是预先配置好的打捞信息之一,则会确认目标内容所在的节点对象,即得到打捞目标内容的节点对象,例如,本发明实施例中可以将得到打捞目标内容的节点对象称为:打捞节点对象。并以打捞节点对象中的目标内容为基准,将打捞节点对象的节点内容分为位于目标内容前端的前端节点内容、目标内容、以及位于目标内容的后端的后端节点内容。将前端节点内容、目标内容、后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象和后端节点对象。再将打捞节点对象替换为前端节点对象、目标内容节点对象、后端节点对象,并与第一结构化对象中其他节点对象有序的存储,由此得到第二结构化对象。
作为可能的实施方式,以节点内容中存在的该目标内容为基准,可以分为位于目标内容前端的前端节点内容、目标内容、以及位于目标内容后端的后端节点内容。如果目标内容位于节点内容的最前端或者最后端,则节点内容仅分为目标内容和后端节点内容或者前端节点内容和目标内容。针对前端节点内容添加预设的节点标识,以形成前端节点对象。针对目标内容,从节点内容中抽出目标内容,并为目标内容添加预设的节点标识,形成新的目标内容的节点对象。针对后端节点内容添加预设的节点标识,以形成后端节点对象。将前端节点对象、目标内容的节点对象、以及后端节点对象替换原来的节点对象,并与第一结构化对象中其他节点对象有序的存储,来形成第二结构化对象。
作为可能的实施方式,当在一个打捞节点对象中存在多个目标内容之际,可以以各自的目标为内容为基准,对其前后的节点内容以及各自的目标内容,分别添加预设的节点标识,以形成新的节点对象,由此替代原有的节点对象,并与第一结构化对象中其他节点对象有序的存储,来形成第二结构化对象。
例如,针对步骤S103中的结构化对象得到打捞的目标内容“北京”后,对第一结构化对象进行处理,得到第二结构化对象,可采用如下方式:
针对得到目标内容“北京”的节点对象:
将得到目标内容“北京”的节点对象从目标内容“北京”处拆开,将拆开的节点内容与对应节点标识相关联,为打捞的目标内容“北京”添加预设的节点标识,并将代表北京的目标内容存储到节点内容里,得到:
其中,‘t’=>‘mdd’,表示打捞的“目的地”的预设节点标识,‘c’=>‘10065’表示节点内容为“北京”。
然后将得到的拆开的节点内容的节点对象,与目标内容的节点对象,与第一结构化对象中其他节点对象,有序的存储,得到第二结构化对象,
S104:序列化第二结构化对象,并对序列化后的第二结构化对象进行存储。
作为一种可能的实施方式,本发明实施例中,在得到第二结构化对象之后,可对得到的第二结构化对象进行序列化处理并存储,以方便在内容输出时,对序列化存储的结构化对象进行反序列化解析。
S105:对序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
作为一种可能的实施方式,本发明实施例中,当收到网络请求需要内容输出时,首先根据网络请求,判断客户端的类型,根据客户端的类型,将序列化存储的结构化对象进行反序列化解析,以适合不同系统客户端的不同的数据结构以及运营展示需求,例如针对pc或微信端,可以将第二结构化对象反序列化处理,得到HTML格式的内容输出展示。
作为一种可能的实施例,本发明实施例中,例如,客户端类型为pc客户端或者微信客户端,针对第二结构化对象中节点对象,分别将节点对象的节点标识替换为HTML标签,针对第二结构化对象中打捞的目标内容的节点对象,将打捞的目标内容只转化成相应html格式的内容,从而实现转化后的HTML内容输出给客户端。
作为另一种可能的实施例,本发明实施例中,例如,客户端类型为针对IOS系统或者安卓系统的APP端,可以将第二结构化对象反序列化解析得到新的结构化对象输出展示。
可能的实施方式,针对第二结构化对象中节点对象,可将第二结构化对象中节点对象的节点标识替换为可被IOS系统或者安卓系统的APP识别的节点标识,针对目标内容的节点对象同样转化成新的节点对象,得到新的结构化对象,输出给客户端。
本发明实施例提供的富文本处理方法,对富文本进行过滤,针对过滤的富文本进行结构化处理,得到包括节点对象的第一结构化对象,基于第一结构化对象进行目标内容的打捞,得到打捞的目标内容,并根据打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象。通过将富文本转化为节点对象组成的结构化对象,可实现富文本在APP、微信、小程序等渠道灵活的展示。并且针对由节点对象组成的结构化对象进行目标内容的打捞,并将打捞的目标内容以节点对象的形式存储到对应的结构化对象中,实现了富文本在存储前进行目标内容的打捞,避免了在富文本展示过程中进行目标内容的打捞,提升了页面加载速度,提升了用户体验。
基于相同的发明构思,本发明实施例还提供了富文本处理装置。
如图2所示,本发明实施例提供的富文本处理装置200,该装置200包括过滤单元201,结构化单元202,打捞单元203以及序列化单元204。其中,过滤单元201,用于对富文本进行过滤处理。结构化单元202,用于对富文本进行结构化处理,得到包括节点对象的第一结构化对象。打捞单元203,用于根据预设的目标内容,对第一结构化对象进行打捞,得到打捞的目标内容,根据打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象。序列化单元204,用于序列化第二结构化对象,并对序列化后的第二结构化对象进行存储。
一种可能的实施例中,结构化单元202用于:获取富文本的标签以及与标签对应的标签内容,将富文本的标签替换为预设的节点标识,将标签对应的标签内容存储至与预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象,以及将节点对象有序的存储,得到第一结构化对象。
另一种可能的实施例中,结构化单元202用于:获取富文本的标签以及与标签对应的标签内容,将富文本的标签替换为预设的节点标识,根据标签内容与富文本标识,获取标签内容与富文本标识的关联标识,将标签内容与富文本标识的关联标识,存储至与预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
可能的实施例中,富文本为经过过滤单元201过滤得到的富文本。
又一种可能的实施例中,结构化单元202用于:对富文本标签确定节点标识,其中,节点标识与富文本标签为一一对应关系。
一种可能的实施例中,打捞单元203用于:获取要打捞的目标内容,以及根据打捞的目标内容,遍历第一结构化对象里的节点对象,得到打捞的目标内容。
另一种可能的实施例中,打捞单元203用于:确定第一结构化对象中得到打捞目标内容的打捞节点对象。将打捞节点对象的节点内容,以目标内容为基准,分为位于目标内容前端的前端节点内容、目标内容、以及位于目标内容后端的后端节点内容。将前端节点内容、目标内容、后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象。将打捞节点对象替换为前端节点对象、目标内容节点对象、后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
又一种可能的实施例中,打捞单元203用于:确定第一结构化对象中得到打捞目标内容的打捞节点对象。当打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施例中,序列化单元204还用于:对所述序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
一种可能的实施方式中,本发明实施例还提供一种服务器,所述服务器包括:存储器,配置用于存储指令;以及处理器,配置用于调用所述指令执行上述可能的实施方式中任一所述的方法。
一种可能的实施方式中,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由处理器执行时,执行上述可能的实施方式中任一所述的方法。
可能的实施方式中,本发明实施例还提供了以下实施方式:
一种可能的实施方式中,本发明实施例提供的一种富文本处理方法包括:结构化步骤,对富文本进行结构化处理,得到包括节点对象的第一结构化对象;打捞步骤,根据预设的目标内容,对所述第一结构化对象进行打捞,得到打捞的目标内容,根据所述打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象;以及存储步骤,序列化所述第二结构化对象,并对序列化后的第二结构化对象进行存储。
一种可能的实施方式中,所述结构化步骤包括:获取富文本的标签以及与所述标签对应的标签内容;将所述富文本的标签替换为预设的节点标识;将所述标签对应的标签内容存储至与所述预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象;以及将所述节点对象有序的存储,得到所述第一结构化对象。
一种可能的实施方式中,所述结构化步骤包括:获取富文本的标签以及与所述标签对应的标签内容;将所述富文本的标签替换为预设的节点标识;根据所述标签内容与富文本标识,获取所述标签内容与所述富文本标识的关联标识;将所述标签内容与富文本标识的关联标识,存储至与所述预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
一种可能的实施方式中,所述富文本为经过过滤得到的富文本。
一种可能的实施方式中,结构化步骤包括,对富文本标签确定节点标识,所述节点标识与所述富文本标签为一一对应关系。
一种可能的实施方式中,所述打捞步骤包括:获取要打捞的目标内容;以及根据所述打捞的目标内容,遍历所述第一结构化对象里的节点对象,得到打捞的目标内容。
一种可能的实施方式中,所述打捞步骤包括:确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;将所述打捞节点对象的节点内容,以目标内容为基准,分为位于所述目标内容前端的前端节点内容、目标内容、以及位于所述目标内容的后端的后端节点内容;将所述前端节点内容、所述目标内容、所述后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象;将所述打捞节点对象替换为所述前端节点对象、所述目标内容节点对象、所述后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施方式中,所述打捞步骤包括:确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;当所述打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换所述打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施方式中,所述存储步骤之后,所述一种富文本处理方法还包括:解析步骤,对所述序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
一种可能的实施方式中,本发明实施例还提供的一种富文本处理装置,所述装置包括:结构化单元,用于对富文本进行结构化处理,得到包括节点对象的第一结构化对象;打捞单元,用于根据预设的目标内容,对所述第一结构化对象进行打捞,得到打捞的目标内容,根据所述打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象;以及序列化单元,用于序列化所述第二结构化对象,并对序列化后的第二结构化对象进行存储。
一种可能的实施方式中,所述结构化单元用于:获取富文本的标签以及与所述标签对应的标签内容;将所述富文本的标签替换为预设的节点标识;将所述标签对应的标签内容存储至与所述预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象;以及将所述节点对象有序的存储,得到所述第一结构化对象。
一种可能的实施方式中,所述结构化单元用于:获取富文本的标签以及与所述标签对应的标签内容;将所述富文本的标签替换为预设的节点标识;根据所述标签内容与富文本标识,获取所述标签内容与所述富文本标识的关联标识;将所述标签内容与富文本标识的关联标识,存储至与所述预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
一种可能的实施方式中,所述富文本为经过过滤得到的富文本。
一种可能的实施方式中,结构化单元用于:对富文本标签确定节点标识,所述节点标识与所述富文本标签为一一对应关系。
一种可能的实施方式中,所述打捞单元用于:获取要打捞的目标内容;以及根据所述打捞的目标内容,遍历所述第一结构化对象里的节点对象,得到打捞的目标内容。
一种可能的实施方式中,所述打捞单元用于:确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;将所述打捞节点对象的节点内容,以目标内容为基准,分为位于所述目标内容前端的前端节点内容、目标内容、以及位于所述目标内容的后端的后端节点内容;将所述前端节点内容、所述目标内容、所述后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象;将所述打捞节点对象替换为所述前端节点对象、所述目标内容节点对象、所述后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施方式中,所述打捞单元用于:确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;当所述打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换所述打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
一种可能的实施方式中,本发明实施例还提供一种服务器,所述服务器包括:存储器,配置用于存储指令;以及处理器,配置用于调用所述指令执行上述可能的实施方式中任一所述的方法。
一种可能的实施方式中,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由处理器执行时,执行上述可能的实施方式中任一所述的方法。
可以理解的是,本发明实施例中尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。
本发明实施例涉及的方法和装置能够利用标准编程技术来完成,利用基于规则的逻辑或者其他逻辑来实现各种方法步骤。还应当注意的是,此处以及权利要求书中使用的词语“装置”和“模块”意在包括使用一行或者多行软件代码的实现和/或硬件实现和/或用于接收输入的设备。
此处描述的任何步骤、操作或程序可以使用单独的或与其他设备组合的一个或多个硬件或软件模块来执行或实现。在一个实施方式中,软件模块使用包括包含计算机程序代码的计算机可读介质的计算机程序产品实现,其能够由计算机处理器执行用于执行任何或全部的所描述的步骤、操作或程序。
出于示例和描述的目的,已经给出了本发明实施的前述说明。前述说明并非是穷举性的也并非要将本发明限制到所公开的确切形式,根据上述教导还可能存在各种变形和修改,或者是可能从本发明的实践中得到各种变形和修改。选择和描述这些实施例是为了说明本发明的原理及其实际应用,以使得本领域的技术人员能够以适合于构思的特定用途来以各种实施方式和各种修改而利用本发明。
Claims (18)
1.一种富文本处理方法,其中,所述方法包括:
结构化步骤,对富文本进行结构化处理,得到包括节点对象的第一结构化对象;
打捞步骤,根据预设的目标内容,对所述第一结构化对象进行打捞,得到打捞的目标内容,根据所述打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象;
存储步骤,序列化所述第二结构化对象,并对序列化后的第二结构化对象进行存储;
解析步骤,对所述序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
2.根据权利要求1所述的方法,其中,所述结构化步骤包括:
获取富文本的标签以及与所述标签对应的标签内容;
将所述富文本的标签替换为预设的节点标识;
将所述标签对应的标签内容存储至与所述预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象;以及
将所述节点对象有序的存储,得到所述第一结构化对象。
3.根据权利要求1所述的方法,其中,所述结构化步骤包括:
获取富文本的标签以及与所述标签对应的标签内容;
将所述富文本的标签替换为预设的节点标识;
根据所述标签内容与富文本标识,获取所述标签内容与所述富文本标识的关联标识;
将所述标签内容与富文本标识的关联标识,存储至与所述预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
4.根据权利要求1所述的方法,其中,所述富文本为经过过滤得到的富文本。
5.根据权利要求1至3中任一项所述的方法,其中,在结构化步骤中,对富文本标签确定节点标识,所述节点标识与所述富文本标签为一一对应关系。
6.根据权利要求1所述的方法,其中,所述打捞步骤包括:
获取要打捞的目标内容;以及
根据所述打捞的目标内容,遍历所述第一结构化对象里的节点对象,得到打捞的目标内容。
7.根据权利要求6所述的方法,其中,所述打捞步骤包括:
确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;
将所述打捞节点对象的节点内容,以目标内容为基准,分为位于所述目标内容前端的前端节点内容、目标内容、以及位于所述目标内容的后端的后端节点内容;
将所述前端节点内容、所述目标内容、所述后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象;
将所述打捞节点对象替换为所述前端节点对象、所述目标内容节点对象、所述后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
8.根据权利要求6所述的方法,其中,所述打捞步骤包括:
确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;
当所述打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换所述打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
9.一种富文本处理装置,其中,所述装置包括:
结构化单元,用于对富文本进行结构化处理,得到包括节点对象的第一结构化对象;
打捞单元,用于根据预设的目标内容,对所述第一结构化对象进行打捞,得到打捞的目标内容,根据所述打捞的目标内容,对第一结构化对象进行处理,得到第二结构化对象;
存储单元,用于序列化所述第二结构化对象,并对序列化后的第二结构化对象进行存储;
解析单元,对所述序列化后的第二结构化对象进行反向解析,得到解析后用于展示的富文本内容。
10.根据权利要求9所述的装置,其中,所述结构化单元用于:
获取富文本的标签以及与所述标签对应的标签内容;
将所述富文本的标签替换为预设的节点标识;
将所述标签对应的标签内容存储至与所述预设的节点标识对应的节点内容里,得到由节点标识与节点内容组成的节点对象;以及
将所述节点对象有序的存储,得到所述第一结构化对象。
11.根据权利要求9所述的装置,其中,所述结构化单元用于:
获取富文本的标签以及与所述标签对应的标签内容;
将所述富文本的标签替换为预设的节点标识;
根据所述标签内容与富文本标识,获取所述标签内容与所述富文本标识的关联标识;
将所述标签内容与富文本标识的关联标识,存储至与所述预设的节点标识对应的节点内容里,得到包括节点标识与节点内容的节点对象。
12.根据权利要求9所述的装置,其中,所述富文本为经过过滤得到的富文本。
13.根据权利要求9至11中任一项所述的装置,其中,结构化单元用于:对富文本标签确定节点标识,所述节点标识与所述富文本标签为一一对应关系。
14.根据权利要求9所述的装置,其中,所述打捞单元用于:
获取要打捞的目标内容;以及
根据所述打捞的目标内容,遍历所述第一结构化对象里的节点对象,得到打捞的目标内容。
15.根据权利要求14所述的装置,其中,所述打捞单元用于:
确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;
将所述打捞节点对象的节点内容,以目标内容为基准,分为位于所述目标内容前端的前端节点内容、目标内容、以及位于所述目标内容的后端的后端节点内容;
将所述前端节点内容、所述目标内容、所述后端节点内容分别与对应节点标识相关联,得到依次排列的前端节点对象、目标内容节点对象、后端节点对象;
将所述打捞节点对象替换为所述前端节点对象、所述目标内容节点对象、所述后端节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
16.根据权利要求14所述的装置,其中,所述打捞单元用于:
确定第一结构化对象中得到所述打捞目标内容的打捞节点对象;
当所述打捞节点对象中具有多个打捞目标内容时,分别以各自的打捞目标内容为基准,将打捞节点内容依次划分为多个节点内容和多个打捞目标内容,并将多个节点内容和多个打捞目标内容分别与对应节点标识相关联,得到依次排列的包括多个节点对象和多个目标内容节点对象的节点对象,并用所得到的依次排列的节点对象替换所述打捞节点对象,并与第一结构化对象中其他节点对象有序的存储,得到第二结构化对象。
17.一种服务器,其中,所述服务器包括:
存储器,配置用于存储指令;以及
处理器,配置用于调用所述指令执行权利要求1-8中任一项所述的方法。
18.一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由处理器执行时,执行权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811559522.XA CN109657184B (zh) | 2018-12-19 | 2018-12-19 | 富文本处理方法、装置、服务器及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811559522.XA CN109657184B (zh) | 2018-12-19 | 2018-12-19 | 富文本处理方法、装置、服务器及计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109657184A CN109657184A (zh) | 2019-04-19 |
CN109657184B true CN109657184B (zh) | 2020-05-05 |
Family
ID=66114971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811559522.XA Active CN109657184B (zh) | 2018-12-19 | 2018-12-19 | 富文本处理方法、装置、服务器及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109657184B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113807050B (zh) * | 2021-07-01 | 2024-04-09 | 西安华讯科技有限责任公司 | 一种基于富文本的节点截取方法、系统、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034622A (zh) * | 2012-12-05 | 2013-04-10 | 北京奇虎科技有限公司 | 富文本内容的处理方法和服务器 |
CN105183706A (zh) * | 2014-05-27 | 2015-12-23 | 腾讯科技(北京)有限公司 | 富文本处理方法和装置 |
CN105450586A (zh) * | 2014-07-24 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 信息推送方法、系统、服务器及客户端 |
CN106897251A (zh) * | 2016-07-01 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 富文本展示方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7890852B2 (en) * | 2003-06-26 | 2011-02-15 | International Business Machines Corporation | Rich text handling for a web application |
CN104102652B (zh) * | 2013-04-08 | 2017-05-24 | 国家电网公司 | 一种非结构化数据存储系统及方法 |
CN103607427B (zh) * | 2013-10-30 | 2017-04-12 | 小米科技有限责任公司 | 信息展示方法和装置 |
CN107766572A (zh) * | 2017-11-13 | 2018-03-06 | 北京国信宏数科技有限责任公司 | 基于经济领域数据的分布式提取及可视化分析方法和系统 |
-
2018
- 2018-12-19 CN CN201811559522.XA patent/CN109657184B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034622A (zh) * | 2012-12-05 | 2013-04-10 | 北京奇虎科技有限公司 | 富文本内容的处理方法和服务器 |
CN105183706A (zh) * | 2014-05-27 | 2015-12-23 | 腾讯科技(北京)有限公司 | 富文本处理方法和装置 |
CN105450586A (zh) * | 2014-07-24 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 信息推送方法、系统、服务器及客户端 |
CN106897251A (zh) * | 2016-07-01 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 富文本展示方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109657184A (zh) | 2019-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107729475B (zh) | 网页元素采集方法、装置、终端与计算机可读存储介质 | |
KR101824222B1 (ko) | 동적 컨텐츠 및 스테일 컨텐츠를 포함하는 웹사이트들의 고속 렌더링 | |
US10515142B2 (en) | Method and apparatus for extracting webpage information | |
US11055373B2 (en) | Method and apparatus for generating information | |
CN104063401B (zh) | 一种网页样式地址合并的方法和装置 | |
CN106897251B (zh) | 富文本展示方法及装置 | |
CN104243273A (zh) | 即时通讯客户端显示信息的方法及设备和信息显示系统 | |
CN107679214B (zh) | 链接定位方法、装置、终端与计算机可读存储介质 | |
CN108334508B (zh) | 网页信息的提取方法和装置 | |
US20190050376A1 (en) | Automatic value formatting based on intrinsic structural semantics | |
CN112100550A (zh) | 一种页面构建方法和装置 | |
CN110727417B (zh) | 一种数据处理方法和装置 | |
US20200067860A1 (en) | File sending in instant messaging application | |
CN112163102B (zh) | 搜索内容匹配方法、装置、电子设备及存储介质 | |
CN108595457A (zh) | 一种瀑布流页面的渲染方法和装置 | |
WO2015000342A1 (en) | Method and client device for accessing webpage | |
CN111625308B (zh) | 一种信息展示方法、装置和电子设备 | |
CN110968314A (zh) | 一种页面生成方法及装置 | |
CN109714406A (zh) | 资源描述文件的处理、页面资源的获取方法及设备 | |
CN104156421B (zh) | 页面的展现方法、装置及系统 | |
CN113360106B (zh) | 一种网页打印方法和装置 | |
CN109657184B (zh) | 富文本处理方法、装置、服务器及计算机可读介质 | |
US8656371B2 (en) | System and method of report representation | |
JP2006065467A5 (zh) | ||
CN113177391B (zh) | 在流式界面中操作光标重定向方法、计算设备及存储介质 |
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 |