一种在Web端防止文本内容被完整截取的方法技术

技术编号:39276115 阅读:7 留言:0更新日期:2023-11-07 10:53
本发明专利技术公开了一种Web端防止文本内容被完全截取的方法,所述方法包括如下步骤:步骤一、生成包括一套内容完全正确和一套包含错误信息内容的文本内容;步骤二、对设备异常和/或行为异常进行判断;步骤三、当设备或行为均无异常时,屏幕内显示完全正确的内容,屏幕外显示包含错误信息的内容;或,当设备和/或行为产生异常时,屏幕内外均显示包含错误信息的内容,防止文本内容被完全截取。本发明专利技术还公开了上述方法在Web端防止文本内容被完全截取中的应用。本发明专利技术所述的方法不影响正常用户的使用体验,内容保护隐蔽性强,不易发现,多管齐下,保护效果好。护效果好。护效果好。

【技术实现步骤摘要】
一种在Web端防止文本内容被完整截取的方法


[0001]本专利技术属于Web开发领域
,涉及一种在Web端防止文本内容被完整截取的方法。

技术介绍

[0002]如今的OCR技术非常成熟,Web网页内容如果想要保护,就必须对OCR技术进行对抗。
[0003]目前现有的对抗技术都是对文字内容增加干扰,例如让文字模糊、给文字增加下划线,或者让文字周围有方块,如图1中让文字周围有方块的方式。
[0004]但是这种处理会牺牲用户的阅读体验,缺点十分明显。

技术实现思路

