美团h5最新字体解密!!!(理论上能解决所有网站的woff字体加密)

一.前言

最近有个需求是要爬美团外卖的,发现除了app那边h5这里还有一个入口。那肯定就这个了卅,比较JS逆起来还是要比安卓方便一点的,登录这里就不说了,只能用手机号收验证码登录而且一些必要的参数都是服务器那边返回的不是本地生产。还是主要说一下它的字体加密。
在这里插入图片描述
其实就是这个啦,我估计有不少人都遇到过这种反扒措施但都没有美团的这个那么令人难受。之前的某些网站用这种反爬措施多少都能从转出来xml文件中找到一些规律,但美团的是完全没有规律的(至少我找了一上午是没找到)不过自古有反爬就有反反爬就有反反反爬就有反反反反爬 [狗头]。

二.准备环境

  • python
  • selenium Chrom
  • tesseract 识别引擎
  • fontTools

三.开始解析

整体的思路是我们拿到woff文件的地址然后自己通过html渲染出来,截图给Tesseract识别,然后返回一个对应的Map就可以直接用,理论上是所有的woff加密都可以用这种方法来解决的。

一般woff文件地址都在网页的源码里全局搜索一下 font-face就能找到了,美团的就是在/waimai/mindex/home这个里面。
在这里插入图片描述
拿到woff文件地址后下载下来通过py的fontTools可以得到被加密后的编码,这个留着写html和最后生成映射的时候用。
在这里插入图片描述
有了woff文件的地址和加密后的编码,就可以把他们写到自己的html里。
html的代码是这样的:
在这里插入图片描述
展现出的效果是这样的:
在这里插入图片描述
字正腔圆有没有,给狗狗都能识别出来 [狗头]。

下一步就是控制selenium打开生成后的html,用它自带的一个根据标签截图。可以准确的定位到你的字体哪里。

有了图片后就交给Tesseract识别去吧,只需要一行代码。
在这里插入图片描述

准确率不能说是100%吧,只能说是120%.(我只试了数字,你们有需要的话可以试一下汉字)
这是最后的运行的结果:

在这里插入图片描述

(第一次写文章,各位大佬轻点点评)

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值