其他分享
首页 > 其他分享> > 字体反爬(2)

字体反爬(2)

作者:互联网

这次是动态字体库的字体反爬 

猫眼电影榜单国内票房榜,地址:https://maoyan.com/board/1

可以看出又是字体反爬,需要获得字体文件,定位字体文件的url,在页面或css里搜@font-face或font-famil

在network选font标签刷新页面几次发现每次用的字体都不一,加密用的字体库是动态的,手动建立关系表然后全局替换的方法不管用了。

 

解决方案

建立字符和动态字体库unicode的联系

原理

首先要了解字体文件内部有很多表,上篇用到记录unicode索引和字形关系的cmap表就在里面,

这此要用到glyf表,这个表里记录了具体的字形数据,表里只记录了字形数据,没有表头索引。

有专门的表loca按顺序记录glyf里每个字形的位置,在使用字体时通过loca表来找到具体字形。

所以反爬不是改变字形的话可以利用字形数据来找到自定义字体unicode与真实字符的联系。

这部分详细资料见 https://www.cnblogs.com/shenyiyangle/p/10700156.html 中的glyf表。

找关联的思路如图:

 

1.下载一个网站字体做为基准,建立基准字体unicode和真实字符关系。

2.在页面刷新网页字体库变化,重新下载字体,记为网站字体2,通过比较网站字体1和网站字体2的字形找到unicode和新unicode联系。

3.再通过相同的unicode来建立真实字符和变化字体库unicode的联系,最后全局将新unicode替换成真实字符。

 

代码明天写。。。

 

标签:字符,字形,反爬,字体库,字体,unicode
来源: https://www.cnblogs.com/shenyiyangle/p/10704696.html