上一篇文章我们说了下字体反爬1的解决思路,今天我们说下字体反爬2的思路,其实都差不多的,我个人感觉字体反爬思路都差不多,只是一些细节上有一些差异,
-
看网站介绍
也是分成了1000页数据(这个平台的数据都是分成1000页) -
查看源码
这个加密后和页面显示的数据都挺有意思 -
获取字体文件并查看
字体文件里面的内容很多,其实我们用到的只有钱10个数字 -
分析字体文件和网页数据查找规律
我也想了好久,源码里面是汉字,是怎么和字体文件里面的 ‘map code=“0x6ee9” name=“uni6EE9”/>’code和name对应起来的,我就找有没有方法吧code这种变成文字,chr方法正好可以
ox6ee9 对应的汉字是 滩, 滩这个字在网页里面对应的是0,到这是我就立马去看字体文件里面0的属性是什么,果然让我猜对了 0的name属性就是6ee9
那么 问题又来了 怎么获取数字和name的对应关系呢
这样所有的问题就都解决了
应于网站要求,这里只说思路,不提供代码
每次请求的字体文件都不一样,是动态变化的,所以字体文件用一次就废了
1、访问页面,获取加密数据。
2、下载字体文件。
3、查看字体文件。
4、根据字体文件和网页数据得出的规则,构建关系映射。
5、替换掉加密的数据,并转为int类型的数字,用于求和。
6、计算出一个页面的和,记录下来,继续第1个步骤。
这个平台的题目思路还会再接下来的文章中发布,有不理解的可以私信我