说下我以前爬某电影评分网站时遇到的反爬机制吧,感觉还挺有趣的反爬虫。
爬数据时遇到的问题首先来说说我在爬数据时遇到的问题反爬虫,看图:
页面上正确显示了评分为9.5,按F12打开调试模式,找到该元素节点时发现显示的是两个框框,再打开源码发现是一串乱码反爬虫。
页面数字显示正常反爬虫,在源码中却显示乱码,可以肯定该网站肯定采取了反爬虫机制,有点意思!
反爬虫机制原理下面分析一下这个反爬虫机制的原理反爬虫。
做过web前端开发的人知道显示框框一般都是由于引用了字体文件引起反爬虫,那么这个网站反爬虫机制会不会跟字体文件有关呢?
刷新一下页面反爬虫,发现一个字体文件的请求:
我们手动将这个字体文件下载下来反爬虫,使用字体编辑工具打开:
虽然我不是太懂字体文件的原理,但是按我的理解其实就是一个字符和数字关系映射文件,例如字符E282对应数字9、字符F11B对应数字5反爬虫。
现在我们再来看一下源码里的乱码:
有没有看出什么端倪反爬虫?
是的反爬虫,它们并不是什么乱码,而是而字体文件里的字符一一对应的!
根据对应关系可以推断出乱码“.”对应数字9.5,正好和页面上显示的是一致的反爬虫。
总结这个反爬虫机制的现象是页面显示数字正常,但是源码里显示乱码;这个反爬虫机制的工作原理就是通过字体文件将乱码和数字建立好映射关系反爬虫。
加微信好友, 获取更多信息
复制微信号
声明
一、本站原创内容,其版权属于本网站所有。其他媒体、网站或个人转载使用时不得进行商业性的原版原式的转载,也不得歪曲和篡改本网站所发布的内容。如转载须注明文章来源。
二、本网站转载其它媒体作品的目的在于传递更多信息,并不代表本网站赞同其观点和对其真实性负责;如侵犯你的权益请告诉我们立即删除;其他媒体、网站或个人转载使用自负法律责任。
发表评论