网页抓取 加密html(web编程,思考着辛辛苦苦换行编写的web别人右键查看源码不就一目了然了?)
优采云 发布时间: 2022-02-23 19:21网页抓取 加密html(web编程,思考着辛辛苦苦换行编写的web别人右键查看源码不就一目了然了?)
某web编程,想想难写的web,当有人右键源代码,是不是一目了然?当然,有些人会把脚本写成外部js引入,但只是增加了查看源码的步骤。我只是想把整个页面的html加密,但是右键查看的时候看不到代码。那么有可能吗?使用哪种方法?
一是动态生成html代码,而不是直接输出。你需要js的document.write来动态插入html神器!
那么下一步就是考虑编码问题了。也可以直接 document.write("...."); 但这与不加密没有什么不同。但是我还是先测试了这个方法,遇到了一点麻烦,web编程中经常遇到的多个双引号引起的字符串错误问题。为了避免这种双引号问题,必须用编码绕过它。
流行的已知编码只有少数几种,比如json、base64.,那就先用json试试。
json编码的工作方式如下:
右键查看源码,可以看到代码按照我的思路正常运行,双引号也没有问题。中文是用json编码的,但是还是可以看到大部分的html代码。加密效果为 1%。
然后尝试base64
base64 编码的工作原理如下:
右键查看代码,可以看到html都是加密的,但是根据数据的长度还是可以看到html结构。这仍然是一个单行调用。
下面改为链式调用
代码完全失去了原来的结构。哈哈
接下来尝试二进制编码:
接下来尝试以八进制编码:
接下来,尝试用十进制编码(顺便添加一点无用符号以增加混乱):
接下来尝试以十六进制编码(无分隔符):
接下来尝试以十六进制编码(带分隔符):
然后想得到一个密码输入框,输入正确的密码来显示。
思路是php端加密真实网页des,http传输,网络传输只是一个很大的变量字符串
您必须使用密码对其进行解密才能知道它。这种des加密的好处是可以加密并通过网络传输数据。虽然 http 是透明的,但内容可以使用密码锁定的数据进行加密。别人看到的是一堆乱码的html,不知道实际数据。虽然des很弱,但是没那么容易破解
浏览器访问网页,先输入密码,解密,成功则显示真实网页
其实还有其他的编码和压缩编码,我不是很了解,而且要动态输出html,我用的php必须和js匹配,一边加密一边解密,如果不匹配或者没有合适的编码,无法完成。.
结论:这种加密纯粹是我无聊的研究,但是web服务器输出的html加了一层加密。客户端收到后,js动态解码输出。虽然无法右键查看代码,但是浏览器开发者工具运行后会显示html。代码,一目了然。对于那些不想让爬虫看到的网站。爬虫爬取的数据都是加密的乱码,除非有爬虫模仿浏览器运行js。这个加密的网站爬虫估计很不友好。因为爬虫无法识别,所以不知道你的网站标题和图片链接的内容,但是经过一些变体编码的研究,对网页有了更深的了解和理解。
超过。
欢迎任何形式的转载,但请务必注明出处,尊重他人的劳动成果。