华人澳洲中文论坛

我去!爬虫遇到字体反爬,哭了

[复制链接]

2022-9-2 15:41:36 44 0

明天筹备爬取某某点评店铺信息时,遇到了『字体』反爬。好比这样的:


还有这样的:


能够看到这些字体曾经被加密反爬
居然遇到这类状况,那辰哥就带大家如何去解决这种反爬(字体反爬类
01 网页剖析
在开始剖析反爬以前,先简略的引见一下配景(爬取的网页)


辰哥爬取的某某点评的店铺信息。一开始查看网页源码是这样的


这类甚么也看不到,我们换另外一种形式:经过顺序间接把全部网页源代码保留上去


获得到的网页源码如下:


好比这里看到评论数(4位数)都有对应着一个编号(相反的数字编号相反),应该是对应着网站的字体库
下一步,咱们需求找到这个网站的字体库。
02 获得字体库
这里的字体库倡议在指标网站外面去获得,由于不同的网站的字体库是纷歧样,致使解码复原的字体也会纷歧样。
1、抓包获得字体库


在阅读器network外面能够看到一共有三种字体库。(三种字体库各有不同的妙用,前面会有解释


把字体库链接复制在阅读器外面关上,就能把字体库下载到当地。
2、查看字体库
这里使用FontCreator的工具查看字体库。
下载地址:
http://www.high-logic.com/font-editor/fontcreator/download
装置之后,把刚刚下载的字体库在FontCreator中关上


能够看到字体的内容以及对应的编号
好比数字7对应F399、**数字8对应F572 ,**我们在原网页和源码比较,是不是如斯???


能够看到,真是如出一辙对应着解码就能复原字体。
3、为何会有三个字体库


在查看加密字体的CSS款式时,形式有css内容是这样的


字体库1:d35c38十二.woff 对应解码class为 shopNum
字体库2:084c9fff.woff 对应解码class为 reviewTag和address
字体库3:73f5e6f3.woff 对应解码class为 tagName
也就是说,字体所属的不同class标签,对应的解密字体库是纷歧样的,辰哥这里不能不说一句:太鸡贼了


我们这里获得的评论数,clas为shopNum,需求用到字体库d35c38十二.woff
03 代码完成解密
1、加载字体库
既然咱们曾经知道了字体反爬的原理,那末咱们就能开始编程完成解密复原。
加载字体库的Python库包是:fontTools ,装置命令如下:
pip install fontTools


将字体库的内容对应瓜葛保留为xml格局


code和name是一一对应瓜葛




能够看到网页源码中的编号后四位对应着字体库的编号。
因此咱们能够建设应该字体对应聚拢


建设好映照瓜葛号,到网页源码中去进行交换


这样咱们就胜利的将字体反爬处置终了。前面提取内容大家根本都没问题。
2、残缺代码


输入后果:


能够看到加密的数字整个都复原了。

发表回复

您需要登录后才可以回帖 登录 | 立即注册

返回列表 本版积分规则

:
注册会员
:
论坛短信
:
未填写
:
未填写
:
未填写

主题22

帖子41

积分180

图文推荐

  • 撞穿学校栅栏害死十一岁男孩的司机不必坐牢

    一位女司机撞穿学校栅栏、害死了11岁男孩,被罚20

  • 全科医生正告花粉症时节正在好转

    全国各地的全科医生正告春季的开端标记着花粉症时

  • 新西兰总理:出世在新西兰的新纳粹Thomas S

    新西兰总理拉克森称新纳粹Thomas Sewell是坏人,

  • 新州护士和助产士承受暂时加薪3%的前提

    新州护士和助产士投票承受政府提出的暂时加薪3%以

  • 新纳粹份子如何利用“普通父母”的掩护在反

    星期天,新纳粹份子在反移民集会开端前大约一个小