zoukankan      html  css  js  c++  java
  • @font-face笔记

    在写爬虫时,有时会遇到字体反爬,爬取的网站在看源码时会出现乱码,或者位置错乱等现象,这就是字体反爬了

    首先需要了解下dataurl:

    Data URLs 由四个部分组成:前缀(data:)、指示数据类型的MIME类型、如果非文本则为可选的base64标记、数据本身:

    data:[<mediatype>][;base64],<data>

    dataurl可以给数据做编码,编码格式为base64

    第二你要知道

    CSS有一种标记叫做@font-face,在@font-face声明里,可以声明一种字体,指定这种字体库文件从网络中的某个地方下载

    这两种相结合就出现了下面这种情况

    @font-face {
      font-family: 'xxxxx字体';
      src: url(data:application/font-woff;charset=utf-8;base64, ... ) format('woff'), /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    }

    对这种情况的破解,需要把base64编码转换成ttf文件,再用python模块解析,待续。。。

    参考网址:

    https://developer.mozilla.org/zh-CN/docs/Web/HTTP/data_URIs#Encoding_data_into_base64_format

    http://www.webhek.com/post/font-face.html

    https://www.cnblogs.com/fxair/p/3867141.html

    文件的操作格式:https://www.cnblogs.com/xiaoming279/p/6372860.html

    https://zhuanlan.zhihu.com/p/33112359

    https://blog.csdn.net/qq_42336573/article/details/80698580

    https://blog.csdn.net/qq_31032181/article/details/79153578

  • 相关阅读:
    ibatis的优缺点及可行性分析
    NHibernate优点和缺点:
    IbatisNet的介绍和使用
    bat(续七)-for语句(循环结构)
    bat(续五)-获取批处理文件所在路径
    Shell函数参数
    Shell函数:Shell函数返回值、删除函数、在终端调用函数
    Shell break和continue命令
    Shell until循环
    Shell while循环
  • 原文地址:https://www.cnblogs.com/Robertzewen/p/9509022.html
Copyright © 2011-2022 走看看