前言:本篇仅作为技术交流分析学习T字体加密的方式,给爬虫爱好者们提供一些思路。
如果你想要爬取学习T的作业题可以看这篇:python爬虫笔记(学习T)_星空的你的博客-优快云博客
首先:经过我的观察学习T并非所有页面都有字体加密,有加密的页面一般为作业和章节测试,并且当提交完作业或测试后,字体加密会消失,加密的方式为随机选择文字进行加密。
特点:被加密的页面必有base64编码,直接在页面源码中搜索base64(base64后面的一大长串就是加密字体的映射文件,直接复制在浏览器放入url中回车下载)即可。但有时侯不会出现字体加密很奇怪,判断是否有加密的方法很简单直接复制题目,粘贴到文本中看文字就知道了。
补充:学习T采用iframe嵌套的方式将内容嵌套进网页,使用selenium爬取时需要注意,一般我们爬取的页面需要进入3层iframe,但有的页面就两层iframe或一层,导致如果把方法写死运行会一直报错,如果你想爬取所有页面必须进行try:expect。
思路一:建立映射
可以在python中定义一个方法,将base64解码成xml文件,用到的库自行下载
from fontTools.ttLib import TTFont, BytesIO
def make_font_file(base64_string,):
bin_data = base64.decodebytes(base64_string.encode())
font = TTFont(BytesIO(bin_data))

本文探讨了如何通过观察和分析学习T平台的字体加密机制,提出两种思路:一是建立加密字体与原始字体的映射,二是利用图像识别技术绕过加密。着重讲述了尝试过程中的困难和可能的原因,包括字体库多样性及可能的修改。
最低0.47元/天 解锁文章
1510

被折叠的 条评论
为什么被折叠?



