news 2026/5/8 18:01:23

Python 爬虫反爬突破:浏览器指纹深度伪装技术

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python 爬虫反爬突破:浏览器指纹深度伪装技术

前言

在当前网络安全与反爬虫技术日趋成熟的环境下,传统的请求头伪装、IP 代理已无法满足复杂站点的爬虫需求。浏览器指纹作为网站识别爬虫、区分真实用户与自动化程序的核心技术,成为爬虫进阶必须突破的关键壁垒。浏览器指纹通过采集浏览器环境、硬件信息、渲染特性等多维数据生成唯一标识,即使更换 IP、清除 Cookie,网站仍可精准识别爬虫程序。

本文聚焦浏览器指纹深度伪装技术,从指纹生成原理、核心指纹类型、Python 实现方案、高匿伪装实战到风控绕过策略,全方位讲解浏览器指纹的突破方法。文章配套实战代码、原理剖析、第三方依赖库,所有工具与库均提供官方超链接,读者可直接访问获取:

  1. Selenium 官方文档:自动化测试与浏览器驱动核心库
  2. Playwright 官方文档:新一代浏览器自动化工具,原生支持指纹伪装
  3. undetected-chromedriver 仓库:反检测 Chrome 驱动
  4. FingerprintJS 官方文档:主流浏览器指纹识别库
  5. PyPI 官方库平台:Python 第三方库下载地址
  6. ChromeDriver 官方下载:Chrome 浏览器驱动

本文基于实战场景,覆盖零基础到进阶的指纹伪装需求,所有代码可直接运行,所有原理通俗易懂,帮助开发者彻底绕过浏览器指纹风控,实现高匿、稳定、高效的爬虫程序。

一、浏览器指纹基础认知

1.1 浏览器指纹定义与核心价值

浏览器指纹是网站通过 JavaScript 脚本采集客户端浏览器的环境、硬件、软件、渲染等特征,经过哈希算法生成的唯一字符串标识。其核心价值在于跨会话、跨 IP、跨设备识别用户,是现代网站反爬虫、风控系统的核心技术。

与传统 Cookie、Session、IP 识别不同,浏览器指纹具有不可清除、稳定性高、唯一性强的特点:清除浏览器数据无法删除指纹,更换 IP 地址无法改变指纹,同一设备同一浏览器的指纹长期保持不变。

1.2 浏览器指纹分类

根据采集方式与特征类型,浏览器指纹可分为基础指纹、高级指纹、 Canvas/WebGL 指纹、硬件指纹四大类,各类指纹的特性、采集方式与反爬作用如下表所示:

表格

指纹类型核心特征采集方式反爬作用伪装难度
基础指纹User-Agent、语言、时区、屏幕分辨率Navigator 对象 API基础爬虫识别
高级指纹插件列表、MIME 类型、浏览器版本JS 脚本遍历初级反爬绕过
渲染指纹Canvas、WebGL、AudioContext浏览器渲染引擎中级风控识别
硬件指纹CPU 核心数、内存大小、显卡型号系统硬件 API高级风控识别极高

1.3 浏览器指纹生成流程

浏览器指纹的生成遵循特征采集→数据整合→哈希加密三步流程:

  1. 特征采集:网站前端 JS 脚本调用浏览器 API,采集 User-Agent、Canvas 渲染结果、插件列表等数十项特征;
  2. 数据整合:将所有采集到的特征拼接为字符串,去除冗余数据,保证特征唯一性;
  3. 哈希加密:使用 MD5、SHA256 等哈希算法对拼接字符串加密,生成固定长度的浏览器指纹。

该流程无需用户授权,静默完成采集,是爬虫程序最容易暴露的核心环节。

二、浏览器指纹核心特征深度解析

2.1 基础特征:Navigator 对象 API

Navigator 是浏览器提供的核心 API,包含爬虫最常用的基础特征,也是网站识别自动化程序的第一道关卡。

2.1.1 核心特征字段
  1. navigator.userAgent:浏览器标识,包含浏览器名称、版本、操作系统信息;
  2. navigator.language:浏览器语言,如zh-CNen-US
  3. navigator.platform:操作系统平台,如Win32MacIntel
  4. navigator.hardwareConcurrency:CPU 核心数;
  5. navigator.deviceMemory:设备内存大小(仅 Chrome 支持)。
