大众点评数据信息获取——字体反爬

大众点评的字体反爬算是比较常见的,这次来学习一下相关字体反爬的技巧

以店铺的评论页面和店铺列表页面进行研究,分别对应了css字体映射,woff字体加密的反爬虫手段。

1、店铺评论页——css字体映射(svg)

随便打开一个链接:http://www.dianping.com/shop/FU8Gnkledt9y1i4z/review_all


稍微观察一下,可以发现页面的地址、电话和评论信息都被加密了,对应的字体位置存在一些特殊占位符。

留意一下,<bb class="(.*?)"></bb> 包含的字符串和对应background的x和y,这是后面破解的关键。

打开background-image对应的svg的url:http://s3plus.meituan.net/v1/mss_0a06a471f9514fc79c981b5466f56b91/svgtextcss/eee044205859500312f0840923dd4c5f.svg


可以发现有个变化的y值和对应的字体列表,再和上面观察到的信息进行关联,思考一下。

嗯。。。这竟然变成了找规律。

很容易你可以发现,以“环”为例,background的x=98,y=115,svg页面的y值大于115的是130,“环”字就在这行的字体列表里,对应的索引位置为7(以0开始),而 x/字体宽度=98/14=7。好像对应上了,你可以多试几个。

类似的电话的svg,评论的svg都有类似的规律,其中评论的svg会比较复杂一点,还需要进一步转化。

电话的svg链接:http://s3plus.meituan.net/v1/mss_0a06a471f9514fc79c981b5466f56b91/svgtextcss/9f656bed3ded711077a8d01196a96a52.svg

评论的svg链接:http://s3plus.meituan.net/v1/mss_0a06a471f9514fc79c981b5466f56b91/svgtextcss/d2c16af28b455c50d1ebe852c633b65c.svg

代码完成之后的结果是这样的:

2、店铺列表页——woff字体加密

随便打开一个链接:http://www.dianping.com/xiamen/ch10/g112


观察一下,有个css跳转,点进去:http://s3plus.meituan.net/v1/mss_0a06a471f9514fc79c981b5466f56b91/svgtextcss/49881bbea6acbfb62291c8bac193608b.css


我们要找的就是shopNum对应的woff链接,打开woff链接:http://s3plus.meituan.net/v1/mss_73a511b8f91f43d0bdae92584ea6330b/font/77b79df0.woff

发现这是一个下载链接,下载下来的woff文件拿去百度的在线字体编辑器打开:http://fontstore.baidu.com/static/editor/index.html

可能打不开,需要转化成ttf或者其他格式,也有很多在线的工具。


打开之后,可以发现每个字体对应的下标就是我们要找的class的text。网上有用图片识别库来识别出对应的字体字典列表,随便去百度一下吧。

但是,我们可以用fontTools库把woff转化为XML格式,然后来观察规律。

# 转化成xml文件
font = TTFont(filepath)  # 打开文件
font.saveXML(xml_path)  # 转换成 xml 文件并保存

源代码里对应数值3的文本为&#xe795,以xe795来观察。

可以发现,对应的id-1就是我们需要的正确数值。

(可能是这样吧,其中还有一些规律需要处理,不想麻烦的待会直接去看代码吧)



代码完成的结果是这样子的:

3、最后

github:https://github.com/downdawn/dzdp

声明:博客内容不得用于商业用途,仅做学习交流,如果侵犯了您的利益和权益,请私聊联系我,我将删除该博客。

谢谢。

