反爬虫--字体库加密案例分析

        使用爬虫时发现有两个网站均使用的字体库加密,但是各自都在此基础上进行了反爬虫优化,浅浅记录一下。

1、字体库加密(字体加密对应不固定

        网站对字体通过调整“font-face”的base64编码实现随机字体加密,有效针对爬虫

        解决思路:获取某一元素的font-family对应到相应的font-face,处理后保存为ttf文件,再使用TTFont提取后进行一系列处理,在对文本内容进行纠正,实现内容爬取。

        由于字体随机加密,对应不固定,个人认为有以下两种解决思路:

        ①多次爬取进行人工筛检,若发现实际字体库中存有总字体较少,则提取各个字体外形某特征进行存储,再次爬取新内容时通过该特征确定实际显示文字,将unicode与实际显示进行关联,后以此对文本内容进行纠正。

        ②若字体数量较多,可引入ocr进行识别,以此将unicode与实际显示进行关联

2、字体库加密+伪元素content

        网站对字体加密通过ttf文件进行存储,加密前后对应相对固定,与上一个不同的是通过伪元素存储了部分文字

        解决思路:个人认为,通过正则匹配可有效提取出为元素中的文字再通过适当的方式调整至准确位置,总体思路与代码应该都不会太难(未实践。

小结

        字体库加密是很常见的反爬虫方法,感觉若是将上述两种方法再进行结合效果会更好,也很期待在ai的不断发展与落地下反爬虫又将会有怎么样的新颖更有效的方法。

                  

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值