吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2325|回复: 8
收起左侧

[Python 原创] 【原创】【Python】一个有意思的自定义字体

[复制链接]
gentlespider 发表于 2021-3-24 11:28

目标:易车论坛

随便找个url,如https://baa.yiche.com/aodia4l/thread-24943442.html
进入后发现页面是这样的


然后打开response,看到的是这样的

2.png
我们发现字体加密了。
于是找了下字体文件,发现是一个静态的url,而且内容没有任何变化,url是:https://baa.yiche.com/yc-pc/comment/font/yc-ft.woff
然后我们对比看下:

3.png
这里一共对400多个汉字进行了自定义
通过fonttool库,我们对字体进行转换为xml文件,发现name对应的属性值是uniEE86 这样的数据
在这里说下,页面上的&#xe和后面的分号是没用的。字体文件中的uni也是没用的。我们通过ee86确定了字是“了”。于是就很容易的确定了映射关系。通过分析,ee86前面加上\u ,即可得到对应的汉字“了”,那么我们就可以通过这个映射关系,对页面上的字体进行替换。
代码:
from fontTools.ttLib import TTFont

word = TTFont('./yc-ft.woff') # 字体文件目录

value_lists = word.getGlyphOrder()[2:] # 获取字体文件中value

d = [eval(r"'\u" + i[3:] + "'") for i in value_lists]  # 拼接成汉字

d1 = ["" + i[-3:].lower() + ";" for i in value_lists] # 处理成网页内容

file_dict = dict(zip(d1, d)) # 建立映射字典

for key in file_dict: # 挨个替换,res就是网页的html源码
        res = res.replace(key.lower(), file_dict[key])
总的来说,这个自定义字体还是蛮简单的,而且有意思,如果找对方法,其实破解还是很容易的,找不对的话,就一点点自己写映射关系吧。

感谢支持

免费评分

参与人数 2吾爱币 +3 热心值 +2 收起 理由
我是不会改名的 + 2 + 1 谢谢@Thanks!
fanvalen + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| gentlespider 发表于 2021-3-24 12:16
原页面那张图片没显示出来,在这里补一下。原页面是这样的:
1.png
fanvalen 发表于 2021-3-24 11:44
我是不会改名的 发表于 2021-3-24 11:50
最近也碰到类似的,感谢分享思路。一直都是自己慢慢映射
 楼主| gentlespider 发表于 2021-3-24 12:14
fanvalen 发表于 2021-3-24 11:44
这就是非标准库了吧

这个没法界定,每个网站的自定义字体可能都不一样
 楼主| gentlespider 发表于 2021-3-24 12:15
我是不会改名的 发表于 2021-3-24 11:50
最近也碰到类似的,感谢分享思路。一直都是自己慢慢映射

这个也只能作为参考,有的自定义字体确实得慢慢写映射
头像被屏蔽
First丶云心 发表于 2021-3-24 12:32
提示: 作者被禁止或删除 内容自动屏蔽
qzw112 发表于 2021-3-24 16:34
原来如此,总之学习了
寒冰流火 发表于 2021-3-25 07:48
需要结合fonttool库等使用  感谢楼主提供这个捷径
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 17:44

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表