大众点评数据信息获取——字体反爬相关推荐

  1. python爬虫进阶-大众点评店铺信息(字体反爬-静态映射)

    目的 获取大众点评店铺信息 详细需求 http://www.dianping.com/shenzhen/ch10 思路解析 一 通过F12查找目标信息位置,进行分析 同理进行其他信息的解析,分析汇总 ...

  2. python爬虫笔记四:大众点评店铺信息(字体反爬-静态映射)

    https://jia666666.blog.csdn.net/article/details/108885263 里面讲的非常详细了,不过点评有改动,里面的代码也要相应的改动一下 #coding:u ...

  3. Python爬虫 | 以滑雪为例演示大众点评商铺信息采集(字体反爬)

    文章目录 1.简述 2.字体反爬处理 2.1.获取字体文件链接 2.2.创建三类字体与实际字符映射关系 3.单页店铺信息解析 4.全部页数据获取 4.1.获取数据页数 4.2.采集全部数据 5.总结 ...

  4. python爬虫大众点评店铺信息(字体加密)

    python爬虫大众点评店铺信息(字体加密) 1.观察网站 发现部分字体加密 2.查看请求的字体文件 发现请求到了两个字体文件,把他下载打开 3. 这就是对应该网页每个字体的unicode,发现两个字 ...

  5. python爬虫进阶-汽车之家贴吧信息(字体反爬-动态映射)

    目的 获取汽车之家贴吧的内容信息 详细需求 汽车之家贴吧 思路解析 一.F12获取目标信息-进行分析 二.字体反爬解析-根据上一篇的文章,直接搜索关键词就好 三 根据其后的链接,保存为ttf在本地,查 ...

  6. python爬虫笔记五:汽车之家贴吧信息(字体反爬-动态映射)

    学习网址: https://jia666666.blog.csdn.net/article/details/108974149 ----------------------------------- ...

  7. python爬取大众点评_【Python3爬虫】大众点评爬虫(破解CSS反爬)

    本次爬虫的爬取目标是大众点评上的一些店铺的店铺名称.推荐菜和评分信息. 一.页面分析 进入大众点评,然后选择美食(http://www.dianping.com/wuhan/ch10),可以看到一页有 ...

  8. 抓取设了CSS反爬机制的大众点评数据(下)

    该篇实现大众点评爬虫操作代码,所有原理都在(上)篇均已详细阐述,让我没想到的是大众点评不仅设置了CSS反爬,在ip限制方面也是十分的凶狠,不得已花了10块钱买了一天代理ip. 大众点评究的反爬竟有多恶 ...

  9. 爬虫逆向学习(二):那些年遇到的花式字体反爬

    常见字体反爬破解策略 CSS偏移反爬虫 案例场景 破解策略 SVG字体反爬 案例场景 破解策略 自定义字体反爬 案例场景 破解策略 CSS偏移反爬虫 案例场景 css偏移反爬虫是通过样式left偏移覆 ...

最新文章

  1. 【OpenCV 4开发详解】方框滤波
  2. 关于LUA+Unity开发_toLua篇【二】
  3. 网络设备中的linux,理解linux虚拟网络设备veth
  4. Nagios监控系统安装及配置文档
  5. 曝鸿蒙os手表,华为Watch GT 2曝光:第一款使用鸿蒙OS的智能手表
  6. Maven和Java多版本模块
  7. Ioc容器Autofac介绍
  8. python多任务-线程
  9. 《探索需求》——阅读笔记一
  10. What is a TensorFlow Session?
  11. 《认知天性》:讲述基于科学的学习方法
  12. 制服流氓中搜网络猪的办法
  13. 越狱相关三:OpenSSH
  14. 获取当前日期上周的周一和周日日期
  15. matplot画图-画曲线(一)
  16. 如何看待国企纷纷卸载微软Office改用金山WPS?
  17. PPT导入视频裁剪后,如何裁剪后的视频另存为保存下来?
  18. seaborn画直方图、条形图、盒图、散点图等常用图形
  19. spring boot 采坑
  20. 案桌 通知栏 notification

热门文章

  1. redis.conf详解之replica-read-only
  2. 史上最全的C盘垃圾深度清洁指南
  3. python怎么学比较有技巧_怎么学python学的快?学习技巧大分享
  4. 初识PowerApps
  5. 【毕业设计/matlab系列】基于ADPCM压缩标准的音频压缩和解压缩实现【含Matlab源码】
  6. ug908 Programming and Debugging
  7. python自动化客户端_如何使用Python自动化登录客户端,pywinauto确实很强大
  8. 工业控制系统安全评估流程威胁事件构建
  9. 享学课堂java架构师课程,深度解析,值得收藏
  10. JVM性能调优6_深入了解性能优化__享学课堂