[0005]为了解决现有技术中存在的不足,本专利技术的目的是提供一种基于分屏渲染策略,在Web端防止文本内容被完整截取的方法。本专利技术能够在不影响阅读体验的情况下,有效对抗OCR,使其无法自动化处理,保证web内容的安全。所述分屏渲染策略是指根据不同的场景,确定在屏幕内外是否显示包含错误内容的信息。
[0006]本专利技术在实施时需要准备两套正文内容,一套是完全准确的,一套是包含错误信息。当用户滚动浏览Web内容的时候,在屏幕内的信息是正确的,屏幕外的信息是错误的。此时,如果有人想要截取包括屏幕内外文本在内的整段信息,就会获得错误内容。本专利技术在实现时,考虑了如何获得及使用怎么样的错误内容,如何避免由于页面缩放使所有内容全部展示在屏幕中,如何避免使用自动拼图截屏工具自动获取多张截图等问题。
[0007]在本
技术实现思路
的描述过程中,可能涉及到的缩略语和关键术语的定义如下:
[0008]HTML:超文本标记语言
[0009]CSS:层叠样式表
[0010]JavaScript:一种广泛用于客户端的脚本语言
[0011]OCR技术:光学字符识别(Optical Character Recognition,OCR)是指对文本资料的图像文件进行分析识别处理,获取文字及版面信息的过程
[0012]厚码:错误的文本信息
[0013]本专利技术提供了一种在Web端防止文本内容被完全截取的方法,所述方法包括如下步骤:
[0014]步骤一、生成包括一套内容完全正确和一套包含错误信息内容的文本内容;
[0015]步骤二、对设备异常和/或行为异常进行判断;
[0016]步骤三、当设备或行为均无异常时,屏幕内显示完全正确的内容,屏幕外显示包含错误信息的内容;
[0017]当设备和/或行为产生异常时,屏幕内外均显示包含错误信息的内容,防止文本内容被完全截取。
[0018]步骤一中,包含错误信息内容的文本可以通过包括以下两种方式中的任意一种实现(根据需求也可以使用其他的手段,例如随机乱序,插入字符,上下翻转,扭曲、杂点干扰,删除线,模糊,字体更换等实现):
[0019]方式1、选择对应于中文内容的某一个Unicode值范围,任意改变其中的一个和/或多个Unicode值,生成与原文意思不对应的错误汉字;在实际实施过程中,对Unicode值本身以及Unicode值范围的改变和调整没有特殊要求,根据实际需要选择最符合实施要求的即可;
[0020]方式2、对包括中文数字、中文代称、中文代词、阿拉伯数字、英文字母等在内的内容进行随机混淆和/或对部分或全部固定内容生成反义词,使之与原文意思不对应。
[0021]步骤二中,对设备异常进行判断包括设备的页面尺寸是否产生可疑的高宽比例,是否存在偏差较大的内外窗体尺寸等;对行为异常进行判断包括是否有页面规律滚动,是否有页面上相同位置的连续触摸等。
[0022]具体地,
[0023]本
技术实现思路
分为下面四部分:基础实现,错误内容生成,异常设备识别和异常行为识别;本专利技术的实现过程中,当触发异常行为识别时会同时进行异常设备识别,但是两种识别独立进行,而触发异常设备识别时不一定会进行异常行为识别。
[0024]基础实现
[0025]在Web中,正文内容是使用HTML代码呈现的,对于每一段文字内容,可以使用统一的HTML元素包裹,本专利技术中可以使用<p>和</p>实现段落开头和结尾的定位(其他元素也可以,<p>元素语义会更好),此时,包含多段具体段落内容的HTML结构类似如下:
[0026]<p>段落1</p>
[0027]<p>段落2</p>
[0028]<p>段落3</p>
[0029]<p>段落4</p>
[0030]<p>段落...</p>
[0031]<p>最后一段</p>
[0032]使用JavaScript给Web页面绑定滚动事件,用于判断web页面是否发生滚动,当页面滚动行为发生的时候,检测每一个<p>元素是否在显示器窗口范围内,如果在范围内显示正确内容,如果不是,显示错误内容。
[0033]本专利技术中检测每个<p>元素是否在显示器窗口范围内的检测方法是使用Element.getBoundingClientRect()这个方法实现的,其可以返回当前元素四条边相对于视窗边缘的位置,如图4所示。
[0034]在本场景中,只需要考虑垂直方向的位置,因此,只需要遍历所有的<p>元素(包括<p>和</p>),如果<p>元素的bottom边缘距离窗口上边缘的偏移大于0,并且top边缘距离窗口上边缘的偏移小于窗口高度,则可以认为该元素是在显示器窗口范围内,否则就是在屏幕外。使用代码示意如下:
[0035][0036]具体说明如下:
[0037]首先使用document.querySelectorAll('article p')获取指定article元素下的所有p元素,并将其赋值给变量elePs。
[0038]接下来使用window.innerHeight获取视窗的高度,并将其赋值给变量viewportHeight。
[0039]然后通过调用window.addEventListener('scroll',function(){...});给window对象添加一个scroll事件监听器,当用户滚动页面时,会触发这个监听器函数。
[0040]函数中的elePs.forEach()用于对每个p元素执行后面的函数。
[0041]函数中的第一行代码var bounding=ele.getBoundingClientRect();获取当前元素的边界矩本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在Web端防止文本内容被完全截取的方法,其特征在于,所述方法基于分屏渲染策略,包括如下步骤:步骤一、生成包括一套内容完全正确和一套包含错误信息内容的文本内容;步骤二、对设备异常和/或行为异常进行判断;步骤三、当设备或行为均无异常时,屏幕内显示完全正确的内容,屏幕外显示包含错误信息的内容;或,当设备和/或行为产生异常时,屏幕内外均显示包含错误信息的内容,防止文本内容被完全截取。2.如权利要求1所述的方法,其特征在于,步骤一中,包含错误信息内容的文本通过包括以下两种方式中的任意一种实现:方式1、选择对应于中文内容的某一个Unicode值范围,任意改变其中的一个和/或多个Unicode值,生成与原文意思不对应的错误汉字;方式2、对包括中文数字、中文代称、中文代词、阿拉伯数字、英文字母在内的内容进行随机混淆和/或对部分或全部固定内容生成反义词,使之与原文意思不对应。3.如权利要求2所述的方法,其特征在于,方式1进一步包括如下:创建了一个正则表达式对象regMix,用于匹配预设Unicode编码范围内的汉字;通过调用replace方法,将文本内容中符合正则表达式regMix的汉字字符替换为Unicode编码运算后获得的新字符;替换完成后,新字符用于后续的处理或者输出。4.如权利要求2所述的方法,其特征在于,方式2进一步包括如下:定义构建一个包含汉字对的反义词映射表、包含中文数字的数组、...

【专利技术属性】
技术研发人员:张鑫旭刘鹏龚佳毅
申请(专利权)人:阅霆信息技术上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1