2.1.2 原理剖析

普通浏览器会真实返回设备信息,而 Selenium、Playwright 等自动化工具默认返回自动化标识,例如userAgent中包含HeadlessChromeSelenium关键字,网站通过检测关键字即可直接拦截爬虫。

2.2 渲染特征:Canvas/WebGL 指纹

Canvas/WebGL 是浏览器的图形渲染接口,是最精准、最难伪装的浏览器指纹,也是现代网站风控的核心检测点。

2.2.1 Canvas 指纹原理
  1. JS 脚本创建 Canvas 画布,绘制固定文本、图形;
  2. 调用toDataURL()方法获取画布的 Base64 编码;
  3. 对 Base64 编码进行哈希处理,生成 Canvas 指纹。

由于不同显卡、浏览器渲染引擎、操作系统的图形渲染存在微小差异,即使相同代码,不同设备生成的 Canvas 结果也完全不同,因此唯一性极高。

2.2.2 WebGL 指纹原理

WebGL 用于 3D 图形渲染,通过采集显卡渲染参数、着色器信息、GPU 型号生成指纹,与 Canvas 指纹配合使用,识别准确率接近 100%。

2.3 自动化特征:爬虫程序暴露标识

Selenium、Puppeteer、Playwright 等自动化工具会在浏览器环境中注入专属特征,这些特征是网站识别爬虫的核心依据:

  1. window.navigator.webdriver:自动化程序标识,真实浏览器为undefined,爬虫为true
  2. window._seleniumwindow._playwright:工具专属全局变量;
  3. Chrome 开发者模式标识:无头模式浏览器特征。

这些特征无需复杂算法,网站一行 JS 代码即可检测,是初级爬虫最容易被拦截的原因。

2.4 其他辅助指纹特征

  1. AudioContext 指纹:通过音频渲染生成的音频指纹;
  2. 插件指纹:浏览器安装的插件列表,真实浏览器有插件,无头浏览器无插件;
  3. 时区指纹Intl.DateTimeFormat().resolvedOptions().timeZone获取的时区信息;
  4. 字体指纹:浏览器支持的字体列表特征。

三、Python 浏览器指纹伪装环境搭建

3.1 核心依赖库安装

本文基于undetected-chromedriverPlaywright两大工具实现指纹伪装,均为 Python 生态中反检测能力最强的库,安装命令如下:

bash

运行

# 安装undetected-chromedriver(Selenium增强版,原生绕过指纹检测) pip install undetected-chromedriver -i https://pypi.tuna.tsinghua.edu.cn/simple # 安装Playwright pip install playwright -i https://pypi.tuna.tsinghua.edu.cn/simple # 安装Playwright浏览器驱动 playwright install

3.2 环境配置要求

  1. 操作系统:Windows10+/macOS 10.15+/Linux(CentOS7+/Ubuntu18.04+);
  2. Python 版本:3.8 及以上(低版本不支持最新指纹伪装库);
  3. 浏览器:Chrome 110 + 版本(与驱动版本匹配);
  4. 网络:可正常访问目标站点,无需特殊代理(基础环境测试)。

3.3 环境验证代码

运行以下代码,验证环境是否安装成功,同时检测基础指纹伪装效果:

python

运行

# 环境验证:undetected-chromedriver基础测试 import undetected_chromedriver as uc def env_verify(): # 初始化反检测Chrome驱动 driver = uc.Chrome() # 打开指纹检测网站 driver.get("https://fingerprint.com/demo/") # 输出页面标题,验证运行正常 print("环境验证成功,当前页面标题:", driver.title) # 延迟3秒后关闭浏览器 import time time.sleep(3) driver.quit() if __name__ == '__main__': env_verify()
代码原理
  1. undetected_chromedriver对原生 ChromeDriver 进行深度修改,移除了navigator.webdriver等自动化标识;
  2. 自动伪装 Canvas、WebGL、插件列表等核心指纹,模拟真实浏览器环境;
  3. 无需手动配置请求头,默认实现高匿指纹伪装。

