字体反爬之设置样式来替代字体

目标网站:Scrape | Movie

被修改的字体:下图中的评分是样式设置出的字体。当选中评分时可以看到里面没有内容

 ::before  : 在css中,该字段通常创建一个伪节点,作用是往其他节点中插入内容,同时在css中使用content字段来定义内容。可以根据右边的样式来查看源文件,下图中可以看出

.icon-789:before {
    content: "9";
}

由此可知,icon-789对应的就是数字9

并且点击右边的app.654ba59e.css  就可以直接跳转到对应的css文件。 

 将鼠标悬停在左边的文件名上可以查看该css文件的文件路径,也是下载链接:https://antispider4.scrape.center/css/app.654ba59e.css

当然,我们也可以直接通过自带的抓包工具来获取该文件,如下 

下载打开后,可以看出,这就是字体文件,其中存放着css的class名与具体文字的映射。我们可以更具正则来重定义该映射,以便我们使用。

import re
import requests
url = 'https://antispider4.scrape.center/css/app.654ba59e.css'
resp = requests.get(url,verify=False)
result_txt = resp.text
pattern = re.compile(r'icon-(.*?):before{content:"(.*?)"}',re.S)
result = re.findall(pattern,result_txt)
map_dic = {i[0]:i[1] for i in result}

map_dic 就是存储样式class与文本内容映射的字典。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值