您现在的位置是:首页 >
当前栏目
⛳️ 黄页 字体反爬 实战场景
实战 场景 字体 反爬
2023-06-13 09:11:39 时间
目录
⛳️ 黄页 字体反爬 实战场景
本次采集的目标站点为 https://huangye88.com
,首页截图如下所示。
在官网找到【企业黄页】选项卡,然后得到如下界面,其中涉及的信息如下,随机找到一个企业公开数据。
在公司黄页详情页可以查看到联系人和联系号码。
这里明显看到手机字体与其它字体有所差异,通过开发者工具进行验证之后,确定存在字体反爬。
保存字体文件,得到下述字体矢量图。
结果字体的编码是固定的英文,那这字体反爬的难度就变的极低了。
⛳️ 实战编码
通过开发者工具可以找到字体文件在网页源码中,所以我们编写一下相关提取代码。
import re
import requests
import base64
from fontTools.ttLib import TTFont
url = 'https://b2b.huangye88.com/qiye1edkfp0964c7/'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36'
}
res_text = requests.get(url=url, headers=headers).text
ba64 = re.findall('base64,(.*?)\"\)', res_text)[0]
# print(ba64)
data = base64.b64decode(ba64)
with open('./fonts/519.woff', 'wb') as f:
f.write(data)
font = TTFont('./fonts/519.woff')
font.saveXML('./fonts/519.xml')
得到字体之后,保存的 XML 文档如下所示。
本案例已经结束。
相关文章
- 实战:第十篇:使用Java代码获取Linux系统执行命令后的结果
- 【Zookeeper典型使用场景实战】
- 100天精通Oracle-实战系列(第22天)Oracle 数据泵全库导出导入
- Qt实战:云曦日历篇
- 系统架构设计—高并发场景微服务实战(三)
- vue3实战-完全掌握ref、reactive_2023-02-28
- 实战 | 某OJ渗透测试记录
- 多文件数据横向汇总,怎么整?| Power Query实战
- 秃头也要学习的微服务进阶场景实战:基于Bifrost的数据同步方案
- 架构师带你搞明白微服务进阶场景实战:服务之间的数据依赖问题
- 性能优化:MySQL如何快速定位慢SQL实战记录
- Hadoop项目实战-用户行为分析之应用概述(一)详解大数据
- 开源进阶:Linux科学计算器源码实战(linux科学计算器源码)
- Oracle数据库实战:精湛的技巧(oracle技巧)
- 设置妙用Linux:CNAME设置实战(linuxcname)
- Linux解压缩与打包技术实战(linux压缩和打包)
- Oracle 日志管理实战指南(oracle日志管理)
- Nginx网站架构实战——02、nginx信号量
- 企业互联网+转型实战:如何进行PB级别数据的架构变迁
- Linux 文件重命名实战(linux给文件改名)
- Linux下CGI配置实战玩转网站开发(cgilinux配置)
- Oracle 公共变量使用实战总结(oracle 公共变量)
- 籍Redis开发与实战利用实践去深入理解(关于redis方面的书)