四、浏览器指纹深度伪装实战(五大核心方案)

4.1 方案一:基础指纹伪装(User-Agent + 语言 + 时区)

该方案针对基础风控站点,通过修改 Navigator 对象特征,绕过初级指纹检测,适用于无渲染指纹验证的网站。

4.1.1 实战代码

python

运行

# 基础浏览器指纹伪装:Selenium+手动配置特征 from selenium import webdriver from selenium.webdriver.chrome.options import Options import time def basic_fingerprint_spoof(): # 初始化Chrome配置 chrome_options = Options() # 1. 伪装User-Agent(真实浏览器UA,无自动化关键字) custom_ua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36" chrome_options.add_argument(f"user-agent={custom_ua}") # 2. 禁用无头模式(无头模式指纹特征明显) chrome_options.add_argument("--headless=false") # 3. 伪装语言与时区 chrome_options.add_argument("--lang=zh-CN") chrome_options.add_argument("--timezone=Asia/Shanghai") # 4. 禁用自动化扩展(移除webdriver标识) chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"]) chrome_options.add_experimental_option('useAutomationExtension', False) # 初始化驱动 driver = webdriver.Chrome(options=chrome_options) # 执行JS脚本,彻底隐藏自动化标识 driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", { "source": """ // 隐藏webdriver特征 Object.defineProperty(navigator, 'webdriver', {get: () => undefined}); // 伪装CPU核心数 Object.defineProperty(navigator, 'hardwareConcurrency', {get: () => 8}); // 伪装设备内存 Object.defineProperty(navigator, 'deviceMemory', {get: () => 16}); // 伪装平台信息 Object.defineProperty(navigator, 'platform', {get: () => 'Win32'}); """ }) # 访问指纹检测网站 driver.get("https://www.whatismybrowser.com/detect/what-is-my-user-agent/") print("基础指纹伪装完成,页面已打开") time.sleep(5) driver.quit() if __name__ == '__main__': basic_fingerprint_spoof()
4.1.2 原理深度剖析
  1. User-Agent 伪装:使用真实浏览器的 UA 字符串,移除SeleniumHeadless等自动化关键字,避免基础检测;
  2. 自动化标识隐藏:通过execute_cdp_cmd调用 Chrome 调试协议,重写navigator.webdriver属性,真实浏览器该属性为undefined,自动化程序默认为true
  3. 硬件信息伪装:手动指定 CPU 核心数、内存大小,匹配真实 PC 设备特征,避免无头浏览器默认的极简硬件信息。

4.2 方案二:Canvas/WebGL 渲染指纹伪装

针对中高级风控站点,核心突破 Canvas/WebGL 渲染指纹,解决渲染特征不一致导致的拦截问题。

4.2.1 实战代码

python

运行

# Canvas/WebGL指纹深度伪装 import undetected_chromedriver as uc import time def canvas_webgl_spoof(): # 初始化高匿驱动,原生支持Canvas/WebGL伪装 driver = uc.Chrome(headless=False, use_subprocess=True) # 注入自定义JS,固定Canvas渲染结果(彻底解决渲染指纹差异) driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", { "source": """ // 固定Canvas渲染输出,所有设备生成相同的Base64编码 HTMLCanvasElement.prototype.toDataURL = function() { return "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACWCAYAAABkW7XSAAAgAElEQVR4nOzdeZxcdZ3/8c+ZM2eO" }; // 固定WebGL渲染参数 const getParameter = WebGLRenderingContext.prototype.getParameter; WebGLRenderingContext.prototype.getParameter = function(param) { if (param === 37445) return "Intel(R) UHD Graphics 770"; if (param === 37446) return "WebGL 1.0"; return getParameter.call(this, param); }; // 伪装插件列表(无头浏览器无插件,真实模拟插件) Object.defineProperty(navigator, 'plugins', { get: () => [1, 2, 3, 4, 5] }); """ }) # 访问Canvas指纹检测网站 driver.get("https://browserleaks.com/canvas") print("Canvas/WebGL指纹伪装完成") time.sleep(5) driver.quit() if __name__ == '__main__': canvas_webgl_spoof()
4.2.2 原理深度剖析
  1. Canvas 指纹固定:重写HTMLCanvasElement.prototype.toDataURL方法,强制返回固定的 Base64 编码,让所有爬虫程序生成相同的 Canvas 指纹,模拟真实设备;
  2. WebGL 指纹伪装:重写 WebGL 渲染上下文的getParameter方法,固定显卡型号、渲染版本等参数,消除硬件渲染差异;
  3. 插件列表伪装:真实浏览器默认包含插件,无头浏览器插件列表为空,通过重写navigator.plugins属性,模拟真实插件特征。

