WOFF字体反爬之易车网

相关权益问题,联系邮箱即可删除:lh1995cn@gmail.com

  • 前言

易车网链接:http://dianping.bitauto.com/sid_2384/koubei/2557927641943680

该页面评价加载了WOFF字体,在审核元素中查看,发现个别汉字无法正常显示,由此可推测该WOFF文件中,只有少数常用汉字被单独编码了。
在这里插入图片描述

审核元素中无法正常显示的字,在源码中显示为“”格式,该格式为unicode编码。
在这里插入图片描述

  • 正文

字体文件下载地址:http://dianping.bitauto.com/yc-pc/comment/font/yc-ft.woff

通过百度在线解析WOFF字体:http://fontstore.baidu.com/static/editor/index.html
在这里插入图片描述
通过对比发现,“”取后三位数字“700”,用“700”匹配字体解析后的编码,发现为“最”字。

最后将WOFF解析为XML文件,可以用Python的fontTools库去解析为XML,也可以使用“WoffToXML.exe”工具(调用方法CMD WoffToXML.exe 1.woff 1.xml)得到XML。

“WoffToXML.exe”工具下载地址:
https://pan.baidu.com/s/1D0f02iD8DOB0J7EhNU1jaw 提取码: qrbi
在这里插入图片描述
通过xml结果,搜索“700”得到uni6700,将uni6700,变成\u6700,即可转为对应的汉字,以此类推,下面的uni8FA9,变成\u8FA9,就是“辩”字,在线转换网站:http://tool.chinaz.com/tools/unicode.aspx

至此分析易车网WOFF字体文件完毕!

参考资料:

【woff字体架构】https://www.w3.org/TR/2012/REC-WOFF-20121213/

Python的fontTools库解析代码:

import sys
def main():      
    from fontTools.ttLib import TTFont
    font = TTFont(sys.argv[1])
    font.saveXML(sys.argv[2])
    
if __name__ == "__main__":
    main()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值