一种页面文字的显示方法和装置制造方法

文档序号:6510425阅读:131来源:国知局
一种页面文字的显示方法和装置制造方法
【专利摘要】本发明提供了一种页面文字的显示方法和装置,其中方法包括:对待显示文字进行切分,得到N个文字组,N为2以上的正整数;在各文字组中混入随机文字;将混入随机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接;通过设置样式隐藏混入的随机文字。本发明所提供的方法和装置采用混淆的方式,既保证了页面文字的正常显示,又使得复制和抓取到的网页内容因混入了随机文字而无法正常显示,这种方式摆脱了对浏览器的依赖,从而有效地防止了网页文字被恶意复制和抓取。
【专利说明】一种页面文字的显示方法和装置
【【技术领域】】
[0001]本发明涉及计算机应用【技术领域】,特别涉及一种页面文字的显示方法和装置。【【背景技术】】
[0002]随着互联网上信息的爆炸式增长,网页版权保护问题也日趋重要。普通网页的文字很容易被直接拷贝到其他网页或媒体上,非法复制的成本很低,如何增加文字拷贝和抓取的难度,提高盗版成本,是亟待解决的问题。目前常用的方式主要有以下两种:
[0003]第一种方式是通过简单设置网页DOM元素的属性来防止网页文字被恶意复制。第二种是通过禁用右键菜单来防止恶意复制。然而这两种方式都依赖于浏览器的功能,存在很多方式就能够避开此限制,并且对恶意程序抓取网页文字并不起作用。

【发明内容】

[0004]有鉴于此,本发明提供了一种网页文字的显示方法和装置,用以有效地防止网页文字被恶意复制和抓取。
[0005]具体技术方案如下:
[0006]一种页面文字的显示方法,该方法包括:
[0007]对待显示文字进行切分,得到N个文字组,N为2以上的正整数;
[0008]在各文字组中混入随机文字;
[0009]将混入随 机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接;
[0010]通过设置样式隐藏混入的随机文字。
[0011]根据本发明一优选实施例,所述对待显示文字进行切分为:对待显示文字进行随机切分。
[0012]根据本发明一优选实施例,所述在各文字组中混入随机文字为:在各文字组中的待显示文字之前和/或之后混入随机文字,且混入随机文字的长度随机选取。
[0013]根据本发明一优选实施例,在通过设置样式隐藏混入的随机文字之前还包括:将拼接后得到的字符串放到一个Dom节点下。
[0014]根据本发明一优选实施例,所述通过设置样式隐藏混入的随机文字具体包括:
[0015]将Dom节点所包含待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值。
[0016]一种页面文字的显示装置,该装置包括:
[0017]切分单元,用于对待显示文字进行切分,得到N个文字组,N为2以上的正整数;
[0018]混淆单元,用于在各文字组中混入随机文字;
[0019]拼接单元,用于将混入随机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接;[0020]隐藏单元,用于通过设置样式隐藏混入的随机文字。
[0021]根据本发明一优选实施例,所述切分单元对待显示文字进行的切分为随机切分。
[0022]根据本发明一优选实施例,所述混淆单元在各文字组中混入随机文字时,具体在各文字组中的待显示文字之前和/或之后混入随机文字,且混入随机文字的长度随机选取。
[0023]根据本发明一优选实施例,所述拼接单元,还用于将拼接后得到的字符串放到一个Dom节点下。
[0024]根据本发明一优选实施例,所述隐藏单元在通过设置样式隐藏混入的随机文字时,具体执行:
[0025]将Dom节点所包含待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值。
[0026]由以上技术方案可以看出,本发明所提供的方法和装置采用混淆的方式,既保证了页面文字的正常显示,又使得复制和抓取到的网页内容因混入了随机文字而无法正常使用,这种方式摆脱了对浏览器的依赖,从而有效地防止了网页文字被恶意复制和抓取。
【【专利附图】