4.3 方案三:Playwright 原生高匿指纹伪装

Playwright 是微软推出的新一代自动化工具,原生支持浏览器指纹深度伪装,无需手动修改 JS,开箱即用,是目前最稳定的反检测方案。

4.3.1 实战代码

python

运行

# Playwright原生浏览器指纹伪装(零配置,高匿效果) from playwright.sync_api import sync_playwright import time def playwright_fingerprint_spoof(): with sync_playwright() as p: # 启动Chrome浏览器,开启隐身模式+高匿配置 browser = p.chromium.launch( headless=False, args=[ "--disable-blink-features=AutomationControlled", "--start-maximized" ] ) # 创建上下文,伪装指纹特征 context = browser.new_context( user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36", locale="zh-CN", timezone_id="Asia/Shanghai", # 固定设备参数,消除指纹差异 device_scale_factor=1, is_mobile=False, has_touch=False ) # 创建页面 page = context.new_page() # 访问顶级指纹检测网站 page.goto("https://fingerprint.com/demo/") print("Playwright原生指纹伪装完成,风控检测无异常") # 等待页面加载完成 page.wait_for_timeout(5000) # 关闭资源 context.close() browser.close() if __name__ == '__main__': playwright_fingerprint_spoof()
4.3.2 原理深度剖析
  1. 原生反检测:Playwright 底层重构了浏览器启动参数,彻底移除了自动化程序的所有标识,网站无法通过常规 JS 检测识别;
  2. 上下文指纹隔离:通过new_context创建独立的浏览器上下文,每个上下文可配置独立的 UA、时区、语言、设备参数,实现指纹随机化;
  3. 渲染引擎优化:原生支持 Canvas、WebGL、AudioContext 等渲染指纹的伪装,无需手动注入 JS 代码。

4.4 方案四:多设备指纹随机化伪装

针对大型电商、金融站点,固定指纹会被风控标记,本方案实现多设备指纹随机生成,每次请求使用不同的浏览器指纹,模拟真实用户分散访问。

4.4.1 实战代码

python

运行

# 多设备指纹随机化伪装 import undetected_chromedriver as uc import random import time # 定义真实设备指纹池(包含不同系统、浏览器、硬件特征) FINGERPRINT_POOL = [ { "ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36", "cpu": 8, "memory": 16, "platform": "Win32" }, { "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 14_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15", "cpu": 8, "memory": 16, "platform": "MacIntel" }, { "ua": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36", "cpu": 4, "memory": 8, "platform": "Linux x86_64" } ] def random_fingerprint_spoof(): # 随机从指纹池选取特征 fingerprint = random.choice(FINGERPRINT_POOL) # 初始化驱动 driver = uc.Chrome() # 注入随机指纹 driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", { "source": f""" Object.defineProperty(navigator, 'userAgent', {{get: () => '{fingerprint["ua"]}'}}); Object.defineProperty(navigator, 'hardwareConcurrency', {{get: () => {fingerprint["cpu"]}}}); Object.defineProperty(navigator, 'deviceMemory', {{get: () => {fingerprint["memory"]}}}); Object.defineProperty(navigator, 'platform', {{get: () => '{fingerprint["platform"]}'}}); """ }) # 访问检测网站 driver.get("https://browserleaks.com/") print(f"随机指纹伪装成功:{fingerprint['ua']}") time.sleep(5) driver.quit() if __name__ == '__main__': # 模拟多次请求,每次使用不同指纹 for i in range(3): print(f"第{i+1}次请求:") random_fingerprint_spoof() time.sleep(2)
4.4.2 原理深度剖析
  1. 指纹池设计:提前收集真实用户的浏览器指纹,构建指纹池,避免使用自动化程序默认指纹;
  2. 随机选取机制:每次请求随机从指纹池选取特征,实现指纹随机化,模拟不同设备的用户访问;
  3. 全特征匹配:UA、CPU、内存、平台等特征一一对应,保证指纹真实性,避免特征冲突(如 Windows 系统搭配 Mac 平台)。

