笔记 - 汽车之家的反爬手段

本文介绍了如何应对汽车之家网站的字体反爬策略。通过分析网页源码,发现自定义字体myfont导致爬取的文本不全。通过下载ttf字体文件,使用Font Creator查看编码,发现中文文字被重新编码。利用fonttools Python库解析字体文件,动态替换字符编码,最终实现对js渲染后文本的正确爬取。

一、字体反爬

方法转自:汽车之家字体反爬破解实践 - 谢俊杰的文章 - 知乎 并稍加修改(更换要爬的页面,python2改为python3)

    假如我们要爬这个页面https://k.autohome.com.cn/detail/view_01c5wa2g3h64wk0e1p6mwg0000.html


如果我们直接爬,得到文本会是下面这样

【最满意】\nDS这车看,属于颜涵类型,独特法系设计,形感……

仔细看的话会发现爬回来的文本少了很多字。那么我们第一个想到的必然是JS渲染,不过渲染过后爬回来的文本却是下面这样(其实我在pycharm的控制台中看到的还是上面那样,但复制到这里就会是这个样子):

【最满意】\nDS这车看,属于颜涵类型,独特法系设计,形感……

我们审查元素


发现是这个span标签搞的鬼

<span style="font-family:myfont;"></span>

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值