第一点是 js 进行了加密,
通常是需要进行一些参数传递,比如有道翻译,那种加密很简单,只需要在进行推演就可以知道加密的数值是什么样子的,
百度翻译sign的数值进行了js函数加密,如果是不懂js,那么很难进行反加密
解决方法有
通过selenium
其他途径,app,web
第二种则是动态字体文件库
现在已知是猫眼和汽车之家帖子都进行了动态字体库
猫眼石每次刷新页面动态字体文件都会更换,猫眼只是0-9进行字体文件更换
汽车之家帖子是每个页面固定一个字体文件,不止数字 中文也会更改,
抖音手机版数字含有字体库,数字更换
如果是所有页面一个字体库,那么可以通过fontTools第三方库来进行映射 对应抓取的数据进行清洗
多个动态字体库,有可能有几百个库,每个字体库映射一般都不相同,除非你能找到所有字体库,每次抓取之前在页面中找到该字体库,抓取之后再使用本地保存的所有字体库,选中页面上所含有字体库进行对照
应对方法,
使用selenium截图+orc识别,但是效率和识别率感人
如果pc版不好爬取,那么去其他途径,比如app版抓包接口
我估摸着如果不出意外,未来反爬虫很大可能使用动态字体文件库