要爬这个的话先请求 **http://xxfb.mwr.cn/sq_dxsk.html** 获取到 loadData() 里的 URL
```
http://xxfb.mwr.cn/一级随机/二级随机
```
**loadData()** 里面请求数据的 URL 是服务器动态生成的,虽然每次都不一样,但是又可以重复使用,不知道是不是忘了做频率限制,或者会偷偷后台统计?
再从 URL 获取 JSON 数据,数据的格式是:
```
"#UEO3kxleHI_1725353725381otltag䌙䅭#FontTag"
```
对应
```
"#{字体文件名}otltag{内容}#FontTag"
```
这个字体文件只有 744 个字形,除去前后两个空白字形,有用的只有 742 个字形,可以根据字形顺序建立对照表;
每次请求数据时服务器会动态偏移字体的 code point ,生成新的字体文件;
根据观察每次生成的字体文件中字形顺序没有改变,而且每个字形的 code point 相差都是 2 ,所以只需要根据字体名称请求字体文件;
```
http://xxfb.mwr.cn/ttf/{字体文件名}.ttf
```
获取到第 1 个有用的字形的 code point ,也就是索引 1 处的 code point ,就可以根据字形顺序推导出其他字形的 code point ;
最后把内容转换成 unicode 码位,把字形的 code point 转换成 16 进制,两边匹配一下就可以得到实际看到的内容了。 |