Lazy loaded image
Spider
curl_cffi模拟浏览器TLS/JA3指纹通过Cloudflare
字数 1860阅读时长 5 分钟
2024-8-7
2024-8-7
type
status
date
slug
summary
tags
category
icon
password
curl_cffi 是一个基于 cffi 的 Python 绑定,提供了模拟浏览器 TLS/JA3 和 HTTP/2 指纹的功能,非常适合在被网站封锁时使用。这种库与其他纯 Python HTTP 客户端(如 requests 或 httpx)相比,具有独特的浏览器模拟功能,可以有效绕过某些网络封锁。

🥕主要特性

  • TLS/JA3 指纹模拟: curl_cffi 可以模拟浏览器的 TLS/JA3 指纹,用于绕过特定的网络限制。
  • HTTP/2 支持: 与 requests 不同,curl_cffi 支持 HTTP/2,提供更现代的网络通信能力。
  • 性能: 在性能方面,curl_cffi 与 aiohttp 和 pycurl 相当,通常比 httpx 和 requests 快。
  • WebSocket 支持: 还支持 WebSocket,允许进行实时数据通信。
  • 异步支持: curl_cffi 支持 asyncio,可以在每次请求时进行代理旋转,适合处理高并发请求。

🦖安装

🏀基本使用

类 requests
Sessions
WebSockets
 
impersonate 支持的版本:
  • chrome99
  • chrome100
  • chrome101
  • chrome104
  • chrome107
  • chrome110
  • chrome116
  • chrome119
  • chrome120
  • chrome123
  • chrome124
  • chrome99_android
  • edge99
  • edge101
  • safari15_3
  • safari15_5
  • safari17_0
  • safari17_2_ios
 

🚴🏽‍♀️过Cloudflare

目标:https://worldwide.espacenet.com/?locale=en_EP
 
首先看使用requests获取到的结果,很明显的看到出现了Just a moment...,在网络请求中也能看到Cloudflare的特征。
notion image
接下来我们使用curl_cffi
结果如下,看得出很有效 😈
 

🍟小结

curl_cffi 是为需要在复杂网络环境中维持高度可控和高效的开发者设计的强大工具。它的特性非常适合需要绕过网络监控和反爬虫措施的场景。
上一篇
Python3使用websocket调用Http代理IP
下一篇
天气查询免费API接口

评论
Loading...