紧接上篇介绍了字体加密中字体文件和页面源码中的对应关系,要获取数据 你还需要一份字典!

pycharm一开 一顿操作猛如虎

一、获取页面源码 并提取css的链接

二、下载其中的四个类型标签对应的woff文件

打开来康康

两个文件里面的字体竟然是一样的,只有编码不同,也就是说加密的字体只有这600多个

三、woff转xml

直接的woff文件python不好操作,先用fontTools转为xml文件

from fontTools.ttLib import TTFont font = TTFont('./font_files/' + woff_file_name + '.woff')

font.saveXML('./font_files/' + woff_file_name + '.xml')

生成之后随便开一个xml看一下

GlyphID 标签的name就是编码(GlyphID 的顺序和woff文件里面你看字体的顺序是一样的)

TTGlyph标签就是每个字体的样式(需要注意的是这个顺序和GlyphID的顺序不同,只能通过name来对应回去)

四、真实文本获取

写一个简单的vue用同样的操作渲染出全部字体 然后百度识图送检一波 (对于规整的字形准确率100%

然后你就拿到所有的python能识别的文字了!!

现在你有三份资料:

partA:GlyphID 标签的name中的编码

partB:TTGlyph标签的所有内容

partC:百度识图出来和GlyphID 标签的name中的编码顺序一致的文本

事实上当前页面已经解析完了,编码和文本对应成功,写一个字典对应即可,但是大众点评的不是每天都用同一套woff(每套woff里面的编码不同),所以为了可持续发展,在有需要时可以快速构建编码和文本对应的新字典,你还需要对partB下手,partB和partA可以映射,partA和partC可以映射,所以C和B可映射,partB(字形)每次都是不变的,文本也是不变的,最终你构建的是字形和文本的对应,这使你在编码变更时能快速获得最新的 编码和文本对应的新字典。

五、字形和文本的对应以及入库

先用现有明确编码将字形和文本对应

对字形对应文本进行md5编码在对应文本入库(md5前要删除name属性中的文本)

入库成功(字形md5以及对应文字)

再写一个读数据库 根据 字形md5-文本 生成 编码-文本 字典的生成

拿着新字典测试

对应成功合影留念~

其他更细的处理细节就不一一说了 源码放一份在github 有需要可以自行获取!

完整代码

下期有时间说说 另一种字体加密!

大众点评字体_大众点评美食——字体字典生成(二)相关推荐

  1. truetype字体怎么转换成普通字体_一种TrueType字体渲染方法与流程

    本发明涉及一种TrueType字体显示技术领域,尤其是涉及一种基于热排序缓存机制的TrueType字体渲染方法. 背景技术: 随着军民用飞机座舱显示系统的不断复杂.功能的不断增加.显示分辨率的不断增大 ...

  2. 谷歌字体_优化Google Web字体

    Google Web字体是在网站上嵌入自定义字体的较流行的方法之一. 它是免费的,并且库中有很多选项可供选择. 尽管可以通过快速的Google服务器提供服务,但仍有一些地方需要改进. 因此,让我们来看 ...

  3. ie对java的设置字体_关于IE6幽灵字体 - JavaSwing的个人空间 - OSCHINA - 中文开源技术交流社区...

    前言:今天做项目的时候在IE6下出现了这样的一种现像,这种情况只在IE6下出现,最后在网友的帮助下这个问题最终得到了解决.所以马上作了下笔记! 情况如下图: 我在网上找了点资料出现IE6下幽灵字体的情 ...

  4. cad结构字体_如何让CAD字体完整起来,且不破坏系统字体

    问题综述: 很多人认为CAD字体越多越好,但是实际上,往往一家设计院所使用的字体都不会超过20种,之所以导致cad字体不全或显示存在问题的原因,并不是说因为你缺少多少字体而是因为字体使用不对,甚至于很 ...

  5. 参考文献格式字号字体_论文格式的字体字号要求?

    您好,在写论文的时候针对不同的场景都会有不同的要求,而每个场景都是有模板或具体的要求的.如毕业论文每个学校的要求都不同,而且本科和研究生也不同,可以了解清楚后把写好的论文进行修改即可.不过也可以通过一 ...

  6. 创建pdf java 字体_如何使用自定义字体从servlet使用iText XMLWorker创建PDF?

    使用iText / XMLWorker示例(大多数是 this one),我可以轻松编写能够使用我自己的额外字体从HTML代码创建PDF文件的简单应用程序,但是只要尝试在某些Web服务代码中使用我的东 ...

  7. 传统蒙文字体_论传统蒙古文字体的设计方法

    龙源期刊网 http://www.qikan.com.cn 论传统蒙古文字体的设计方法 作者:袁菁菁 来源:<中国民族博览> 2019 年第 01 期 [摘要]传统蒙古文字体的设计工作起步 ...

  8. java记事本字体_记事本中的字体+字形+大小设置

    [java]代码库public class font implements ActionListener,ListSelectionListener{ private JTextField textF ...

  9. 1:1万地形图字体_信息图:字体心理学

    1:1万地形图字体 One way that fonts influence our emotions is through taste. Sounds weird, right? But each ...

最新文章

  1. Leetcode-笔记-22.括号生成--递归
  2. python多进程共享内存
  3. java 委托_动态代理:Java开发必学
  4. 女人 不要让身边的男人太累
  5. HTML5 文件操作API
  6. 流计算引擎数据一致性的本质
  7. JavaScript学习系列之执行上下文与变量对象篇
  8. java调度问题的贪心算法_java代码,多机调度问题,怎么解释
  9. linux文件乱码crt,Linux中文文件显示乱码或Secure CRT显示乱码解决方案
  10. Windows2003 WINS 服务
  11. 提交IOS开发效率的几个插件(Xcode神器推荐贴)
  12. Quartz-scheduler 定时器概述、核心 API 与 快速入门
  13. FLASH学习(一)
  14. 【洛谷刷题笔记】P4093 [HEOI2016/TJOI2016] 序列
  15. 渥太华大学计算机科学,加拿大渥太华大学计算机科学排名第四
  16. 一、jsp和Servlet基础理论及jstl和EL表达式用法
  17. python 计时器模块_python中计时器
  18. 计算机硬件——显示器原理
  19. 有关UEFI,GPT分区以及系统引导等问题的了解
  20. 这341句话,这么美,那么伤。

热门文章

  1. 如何确保测试结果的准确性和全面性?
  2. Windows开机自动登录及取消自动登录的设置
  3. 接口本地正常服务器报500_对接口的理解与接口测试的意义
  4. php在window下安装xhprof扩展环境说明:
  5. 快速阅读——《技能篇》
  6. J. Jesting Jabberwocky
  7. 实验二:熟悉常用的HDFS操作
  8. Ubuntu 安装完成后,不能使用无线网络
  9. Learning-Driven Interference-Aware Workload Parallelization for Streaming Applications (TPDS2021)
  10. 笔记本电脑接口全接触