用TTFont('./myHome.woff').saveXML('./myHome.xml')把ttf/woff解析出xml 解析出xml的GlyphOrder标签里定义了有哪些字符 cmap标签里的cmap_format_12标签里做了映射关系,如code=0x11111,name="one or unicode" 然后前端传入0x11111时用自定义的字体解码,找到code对应的name="one or unicode" 然后再根据name=xx,找到对应的<TTGlyph name=xx>,就是字形数据。 起点中文网: 字体文件里name直接表明了是什么数字,所以只要把前端返回的𘞶转为16进制,然后就是找code=0x11111对应映射的name就知道是几了。 而猫眼里面 里把&#替换成0为0xf1c8就是字体文件里的code,然后找到对应的name=uniF1C8,然后再找对应的字形数据即可。 因为字体文件会变化,所以对应的code也会变化,只能把前端返回的code,找到对应字形数据,然后对比一开始我们人工识别出来的字形数据。 https://blog.youkuaiyun.com/fdipzone/article/details/68166388#前端用自定义字体加密 https://www.zhihu.com/question/268724762#关于自定义字体加密数字的大体介绍 自定义字体加密解析参考: https://blog.youkuaiyun.com/qq_31032181/article/details/79153578#猫眼字体加密解析案例 https://www.jianshu.com/p/0e2e1aa6d270#猫眼字体加密解析案例 https://mrxin.github.io/2018/04/14/handle-some-web-font-crawl/#这里有不用下载字体,直接请求字体当缓存使用 https://zhuanlan.zhihu.com/p/33112359#猫眼字体加密解析案例 http://coolcao.com/2018/06/09/tips-of-anti-spider-in-fe/关于字体加密反爬以及其他总结
http://mp.weixin.qq.com/s?__biz=MzA4MjEyNTA5Mw==&mid=2652568417&idx=1&sn=61ad5c0126f551036fbbf51557995d82&chksm=8464d32bb3135a3d39e6193c233a678bfb651f7bddc8f14fcb92b75c64b09f0d9246328f4fe8&scene=0#rd
https://mp.weixin.qq.com/s/kzndOT8E2JFNX_APnB4y7A疑问fontTools库, 如何将字库文件转换成xml格式的?
反爬里的自定义字体
最新推荐文章于 2024-12-25 17:05:27 发布