【附图说明】】
[0027]图1为本发明实施例一提供的网页文字的显示方法流程图;
[0028]图2为本发明实施例二提供的网页文字的显示装置结构图。 【【具体实施方式】】
[0029]在本发明中采用了另外一种思路,摆脱对浏览器的依附,采用混淆的策略,即让网页文字显示正常,又不能被复制和抓取后正常使用。为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0030]实施例一、
[0031]图1为本发明实施例一提供的网页文字的显示方法流程图,在本实施例中假设要在网页上显示一段文本,该文本中将要显示的文字为待显示文字,需要说明的是,本发明实施例中所述的文字为广义的文字,包括文字、符号、数字等,本发明实施例中以中文为例,但可以广泛应用于其他种类的文字,实现原理和方法相同。如图1所示,该方法具体包括以下步骤:
[0032]步骤101:对待显示文字进行切分,得到N个文字组,N为2以上的正整数。
[0033]本步骤中,在进行文字组的切分时,可以采用预定的规则,例如每M个文字切分为一组,M为预设正整数。然而为了避免对待显示文字的破解复制和抓取,在此切分文字组时优选采用随机切分的方式,切分数量、切分位置都可以采用随机的方式,此时上述N为随机数。
[0034]鉴于网页中可能会包含多个部分,例如标题、摘要、正文等等,在此可以仅针对网页中需要保护的文字部分进行随机切分,如果网页中存在多个部分都需要保护,那么可以将网页中不同的部分分别进行随机切分。
[0035]举个例子,假设待显示文字为“重要文字”,在本步骤中将该待显示文字随机切分成3个文字组:“重”、“要文”和“字”。
[0036]步骤102:在各文字组中混入随机文字。
[0037]在切分得到多个文字组后,在各文字组中待显示文字之前和/或之后混入随机文字,混入的随机文字是从字库中随机选取的,目的是为了进行混淆。若在步骤101中切分文字组的方式是按照预设的规则,那么在此为了避免对待显示文字的破解复制和抓取,混入随机文字的长度随机选取,若在步骤101中切分文字组的方式是随机切分,那么在此混入随机文字的长度可以是预定长度,也可以是随机选取的长度。另外在本步骤中需要记录混入的随机文字在各文字组中的位置和长度,以便后续步骤104中进行属性设置时能够区分随机文字。
[0038]接续上例,在三个文字组“重”、“要文”和“字”中分别随机混入随机文字,得到的各文字组变为:“遽劈啊重緙商”、“浑要文Il务大”、“梯字示正品”,并且分别记录第一个文字组中前3个文字长度和后2个文字长度为混入的随机文字,第二个文字组的前I个文字长度和后3个文字长度为混入的随机文字,第三个文字组的前I个文字长度和后3个文字长度为混入的随机文字。
[0039]步骤103:将混入随机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接。
[0040]在将各文字组作为Dom节点时,Dom节点的类型与各文字组在页面中位置相对应,接续上例,若待显示文字“重要文字”在页面中是行内元素,则将各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接时,得到:
[0041]“〈span〉遽劈啊重緙商</span>〈span>浑要文Il务大</span>〈span>梯字示正品<span>,,。
[0042]步骤104:将拼接后得到的字符串放到一个Dom节点下,通过样式隐藏混入的随机文字。
[0043]将拼接后得到的字符串放到一个Dom节点下并不是必须的操作,S卩如果所述待显示文字在页面中以独立的文本块形式存在,则需要将拼接后得到的字符串放到一个Dom节点下,使用<div>标签标识。将拼接后得到的字符串放到一个Dom节点下后,得到:
[0044]“ <div><span> 遽劈啊重緙商〈/span>〈span> 浑要文Il务大〈/span>〈span> 梯字示正品 </span>〈/div>”
[0045]根据记录的随机文字的位置和长度,通过设置Dom节点的样式属性,隐藏混入的随机文字。具体地,由于每一个Dom节点都具有自己的样式属性,在本发明实施例中可以通过样式属性中的文本宽度和首行文本缩进来隐藏混入的随机文字,通常将Dom节点中待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值。
[0046]接续上例,“<div>〈span>遽劈啊重緙商〈/span>〈span>浑要文Il务大〈/span>〈span>梯字示正品</span>〈/div>”在设置时,可以对“〈span〉遽劈啊重緙商〈/span〉”进行以下设置:
[0047]<em style= “position: absolute; z-1ndex:1; top: 0; width: 12px; text-1ndent:-36px; left: 0; ” > 遽劈啊重緙商 </em>
[0048]其中,position:absolute表示用浏览器绝对位置显示文本块,z-1ndex用于设置该节点内元素的堆叠顺序,top用于设置该节点内元素的顶部边缘,left用于设置该节点内元素的左边距。这些设置与本发明实施例关系不大,重要的是设置width和text-1ndent, width用于设置该节点内元素的宽度,在本实例中通常一个文字的宽度为12像素,即12px,即设置显示12px像素的文字;teXt-1ndent用于设置该节点内元素的首行文本缩进,在本实例中首行文本缩进-36px,也即是说向左缩进3个文字,这样就使得“遽劈啊”被缩进掉而不能显示,从“重”开始显示一个文字,也就是说只显示“重”,后面的“緙商”也不会显示。
[0049]同样道理,“〈span〉浑要文Il务大〈/span〉”和“〈span〉梯字示正品〈/spanX/div>”分别进行以下设置:
[0050]<em style= “position: absolute; z-1ndex:1; top: 0; width: 24px; text-1ndent:-12px; left:0; ” > 浑要文Il务大〈/em>
[0051 ] <em style= “position: absolute; z-1ndex:1; top: 0; width: 12px; text-1ndent:-12px;
[0052]left:0; ”> 梯字示正品 </em>
[0053]经过上述设置之后,在网页上就显示出“重要文字”,但实际上Dom节点中包含“遽劈啊重緙商浑要文Il务大梯字示正品”,由于复制和抓取是以Dom节点的内容为对象的,因此复制和抓取到的就是混入了随机文字的文本,显然无法正常使用,从而达到了防止复制和抓取的目的。
[0054]本实施例中所示的通常将Dom节点中待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值仅为所举的其中一种实现方法,也可以采用其他设置样式属性的方法隐藏混入的随机文字。
[0055]以上是对本发明所提供的方法进行的详细描述,下面通过实施例二对本发明所提供的装置进行详细描述。
[0056]实施例二、
[0057]图2为本发明实施例二提供的页面文字的显示装置结构图,该装置通常设置在网站的服务器侧,负责生成页面时的页面文字显示功能。如图2所示,该装置包括:切分单元
01、混淆单元02、拼接单元03和隐藏单元04。
[0058]其中切分单元01用于对待显示文字进行切分,得到N个文字组,N为2以上的正整数。切分单元01在进行文字组的切分时,可以采用预定的规则,例如每M个文字切分为一组,M为预设正整数。然而为了避免对待显示文字的破解复制和抓取,在此切分文字组时优选采用随机切分的方式,切分数量、切分位置都可以采用随机的方式,此时上述N为随机数。
[0059]混淆单元02用于在各文字组中混入随机文字。具体地,可以在各文字组中待显示文字之前和/或之后混入随机文字,混入的随机文字是从字库中随机选取的,目的是为了进行混淆。若切分单元01是按照预设的规则对待显示文字进行切分,那么为了避免对待显示文字的破解复制和抓取,混淆单元02混入随机文字的长度随机选取。若切分单元01采用随机切分的方式,那么在此混入随机文字的长度可以是预定长度,也可以是随机选取的长度。另外,混淆单元02还会记录混入的随机文字在各文字组中的位置和长度以供隐藏单元04后续使用。
[0060]拼接单元03用于将混入随机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接。在将各文字组作为Dom节点时,Dom节点的类型与各文字组在页面中位置相对应,例如若某文字组中包含的待显示文字是行内元素,则将该文字组作为以〈span〉标识的节点。
[0061]另外,如果待显示文字在页面中以独立的文本块形式存在,那么拼接单元03还用于将拼接后得到的字符串放到一个Dom节点下,使用<div>标签标识。
[0062]隐藏单元04用于通过设置样式隐藏混入的随机文字。具体地,将Dom节点所包含待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值。
[0063]本发明实施例所提供的上述方法和装置能够广泛的应用于包含重要信息或者需要进行知识产权保护的页面,例如酒店行业的网站上,对于客房详情的信息为酒店的重要信息,关于客房详情的文字内容就可以采用本发明实施例提供的方法和装置进行显示,能够有效地防止恶意复制和抓取。这种方式摆脱了对浏览器的依赖,降低了对用户交互上的伤害。
[0064]在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0065]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0066]上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(Random Access Memory, RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0067]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种页面文字的显示方法,其特征在于,该方法包括: 对待显示文字进行切分,得到N个文字组,N为2以上的正整数; 在各文字组中混入随机文字; 将混入随机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接; 通过设置样式隐藏混入的随机文字。
2.根据权利要求1所述的方法,其特征在于,所述对待显示文字进行切分为:对待显示文字进行随机切分。
3.根据权利要求1或2所述的方法,其特征在于,所述在各文字组中混入随机文字为:在各文字组中的待显示文字之前和/或之后混入随机文字,且混入随机文字的长度随机选取。
4.根据权利要求1或2所述的方法,其特征在于,在通过设置样式隐藏混入的随机文字之前还包括:将拼接后得到的字符串放到一个Dom节点下。
5.根据权利要求1或2所述的方法,其特征在于,所述通过设置样式隐藏混入的随机文字具体包括: 将Dom节点所包含待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值。
6.一种页面文字的显示装置,其特征在于,该装置包括: 切分单元,用于对待显示文字进行切分,得到N个文字组,N为2以上的正整数; 混淆单元,用于在各文字组中混入随机文字; 拼接单元,用于将混入随机文字后的各文字组分别作为一个Dom节点按照切分时对应的顺序进行拼接; 隐藏单元,用于通过设置样式隐藏混入的随机文字。
7.根据权利要求6所述的装置,其特征在于,所述切分单元对待显示文字进行的切分为随机切分。
8.根据权利要求6或7所述的装置,其特征在于,所述混淆单元在各文字组中混入随机文字时,具体在各文字组中的待显示文字之前和/或之后混入随机文字,且混入随机文字的长度随机选取。
9.根据权利要求6或7所述的装置,其特征在于,所述拼接单元,还用于将拼接后得到的字符串放到一个Dom节点下。
10.根据权利要求6或7所述的装置,其特征在于,所述隐藏单元在通过设置样式隐藏混入的随机文字时,具体执行: 将Dom节点所包含待显示文字的长度设置为该Dom节点的样式属性的文本宽度值,将Dom节点中待显示文字之前混入的随机文字长度设置为该Dom节点的样式属性的首行文本缩进值。
【文档编号】G06F17/22GK103473214SQ201310401774
【公开日】2013年12月25日 申请日期:2013年9月6日 优先权日:2013年9月6日
【发明者】周建城 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1