Python爬虫:屏蔽 F12 和 右键检查

爬虫是一门非常神奇的技术,反爬虫是一门神奇的艺术。
反爬虫很大程度上是建立在爬虫之上了产物,爬虫越疯狂,反爬就越强。

其实今天写这篇文章是因为几天前碰到一个 Vip 电影解析的网站,它屏蔽掉了网页的 F12 来防止用户监听网络请求。
只要用户打开 F12,网页内容马上就变得无法加载而中断,并显示检测到非法调试。




众所周知,在审查元素(F12)的情况下,用户可以更改一部分页面的代码,比如修改 CSS 代码,注入恶意 JS 等等。
怎么来做到禁止用户的恶意行为呢?

这也不难想到它就是由前端 JavaScript 来实现的

代码实现

禁止右键

document.oncontextmenu = new Function("event.returnValue=false;");

禁止选中复制

document.onselectstart=new Function("event.returnValue=false;");

禁止打开 F12 和 shift+ctrl+i 调起开发者工具

window.onkeydown = window.onkeyup = window.onkeypress = function () {
            window.event.returnValue = false;
            return false;
    };

看到效果之后就感觉之前的目标网站也不过如此嘛。

但是如果用户在一些浏览器 比如 IE浏览器禁止加载 javascript 的话,也是不起效果的。

而且区区页面的检测就能挡得住爬虫?
这是不可能的,你能屏蔽浏览器的调试工具,能屏蔽代理中间人抓包吗?
理论上只要有网络请求的地方,都是可以捕捉得到的。

反爬小白:但是我可以弱弱的小防一波呀,至少制造了一点小困难。(说的不错,但是我开始瞧不起你)


JS

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!