svg映射反爬虫利用来浏览器和编程语言在渲染方面的差异,以及svg和css定位这样的前端知识。

不管是数字还是英文,又或者是中文,都可以使用svg映射,以达到反爬虫的策略,正如上图页面里面,d标签里面什么都没有,只有一个class属性,但是页面却可以显示出相应的内容
观察抓包情况:

可以看到页面加载来两个文件,分别是css和svg

看到css使用了background-image属性,说明它的背景是一个图片,还有下面class属性值对应使用来定位功能,可能联想一下“精灵图”的用法,需要了解的是,svg是用文本描述图像内容的矢量图像格式,所以,svg并不能算是一张真正的精灵图,它的内容是:


下面,用70行代码,破解这种css和svg映射的反爬虫策略
import requests
import re
from parsel import Selector
# 使用python代码实现自动映射,先拿到两个文件的URL
url_css = "http://www.porters.vip/confusion/css/food.css"
url_svg = "http://www.porters.vip/confusion/font/food.svg"
# 拿到需要映射的HTML标签的class属性的值
css_class_name = "vhkbvu"
# 发送请求,拿到对应的文本
css_resp = requests.get(url_css).text

最低0.47元/天 解锁文章
1251

被折叠的 条评论
为什么被折叠?