4.5 方案五:无头模式高匿指纹伪装

无头模式(无界面浏览器)是爬虫常用模式,但默认无头模式指纹特征极强,本方案实现无头模式下的深度指纹伪装,兼顾效率与隐蔽性。

4.5.1 实战代码

python

运行

# 无头模式浏览器指纹伪装 from playwright.sync_api import sync_playwright def headless_fingerprint_spoof(): with sync_playwright() as p: # 启动无头Chrome,配置高匿参数 browser = p.chromium.launch( headless=True, args=[ "--disable-blink-features=AutomationControlled", "--no-sandbox", "--disable-dev-shm-usage" ] ) # 无头模式下伪装所有指纹特征 context = browser.new_context( user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36", locale="zh-CN", timezone_id="Asia/Shanghai", # 模拟真实设备屏幕分辨率 viewport={"width": 1920, "height": 1080} ) page = context.new_page() # 访问指纹检测网站 page.goto("https://fingerprint.com/demo/") # 获取检测结果 result = page.locator("body").text_content() print("无头模式指纹伪装结果:无自动化检测标识") # 关闭资源 context.close() browser.close() if __name__ == '__main__': headless_fingerprint_spoof()
4.5.2 原理深度剖析
  1. 无头模式优化:添加--disable-blink-features=AutomationControlled参数,移除无头模式的自动化标识;
  2. 界面模拟:通过viewport设置真实屏幕分辨率,避免无头模式默认的极小窗口特征;
  3. 全特征覆盖:语言、时区、UA、渲染指纹全部伪装,让无头浏览器与真实有头浏览器指纹完全一致。

五、浏览器指纹伪装效果检测与验证

5.1 指纹检测平台推荐

伪装完成后,需通过专业平台检测指纹是否有效,以下是主流检测平台(均支持在线免费检测):

  1. FingerprintJS Demo:顶级指纹检测平台,覆盖所有指纹特征;
  2. BrowserLeaks:全面的浏览器特征泄露检测工具;
  3. WhatIsMyBrowser:基础指纹与 UA 检测;
  4. Canvas Fingerprint Detector:Canvas 渲染指纹专项检测。

5.2 检测标准

  1. 无自动化标识navigator.webdriverundefined,无 Selenium/Playwright 关键字;
  2. 渲染指纹正常:Canvas/WebGL 指纹与真实浏览器一致,无异常渲染结果;
  3. 硬件信息合理:CPU、内存、平台等特征匹配真实 PC 设备;
  4. 风控无标记:顶级检测平台未标记为自动化程序、爬虫。

5.3 批量检测代码

python

运行

# 指纹伪装效果批量检测 import undetected_chromedriver as uc def fingerprint_check(): driver = uc.Chrome() # 定义检测平台列表 check_urls = [ "https://fingerprint.com/demo/", "https://browserleaks.com/", "https://www.whatismybrowser.com/" ] for url in check_urls: driver.get(url) print(f"检测平台:{url},页面标题:{driver.title}") driver.quit() if __name__ == '__main__': fingerprint_check()

六、高级风控绕过:指纹伪装进阶策略

6.1 指纹 + IP 代理联动策略

大型站点会结合指纹 + IP双重检测,单一指纹伪装无法绕过,需实现同一 IP 对应固定指纹,不同 IP 对应不同指纹

  1. 建立 IP - 指纹映射表,每个代理 IP 绑定唯一指纹;
  2. 切换 IP 时同步切换对应指纹,避免指纹与 IP 不匹配。

6.2 指纹 + 行为模拟联动策略

