zoukankan      html  css  js  c++  java
  • 反爬虫的前端思路

    一、前言

      一些网站的敏感数据(如商品价格)是不希望被爬虫抓取。所以在不影响seo的情况下,一般采取什么策略呢,前端又可以做些什么呢?

    二、常见爬虫策略

      反爬虫不是阻止爬虫抓取数据,这是不现实的,所以可以在数据上做手脚。一般如果希望页面能在用户面前正常展示,就必须要做到识别真人与机器人。因此工程师们做了各种尝试,这些策略大多采用于后端。比如:

      1、User-Agent + Referer检测

      2、账号及Cookie验证

      3、验证码

    但是爬虫可以模拟真人操作,比如:

    • 模拟浏览器环境识别验证码

    • 接入第三方识别验证码

    三、前端思路

    1、伪元素隐藏

    汽车之家

    把关键字写到伪元素的content里面,要爬取数据,必须解析css,这无疑增加了难度。

     2、元素定位覆盖式

    去哪儿

    真实展示的价格是根据一定的规则(这个当然自己定义)错位产生的。爬虫抓取到数据一定会一脸懵逼。

    3、font-face

    猫眼电影

    对于每日的电影院票价这一重要数据,源代码中展示的并不是纯粹的数字。而是在页面使用了font-face定义了字符集,并通过unicode去映射展示。比如unicode码在页面解析显示为:,爬虫只能抓取到这样的数据但是不知道后面的映射关系,所以也没办法;

     

    动态的font字体

     其实想破解这个还是有办法的,可以下载猫眼里面的字体库,然后找到映射关系。《反击“猫眼电影”网站的反爬虫策略》

    4、图片剪切

    然后通过background-position去定位。

    5、字符串分隔

    不过不做混淆,趴下来再重组就可以还原了。

  • 相关阅读:
    第06组 Alpha冲刺(6/6)
    第06组 Alpha冲刺(5/6)
    第06组 Alpha冲刺(4/6)
    第06组 Alpha冲刺(3/6)
    第06组 Alpha冲刺(2/6)
    第06组 Alpha冲刺(1/6)
    第06组 团队Git现场编程实战
    团队项目-需求分析报告
    团队项目-选题报告
    第二次结对编程作业
  • 原文地址:https://www.cnblogs.com/leaf930814/p/8992576.html
Copyright © 2011-2022 走看看