-
Notifications
You must be signed in to change notification settings - Fork 62
Description
req请求库 实现了伪造浏览器指纹(包括ja3 指纹)、多代理切换、debug便捷,模拟指纹直接增强爬虫能力,多种特性对可以增强扫描器规避能力
支持的指纹类型
方法列表:
SetTLSFingerprintChrome: 模拟 Chrome 浏览器指纹。
SetTLSFingerprintFirefox: 模拟 Firefox 浏览器指纹。
SetTLSFingerprintEdge: 模拟 Edge 浏览器指纹。
SetTLSFingerprintQQ: 模拟 QQ 浏览器指纹。
SetTLSFingerprintSafari: 模拟 Safari 浏览器指纹。
SetTLSFingerprint360: 模拟 360 浏览器指纹。
SetTLSFingerprintIOS: 模拟 IOS 指纹。
SetTLSFingerprintAndroid: 模拟 Android 指纹。
SetTLSFingerprintRandomized: 随机模拟指纹。
下面是官方的文档内容
伪装 HTTP 指纹?
我们如何伪装客户端的 HTTP 指纹,才能骗过服务端呢?
HTTP 指纹是由一系列特征构成的,服务端检查的特征越详细(反爬级别越高),伪装的难度就越高,当然如果我们把所有特征全都伪装了,那就一定就能骗过服务端了。
常见的一些特征:
User-Agent 的值。
Header 及其排列顺序。
TLS 指纹,也就是TLS 握手时,客户端发送 ClientHello 的特征。包含客户端所支持的加密套件列表及其排列顺序、客户端支持的TLS版本、压缩方式、TLS extensions 列表及其排列顺序等。
对于 HTTP2,还有更多额外可以检查的特征:
HTTP2 settings 帧中的值列表及其排列顺序。
HTTP2 WINDOW_UPDATE 帧的值。
HTTP2 Priority 帧列表及其排列顺序。
伪头(Pseudo-Header) 的顺序。
请求头及其排列顺序,以及 header 帧中 flag 与 priority 选项的值。
以上所有特征,在 req 中都可以轻松模拟,实现伪装成任何想要的浏览器客户端。