真实用户会有鼠标移动、点击、滚动等行为,纯爬虫无行为会被标记,结合指纹伪装 + 行为模拟:

  1. 使用pyautogui模拟鼠标移动、点击;
  2. 浏览器自动化工具模拟页面滚动、输入操作;
  3. 随机请求间隔,模拟人类操作延迟。

6.3 指纹定期更新策略

网站会更新指纹检测规则,固定指纹会逐渐被识别,需定期更新指纹池:

  1. 爬取真实用户指纹,扩充指纹池;
  2. 每月更新一次伪装库,适配最新风控规则。

七、常见问题与解决方案

7.1 问题 1:navigator.webdriver 仍为 true

原因:未彻底移除自动化标识,驱动版本与浏览器不匹配;解决方案

  1. 使用undetected-chromedriver或 Playwright;
  2. 升级 Chrome 浏览器与驱动版本;
  3. 注入 JS 重写navigator.webdriver属性。

7.2 问题 2:Canvas 指纹仍被检测

原因:未固定渲染结果,显卡渲染差异未消除;解决方案

  1. 重写toDataURL方法,固定 Base64 编码;
  2. 使用 Playwright 原生渲染伪装。

7.3 问题 3:无头模式无法绕过检测

原因:无头模式默认特征未移除,界面特征异常;解决方案

  1. 添加--disable-blink-features=AutomationControlled参数;
  2. 配置真实屏幕分辨率与设备参数。

7.4 问题 4:指纹伪装后仍被拦截

原因:网站采用多维度风控,仅指纹伪装不足;解决方案

  1. 结合 IP 代理、行为模拟、请求间隔;
  2. 随机化指纹,避免固定指纹重复请求。

八、总结与技术展望

8.1 核心技术总结

  1. 浏览器指纹是现代反爬虫核心技术,分为基础、渲染、自动化、硬件四大类;
  2. Python 实现指纹伪装的核心工具:undetected-chromedriverPlaywright
  3. 深度伪装核心:隐藏自动化标识、固定渲染指纹、随机化设备特征、无头模式优化;
  4. 高匿爬虫必须实现指纹 + IP + 行为三维联动,才能绕过顶级风控。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 17:56:42

法律文本智能解析:基于BERT与信息抽取的法律NLP实践

1. 项目概述:一个为法律文本分析而生的智能工具最近在和一些做法律科技的朋友聊天,发现一个挺有意思的现象:无论是律所的法务助理,还是法律科技公司的产品经理,都在为一个问题头疼——怎么高效地从海量的法律文书、合同…

作者头像 李华
网站建设 2026/5/8 17:51:53

娱乐圈天降紫微星心怀苍生,海棠山铁哥《第一大道》承载时代使命

“内娱喧嚣,流量浮躁,真正的紫微星只问苍生,不问封神。”一、序章 紫微降世背景资本垄断、套路横行、平民创作者失声天问谁能为时代扛镜?谁能替苍生发声?回应海棠山铁哥携《第一大道》应声而出 二、金句卡片 一秒击穿…

作者头像 李华
网站建设 2026/5/8 17:51:46

解决Android投屏延迟难题:QtScrcpy实战操作指南

解决Android投屏延迟难题:QtScrcpy实战操作指南 【免费下载链接】QtScrcpy Android real-time display control software 项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy 通过USB/网络双模连接实现≤30ms低延迟Android屏幕镜像,无需…

作者头像 李华
网站建设 2026/5/8 17:51:45

3分钟快速检测微信单向好友:WechatRealFriends免费工具终极使用指南

3分钟快速检测微信单向好友:WechatRealFriends免费工具终极使用指南 【免费下载链接】WechatRealFriends 微信好友关系一键检测,基于微信ipad协议,看看有没有朋友偷偷删掉或者拉黑你 项目地址: https://gitcode.com/gh_mirrors/we/WechatRe…

作者头像 李华
网站建设 2026/5/8 17:48:31

在Agent工作流中集成Taotoken实现稳定且低成本的多模型调用

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在Agent工作流中集成Taotoken实现稳定且低成本的多模型调用 构建自动化AI工作流的开发者,常常需要依赖大模型API来完成…

作者头像 李华