CN102880679B - 一种网页信息存储方法和装置 - Google Patents
一种网页信息存储方法和装置 Download PDFInfo
- Publication number
- CN102880679B CN102880679B CN201210334664.2A CN201210334664A CN102880679B CN 102880679 B CN102880679 B CN 102880679B CN 201210334664 A CN201210334664 A CN 201210334664A CN 102880679 B CN102880679 B CN 102880679B
- Authority
- CN
- China
- Prior art keywords
- module
- content
- content module
- webpage
- url address
- 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.)
- Expired - Fee Related
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种网页信息存储方法和装置,解决网页内容部分保存问题的同时又可规避不必要的知识产权风险。其中,该方法包括:当需要保存第三方网页中一个或多个内容模块的内容时,记录并保存所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;当用户请求所保存的网页内容时,取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址;根据所述一个或多个内容模块的Xpath路径以及对应网页的URL地址,定位到所述一个或多个内容模块对应的DOM结点,取出DOM结点对应的网页内容。
Description
技术领域
本发明涉及互联网领域,特别是涉及一种网页信息存储方法和装置。
技术背景
当前的网页信息存储主要有两种方式。一种为仅保存网页的URL地址,在这种情况下,会将网页中所包含的广告以及其它用户不想保留的内容一并存储,在这种情况下,虽然满足了用户对于网页信息保存的需求,但是用户无法对一个网页有选择性地保存部分模块并在需要的时候复原。另一种方式为同时存储URL地址和网页内容,这种情况下虽然可以克服第一种方式带来的缺点,即这种方式虽然可以将网页内容摘取保存,但还可能因复制保存第三方网站内容而带来知识产权风险。
为此,需要一种新的网页信息存储方法,既解决网页内容部分保存问题,同时又可规避不必要的风险。
发明内容
有鉴于此,本发明实施例提供一种网页信息存储方法和装置,解决网页内容部分保存问题的同时又可规避不必要的知识产权风险。
为了达到上述目的,本发明实施例提供的一种网页信息存储方法,包括:
当需要保存第三方网页中一个或多个内容模块的内容时,记录并保存所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
当用户请求所保存的网页内容时,取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址;
根据所述一个或多个内容模块的Xpath路径以及对应网页的URL地址,定位到所述一个或多个内容模块对应的DOM结点,取出DOM结点对应的网页内容。
为了达到上述目的,本发明实施例提供的一种网页信息存储装置,包括:
记录模块,用于当需要保存第三方网页中某一个或多个内容模块的内容时,记录所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
保存模块,用于保存记录模块记录下的所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
提取模块,用于当用户请求所保存的网页内容时,取出保存模块所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址;
内容还原模块,用于根据提取模块提取出的URL地址和内容模块的Xpath地址信息,定位到该一个或多个内容模块对应的DOM结点,取出该DOM结点对应的网页内容。
利用本发明实施例提供的网页信息存储方法及装置,服务器仅保存网页的URL以及每个模块的Xpath路径信息,不保存原网页任何模块的具体内容。当用户请求所保存的网页信息时,根据所储存的URL和Xpath路径将网页内容还原在用户侧设备上,以此避免保存原网页内容所带来的知识产权风险。
附图说明
图1是本发明实施例中提供的网页信息存储的方法流程图。
图2是本发明实施例中提供的网页信息存储装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
在阐述本发明实施例之前,先介绍几个基本概念。
HTML(HyperTextMarkupLanguage超文本标记语言),是为“网页创建和其它可在网页浏览器中看到的信息”设计的一种标记语言。HTML被用来描述结构化信息——例如标题、段落和列表等等,也可用来在一定程度上描述文档的外观和语义。URL(Uniform/UniversalResourceLocator,统一资源定位符),也被称为网页地址;网页的内容就是由HTML代码来构成。
DOM(DocumentObjectModel,文档对象模型),是一种处理可扩展标记语言(包括HTML)的标准编程接口,应用程序和脚本可以通过这个接口访问和修改XML和HTML文档数据。DOM将文档看成是一棵拥有许多结点(DOMD结点)的树。
XPath为路径表达式,遵循DOM的路径格式,可以描述从一个XMLD结点(DOMD结点)到另一个D结点、或一组D结点的步骤顺序。
图1是本发明实施例中提供的网页信息存储的方法流程图。如图1所示,该方法包括如下步骤:
步骤101:当需要保存第三方网页中某一个或多个内容模块的内容时,记录并保存该一个或多个内容模块的Xpath路径以及对应网页的URL地址。
在本发明一实施例中,每一个HTML网页都可以利用DOM树来描述,即网页中的某一个内容模块都是DOM树中的一个结点。以一个新闻网页为例,如果该网页包含导航、两侧的广告栏以及新闻正文,其中该新闻正文又包括标题、作者信息以及三段正文,那么该网页的DOM树可能的构成结构如下(假设该网页的URL为a.com/b/c):
a.com/b/c(根结点)
-导航(一级结点)
-广告栏(一级结点)
-广告1(二级结点)
-广告2(二级结点)
-其他网址链接(一级结点)
-网址链接1(二级结点)
-网址链接2(二级结点)
-新闻(一级结点)
-新闻标题(二级结点)
-作者信息(二级结点)
-新闻正文(二级结点)
—正文第一段(三级结点)
—正文第二段(三级结点)
—正文第三段(三级结点)
一旦已知每一个网页的URL地址,即可知晓该网页的DOM树。每棵DOM树中的每一个DOM结点,无论是一级结点还是叶子结点,又都具有唯一的XPath,一旦知晓Xpath路径和URL地址,即可取出该Xpath路径对应的结点的内容。
在本发明一实施例中,可以是用户选择某一个HTML网页的部分内容(内容模块)进行保存,此时记录下用户选择的内容模块对应的DOM结点的XPath,然后保存该网页的URL地址和该内容模块的XPath。在本发明一实施例中,用户通过浏览器访问第三方网页,此时客户端监控用户光标在浏览器中的运动轨迹,以确定用户是否选择内容模块。
在本发明一实施例中,可保存的区域(内容模块)只能是HTML代码树形结构中包含的DOM结点及其组合,即可保存的最小单元就是一个DOM结点。
步骤102:当用户请求所保存的网页内容时,取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址,根据所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址,定位到该一个或多个内容模块对应的DOM结点,取出DOM结点对应的网页内容。具体来说,根据URL地址和Xpath地址信息实时连接到该URL所对应的网站,并获取该网站的DOM树结构,根据所述Xpath地址,定位到所述一个或多个内容模块对应的DOM结点,读取所述DOM结点对应的网页内容。
步骤103:将所述网页内容推送展示在用户的终端屏幕上。
在本发明一实施例中,在步骤101中,一个或多个内容模块的Xpath路径以及对应网页的URL地址均保存在服务端,在步骤102中,用户向服务器端请求所保存的网页内容时,服务器取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址,根据该URL地址和内容模块的Xpath地址信息,定位到该内容模块对应的DOM结点,取出该DOM结点对应的网页内容,然后在步骤103中,服务器将取出的网页内容发送到用户侧,由用户侧的客户端进行展示。
在该实施例中,整个步骤102的执行过程均在缓存中执行,这样的好处是:服务器的持久性存储硬盘上并不保留第三方网页的任何明文内容,因而不会涉及到侵权风险;同时这种方式由于客户端只需要被动接收直接可供阅读的内容片段,不需要用户侧的客户端进行大量的运算,因此对客户端的要求也大大减低。在本发明另一实施例中,服务器在缓存内执行完步骤102后,并不立即清除缓存,而是保留一个预定的短时间,这样,当这段时间内有其他用户请求同样的内容时,服务器端无需再重新执行步骤102,而只需将缓存内的网页内容发送给用户侧即可,处理起来更加简单快捷。
当然,在本发明另一实施例中,还可以是服务器取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址,将所述一个或多个内容模块的Xpath路径以及对应网页的URL地址发送给用户侧的客户端,客户端根据该URL地址和内容模块的Xpath地址信息,定位到该内容模块对应的DOM结点,取出该DOM结点对应的网页内容,然后直接进行展示。正如前一实施例所述,这种情况,对客户端的计算能力要求较高。在本发明另一实施例中,在步骤101中,可以将网页中的多个内容模块组合成一个新的内容(保存在同一个网页中),此时,记录下内容模块对应的Xpath路径以及所述多个内容模块的组合方式。在步骤102中,根据所保存的网页的URL地址和所述多个内容模块的Xpath路径分别提取出多个内容模块对应的DOM结点的内容,然后根据所述多个内容模块的组合方式,将提取出的多个内容模块对应的DOM结点的内容组合成新的网页内容。在本发明一实施例中,多个内容模块的组合方式可以是按照用户选择内容模块的时间顺序来组合。
以以上提到的Dom树结构为例说明该实施例的技术方案,假设希望保存的内容模块为新闻正文的第一段以及第三段;并且用户点击的顺序是先点击选中新闻正文的第三段、后点击选中第一段,那么系统会记录下来第三段和第一段的Xpath,以及组合方式(按点击选择顺序组合),当用户请求所保存的内容模块的内容时,根据第三段和第一段的Xpath信息,取出第三段和第一段的内容,按照点击选择顺序组合成新的内容,在该新的内容中,第三段在前面,第一段在后。组合后的多个内容模块的内容对应的DOM结构如下(假设该组合后内容的URL地址为www.vjianke.com/e/f):
www.vjianke.com/e/f(根结点)
—正文第三段(一级结点)
—正文第一段(一级结点)
当然,在本发明一实施例中,系统可以默认一种固定的组合方式。
在本发明一实施例中,也可以将来自不同的网页的多个内容模块的内容组合成一个新的内容(保存在同一个网页中),在这种情况,只需要记录每个内容模块对应的URL地址以及该内容模块的Xpath路径。后续根据每个内容模块所对应的网页的URL地址、内容模块的Xpath路径以及多个内容模块的组合方式,分别读取多个内容模块对应的内容,然后根据这些内容组合成新的内容。
本领域技术人员可以理解,上述多种实施例可以相互结合成新的实施例。在本发明实施例提供的网页信息存储方法中,服务器仅保存网页的URL以及每个模块的Xpath路径信息,不保存原网页任何模块的具体内容。当用户访问服务器时,服务器根据所储存的URL和Xpath路径将网页内容还原在用户的浏览器上,以此避免保存原网页内容所带来的知识产权风险。
图2是本发明实施例中提供的网页信息存储的装置流程图。如图2所示,该装置包括如下模块:
记录模块:用于当需要保存第三方网页中某一个或多个内容模块的内容时,记录所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
保存模块,用于保存记录模块记录下的所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
提取模块,用于当用户请求所保存的网页内容时,取出保存模块所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址
内容还原模块,用于根据提取模块提取出的URL地址和内容模块的Xpath地址信息,定位到该一个或多个内容模块对应的DOM结点,取出该DOM结点对应的网页内容;将其发送给推送模块;
推送模块,用于接收将内容还原模块还原出的网页内容,将其展示在用户的终端屏幕上。
在本发明一实施例中,记录模块、保存模块、提取模块、内容还原模块位于服务器端,推送模块位于用户侧的客户端。也可以是记录模块和推送模块位于用户侧的客户端,保存模块、提取模块、内容还原模块位于服务器端。在本发明一实施例中,内容还原模块并不将还原出来的网页内容存储在服务器的持久性存储硬盘上中,而是将其存放在缓存中。
在本发明另一实施例中,记录模块、内容还原模块、推送模块位于用户侧的客户端;保存模块、提取模块位于服务器端。或者内容还原模块、推送模块位于用户侧的客户端;记录模块、保存模块、提取模块位于服务器端。
无论上述哪种实施例,客户端和服务器端均各自包括一个通信模块,用于与对方进行信息交互。
在本发明一实施例中,客户端形式上可以是用户浏览器或浏览器上的插件,也可以是独立运行于用户侧操作系统的软件,如APP应用。
本领域技术人员可以理解,无论是上述记载的方法、系统、客户端还是服务器,均可以利用计算机软件来实现,该计算机软件运行在有CPU、存储磁盘等构成的物理计算机或服务器上,即可实现上述描述的功能。本发明实施例所记载的计算机软件也可以是固化CD\DVD等存储媒介上的可执行文件,一旦执行,即可实现上述描述的功能。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种网页信息存储方法,其特征在于,包括:
当需要保存用户选择的第三方网页中一个或多个内容模块的内容时,仅记录所述一个或多个内容模块的Xpath路径以及对应网页的URL地址,并将所述一个或多个内容模块的Xpath路径以及对应网页的URL地址保存在服务器端;
当用户向服务器端请求所保存的网页内容时,服务器端取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址;或,服务器端取出所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址,并将所述一个或多个内容模块的Xpath路径以及对应网页的URL地址发送给客户端;
所述服务器端或客户端根据所述一个或多个内容模块的Xpath路径以及对应网页的URL地址,实时连接到该URL所对应的网站,并获取该网站的DOM树结构;根据所述Xpath路径定位到所述一个或多个内容模块对应的DOM结点,取出DOM结点对应的网页内容存放在缓存中;
其中,所述服务器端将缓存内容保留预定的短时间;当其他用户请求同样的内容时,服务器端将缓存内的网页内容发送给用户侧。
2.如权利要求1所述的方法,其特征在于,进一步包括:将所述取出的DOM结点对应的网页内容推送展示在用户的终端屏幕上。
3.如权利要求1任一所述的方法,其特征在于,所保存的内容模块多于一个,则所述方法进一步包括:
记录并保存下所述多个内容模块的组合方式;
则,当用户请求所保存的网页内容时,根据将所保存的网页的URL地址和所述多个内容模块的Xpath路径,分别提取出多个内容模块对应的DOM结点的内容;
根据所述多个内容模块的组合方式,将提取出的多个内容模块对应的DOM结点的内容组合成新的网页内容。
4.如权利要求3所述的方法,其特征在于,所述多个内容模块的组合方式为:按照用户选择内容模块的时间顺序来组合。
5.如权利要求3所述的方法,其特征在于,用户选择的多个内容模块来自不同的URL地址。
6.一种网页信息存储装置,其特征在于,包括:
记录模块,用于当需要保存用户选择的第三方网页中某一个或多个内容模块的内容时,仅记录所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
保存模块,用于保存记录模块记录下的所述一个或多个内容模块的Xpath路径以及对应网页的URL地址;
提取模块,用于当用户请求所保存的网页内容时,取出保存模块所保存一个或多个内容模块的Xpath路径以及对应网页的URL地址;
内容还原模块,用于根据提取模块提取出的URL地址和内容模块的Xpath地址信息,实时连接到该URL所对应的网站,并获取该网站的DOM树结构;根据所述Xpath路径定位到该一个或多个内容模块对应的DOM结点,取出该DOM结点对应的网页内容存储在缓存中;
其中,所述保存模块、提取模块位于服务器端;所述内容还原模块位于所述服务器端或客户端。
7.如权利要求6所述的装置,其特征在于,所述记录模块位于服务器端或位于客户端。
8.如权利要求6所述的装置,其特征在于,进一步包括:
推送模块,用于接收内容还原模块还原出的网页内容,将其展示在用户的终端屏幕上。
9.如权利要求8所述的装置,其特征在于,
记录模块、内容还原模块、推送模块位于客户端;保存模块、提取模块位于服务器端,或
内容还原模块、推送模块位于用户侧的客户端;记录模块、保存模块、提取模块位于服务器端。
10.如权利要求9所述的装置,其特征在于,所述推送模块位于客户端。
11.如权利要求10所述的装置,其特征在于,所述客户端和服务器端均进一步包括:通信模块,用于与对方进行信息交互。
12.如权利要求11所述的装置,其特征在于,所述客户端为浏览
器或浏览器上的插件,或APP应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210334664.2A CN102880679B (zh) | 2012-09-11 | 2012-09-11 | 一种网页信息存储方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210334664.2A CN102880679B (zh) | 2012-09-11 | 2012-09-11 | 一种网页信息存储方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102880679A CN102880679A (zh) | 2013-01-16 |
CN102880679B true CN102880679B (zh) | 2016-01-13 |
Family
ID=47482005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210334664.2A Expired - Fee Related CN102880679B (zh) | 2012-09-11 | 2012-09-11 | 一种网页信息存储方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102880679B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105589918B (zh) * | 2015-09-17 | 2017-04-05 | 广州市动景计算机科技有限公司 | 一种提取页面信息的方法及装置 |
CN106649392A (zh) * | 2015-11-03 | 2017-05-10 | 任子行网络技术股份有限公司 | 一种基于所见即所得技术获取信息的方法及装置 |
CN109462585A (zh) * | 2016-01-08 | 2019-03-12 | 北京京东尚科信息技术有限公司 | 一种自动过滤网络运营商嵌入http响应内容的方法和装置 |
CN106599075B (zh) * | 2016-11-14 | 2019-07-09 | 武汉斗鱼网络科技有限公司 | 一种统计用户行为数据的方法及装置 |
CN106709061A (zh) * | 2017-01-10 | 2017-05-24 | 深圳淞鑫金融服务科技发展有限公司 | 下一页网址的响应方法及装置 |
CN108600342B (zh) * | 2018-03-30 | 2020-01-10 | 连尚(新昌)网络科技有限公司 | 一种消息显示方法、设备及存储介质 |
CN111966940B (zh) * | 2020-07-30 | 2021-06-18 | 北京大学 | 一种基于用户请求序列的目标数据定位方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101089856A (zh) * | 2007-07-20 | 2007-12-19 | 李沫南 | 一种提取网页数据的方法和Web爬虫系统 |
CN101551800A (zh) * | 2008-03-31 | 2009-10-07 | 富士通株式会社 | 标注信息生成装置、查询装置及共享系统 |
CN102096581A (zh) * | 2009-12-10 | 2011-06-15 | 华为技术有限公司 | 生成微件的方法及装置 |
CN102129428A (zh) * | 2010-01-20 | 2011-07-20 | 腾讯科技(深圳)有限公司 | 一种实现从网页中订阅信息的方法及装置 |
CN102486799A (zh) * | 2010-12-03 | 2012-06-06 | 腾讯科技(深圳)有限公司 | 一种环球信息网www页面处理方法和装置 |
-
2012
- 2012-09-11 CN CN201210334664.2A patent/CN102880679B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101089856A (zh) * | 2007-07-20 | 2007-12-19 | 李沫南 | 一种提取网页数据的方法和Web爬虫系统 |
CN101551800A (zh) * | 2008-03-31 | 2009-10-07 | 富士通株式会社 | 标注信息生成装置、查询装置及共享系统 |
CN102096581A (zh) * | 2009-12-10 | 2011-06-15 | 华为技术有限公司 | 生成微件的方法及装置 |
CN102129428A (zh) * | 2010-01-20 | 2011-07-20 | 腾讯科技(深圳)有限公司 | 一种实现从网页中订阅信息的方法及装置 |
CN102486799A (zh) * | 2010-12-03 | 2012-06-06 | 腾讯科技(深圳)有限公司 | 一种环球信息网www页面处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102880679A (zh) | 2013-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102880679B (zh) | 一种网页信息存储方法和装置 | |
US8645453B2 (en) | Method and system of processing cookies across domains | |
US20180032491A1 (en) | Web page display systems and methods | |
CN102646135B (zh) | 一种网页收藏方法、装置及系统 | |
CN102985921A (zh) | 在具有电子资源数据库的客户端装置中高速缓存电子文档资源 | |
CN105095280A (zh) | 一种浏览器缓存方法和装置 | |
CN105373608A (zh) | 一种基于输入法的场景式内容推送方法及其系统 | |
CN104063401A (zh) | 一种网页样式地址合并的方法和装置 | |
CN101146040B (zh) | 分析网站流量的方法和装置 | |
CN104714968A (zh) | 对网站页面进行国际化的方法和装置 | |
CN102360391A (zh) | 页面显示方法、装置和系统 | |
WO2012016034A1 (en) | System and method for providing network resource identifier shortening service to computing devices | |
Gheorghe et al. | Modern techniques of web scraping for data scientists | |
US20230205826A1 (en) | Systems and Method for Domain Mapping | |
CN104809173A (zh) | 一种搜索结果的处理方法和装置 | |
CN105282238B (zh) | 一种资源管理方法 | |
CN103347069A (zh) | 网络访问的实现方法及装置 | |
KR101265164B1 (ko) | 브랜딩을 위한 단축 url 브라우징 제공시스템, 그 제공방법, 및 웹 클라이언트 | |
CN104462390B (zh) | 一种提高网页自适应布局效率的方法和系统 | |
CN103309954A (zh) | 一种基于html网页的数据抽取系统 | |
CN108108381B (zh) | 页面的监测方法及装置 | |
RU2640635C2 (ru) | Способ, система и сервер для передачи персонализированного сообщения на пользовательское электронное устройство | |
CN104615596A (zh) | 历史记录信息的清除方法及浏览器 | |
CN102694802B (zh) | 网络访问信息记录方法和装置 | |
CN102811234B (zh) | 保存应用的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160113 Termination date: 20180911 |