防爬虫

  1. 关闭浏览器调试
 let debugflag = false
 endebug(false, function () {
      // 非法调试执行的代码(不要使用控制台输出的提醒)
      document.write('检测到非法调试, 请关闭调试终端后刷新本页面重试!');
      document.write("
"
); document.write("Welcome for People, Not Welcome for Machine!"); debugflag = true; }); if(!debugflag){ ... }
  1. 利用 canvas、::before 和 ::after 的 content 做字典等方式渲染页面
.context_kw0::after{
    content: ",";
}
.context_kw21::before {
    content: "名";
}
/*
字典 {0: ",", 1: "的",  21: "名"}
之后结合 js 对 dom 添加 class
*/
  1. 混淆字典

  2. 更多方式

1、封IP:网页的运维人员通过分析日志发现最近某一个IP访问量特别特别大,某一段时间内访问了无数次的网页,则运维人员判断此种访问行为并非正常人的行为,于是直接在服务器上封杀了此人IP。

2、封USERAGENT:很多的爬虫请求头就是默认的一些很明显的爬虫头python-requests/2.18.4,诸如此类,当运维人员发现携带有这类headers的数据包,直接拒绝访问,返回403错误

3、封COOKIES:服务器对每一个访问网页的人都set-cookie,给其一个cookies,当该cookies访问超过某一个阀值时就BAN掉该COOKIE,过一段时间再放出来,当然一般爬虫都是不带COOKIE进行访问的,可是网页上有一部分内容如新浪微博是需要用户登录才能查看更多内容。限制每个每天下载300张.

4、验证码验证:当某一用户访问次数过多后,就自动让请求跳转到一个验证码页面,只有在输入正确的验证码之后才能继续访问网站

5、javascript渲染:网页开发者将重要信息放在网页中但不写入html标签中,而浏览器会自动渲染
                    
                    

你可能感兴趣的:(安全)