大众点评最新字体解密19年7月

有网友说我之前写的 大众点评字体解密 的方法已经失效了,所以更新一篇解密 2019年7月25日。

查看加密

图片

看到都是小框框,为了一探究竟我们查看源码找到加密处

图片

所有文字都是  > 这样的怪符号。一脸懵逼,这和之前点评网站的字体反爬完全不同了。

查看页面代码

图片
经过一番查找, 发现了两个个至关重要的信息

  1. 关键 CSS 文件, 里边包含了字体文件,用于通过神秘代码映射出真正文字。
  2. 加密处标签 clss='address' 这里的class值就是,使用的哪个指定的字体库。

打开 CSS

图片
里边就有字体文件 .woff 我们下载这个字体文件

打开 woff 文件

这里我们利用工具 http://fontstore.baidu.com/static/editor/index.html

打开字库文件

图片

经过对比发现,可以通过页面上加密的神秘代码和字体库中红色方框中代码进行匹配
图片

用 python 获取 woff 的内容

pip3 install fontTools

这个库可以将 woff 文件转换为 xml 文件,并读取

from fontTools.ttLib import TTFont

font = TTFont('字库.woff')
font.saveXML('test.xml')  # 将 woff 写为 xml 文件从而就可以对 xml 文件进行操作了

Redis Hash 储存字库

美团这套字体库是会随机更新的,所以我们需要写一套通用代码出来自动匹配!

解决方案:

我做了一套 Redis Hash储存,将字库同步到redis中,如果出现新字库就会自动提取到redis中, 如果字库是旧的,那么直接从旧字库取出对应值。

hash 的 key 为字库名, 值为字库映射表

毫秒级响应超快速度将加密的神秘代码转换为正常字符

调用案例

  1. 在实例化对象的时候配置 redis (默认已经配置的本机redis)
  2. 填入数据页面中 含有字体链接的css文件路径
  3. 调用解析神秘代码即可

图片
图片
图片

Demo代码

欢迎 Star 与关注,会不断更新其他站点的解密、教程等

GitHub代码
如果需要批量页面解析的话,需要将class 值与字库对应起来

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值