web爬虫-自定义字体反爬通用解决方案

简介

之前做过汽车之家的字体反爬并可以以100%的成功率稳定解析,但是手动去生成一个已知的字体json是一个极其繁琐且无聊的过程,这导致了以后如果新增带有字体反爬的网站或者目标网站改版,则又要手动去生成,过程及其痛苦,后来有小伙伴问我,能不能省去这个手动的过程,让它全自动,当时受知识面所限,我回答不可能。这几天又想起这个问题了,就想尝试一下能否全自动,经过周末两天的半打鱼半晒网,终于实现了自动化,但目前可供测试的网站并不多,只试了猫眼、汽车之家、大众点评这三个网站,并且是可行的,如果有其他的,可以私聊我进行尝试。

接下来将介绍这个小项目的思路。

第一步、如何从一个未知的字体文件中抽取字体和其对应的标号?

                                                                    图1:大众点评部分字体

不经手动填写的话,我们能获得的好像只有坐标信息,字体文件其实类似于一张张绘制好的图片,通过编号进行调用然后展示这张图片,要想实现自动化,图像识别必不可少(目前我是这样认为的),我们要是能做到将一个个字体全部导出为图片然后进行文字识别岂不是就搞定了?

对,将字体导出为图片进行图像识别,就完成了第一步。

生成图片的时候对标号进行拍好序列,以便后面与特征进行配对。

第二步、根据特征值和字体实体生成用于后续对比的json

        根据一些固定值和基本不变的值,生成一个用于后续字体对比的json,如下。

第三步、拿未知字体与已知json对比

运行实例

猫眼:

猫眼

汽车之家:

汽车之家

大众点评:

大众点评

新增功能:

  • 对于识别失败的字体,将挨个展示给用户,以用户输入为准
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值