🎯 一款可定制、具备反检测功能的云浏览器,由自主研发的 Chromium驱动,专为网页爬虫AI 代理设计。👉立即试用
返回博客

FlareSolverr:完整的逐步指南 [2026]

Michael Lee
Michael Lee

Expert Network Defense Engineer

17-Nov-2025

FlareSolverr 实质上是一个旨在绕过 Cloudflare 反机器人防御的代理服务器。它充当 Cloudflare 防护网站与您的数据检索请求之间的中介。通过使用 Python、Selenium 和 ChromeDriver,FlareSolverr 允许用户绕过 Cloudflare 挑战,从而高效访问受保护的网页内容。

本教程提供了 FlareSolverr 的深入概述,包括 Linux、Docker 和 Windows 的安装说明。它还解释了不同场景的配置,包括环境变量、Cloudflare、Plex、Prometheus 以及与 Jackett 和 Prowlarr 等其他工具的集成。


免责声明

本指南仅用于教育目的。它不支持任何非法活动、产品或服务。用户有责任遵守所有适用法律,包括知识产权规则。我们不对因使用本指南而导致的任何损害承担责任。


1. FlareSolverr 介绍

a. 什么是 FlareSolverr?

Cloudflare 提供安全解决方案,如反机器人保护、DDoS 缓解和用户隐私保护。为了区分人类与机器人,Cloudflare 使用 JavaScript 挑战、验证码和指纹识别技术。虽然这些障碍可以防止恶意机器人活动,但它们也可能阻止合法的自动化任务。

FlareSolverr 是一个开源代理服务器,通过模拟真实的浏览器环境帮助克服 Cloudflare 的反机器人保护。

注意: 不是所有的机器人都是有害的。机器人可以执行诸如网络爬取、搜索引擎抓取、监控或辅助 AI 应用等合法任务。


b. FlareSolverr 如何工作?

FlareSolverr 作为代理,模拟人类浏览器行为来绕过 Cloudflare 挑战。典型的工作流程是:

  1. 客户端(例如 Python HTTP 库)发送请求。
  2. FlareSolverr 初始处于空闲状态,启动一个通过 Python Selenium 和 Undetected ChromeDriver 的 Chrome 浏览器。
  3. 请求转发至 Cloudflare 防护的网站。
  4. Cloudflare 挑战被自动解决。
  5. 网站响应,FlareSolverr 将 HTML 和 Cookie 返回给客户端。

这使得得到的数据可以被其他 HTTP 客户端(如 Python Requests)使用。


c. 常见使用案例

FlareSolverr 支持多种应用,包括:

  • 绕过 Cloudflare 保护进行网络爬取(新闻、电商、价格监控)。
  • 通过 Jackett、Prowlarr 和 Sonarr/Radarr 访问种子和 Usenet 索引器。
  • 为在 Cloudflare 后面的 Plex 服务器提供稳定的远程访问。
  • 使用 Prometheus 监控 Cloudflare 保护的 API。
  • 为 AI/LLM 模型提供抓取的内容。
  • 与 Playwright 或 Puppeteer 等无头浏览器集成以进行隐秘抓取。
  • 绕过一些验证码墙(成功率有限;可能需要第三方解决方案)。

d. 优点与缺点

优点:

  • 自动绕过 Cloudflare 挑战。
  • 从受保护的网站高效数据抓取。
  • 无缝浏览器模拟以确保可靠访问。
  • 易于与 Python、Selenium 和 ChromeDriver 工作流程集成。
  • HTML 和 Cookie 可与其他 HTTP 客户端使用。

缺点:

  • 法律和伦理问题——绕过反机器人机制可能违反服务条款。
  • 对目标网站的额外服务器负载。
  • 由于浏览器实例和 JavaScript 解决的高资源消耗。
  • 依赖于 Selenium 和 ChromeDriver 等外部工具。
  • 处理验证码的功能可能有限;可能需要 2Captcha 或 CapSolver 等第三方解决方案。

2. 安装 FlareSolverr

a. Linux 安装

前提条件: Python 3.11+,pip。

步骤:

  1. 打开终端并创建一个文件夹:
bash Copy
mkdir FlareSolverr
cd FlareSolverr
  1. 从官方 GitHub 下载最新二进制文件。
  2. 解压归档:
bash Copy
tar -xzf flaresolverr_linux_x64.tar.gz
cd flaresolverr
  1. 运行 FlareSolverr:
bash Copy
./flaresolverr

访问地址为 http://0.0.0.0:8191

故障排除:

  • 缺少 libatk-1.0.so.0sudo apt install libatk1.0-0
  • 缺少 Xvfb → sudo apt install xvfb

提示: 现代 Chrome 支持无头模式,使 Xvfb 成为可选项。


b. Docker 安装

  1. 克隆仓库:
bash Copy
git clone https://github.com/FlareSolverr/FlareSolverr.git
cd FlareSolverr
sudo docker-compose up -d
  1. 验证容器:
bash Copy
sudo docker ps
  1. 访问 FlareSolverr,地址为 http://localhost:8191

支持多种架构:x86、x86-64、ARM32、ARM64。


c. Windows 安装

  1. 从 GitHub 下载 Windows x64 二进制文件。
  2. 解压并运行 FlareSolverr.exe
  3. 允许防火墙访问。

3. 配置 FlareSolverr

a. 更改环境变量

Linux:

bash Copy
export LOG_LEVEL=debug
export TZ=America/New_York

Docker:docker-compose.ymlenvironment 部分进行修改。
Windows:

cmd Copy
set LOG_LEVEL=debug

设置时区为欧洲/伦敦

Copy
---

### b. Cloudflare 配置

设置关键环境变量:

```bash
export CAPTCHA_SOLVER=hcaptcha
export LOG_LEVEL=debug
./flaresolverr

c. Plex 配置

bash Copy
export PROXY='{"url": "http://proxy-server-address:proxy-port"}'
export LOG_LEVEL=info
./flaresolverr

d. Prometheus 配置

  • 启用 Prometheus: PROMETHEUS_ENABLED=true
  • 设置监听端口: PROMETHEUS_PORT=xxxx
  • 配置 Prometheus 以抓取 FlareSolverr 端点。

e. 其他应用程序 (Jackett, Prowlarr)

  • 在应用程序设置中启用 FlareSolverr。
  • 设置主机 URL: http://flaresolverr:8191
  • 如有必要,调整 CAPTCHA 解决变量。

4. 使用 FlareSolverr

a. 在 Linux 上使用 curl

  • 创建会话:
bash Copy
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "sessions.create"}'
  • 列出会话:
bash Copy
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "sessions.list"}'
  • 销毁会话:
bash Copy
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "sessions.destroy", "session": "session_id_here"}'
  • GET 请求:
bash Copy
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "request.get", "url": "http://www.example.com", "maxTimeout": 60000}'

b. 使用 Python Requests

python Copy
import requests

post_body = {
    "cmd": "request.get",
    "url": "https://www.rapidseedbox.com/",
    "maxTimeout": 60000
}

response = requests.post(
    'http://localhost:8191/v1',
    headers={'Content-Type': 'application/json'},
    json=post_body
)

print(response.json())

这将返回目标网站的 HTML 内容和 cookies。


5. 结论

FlareSolverr 是一个强大的工具,用于绕过 Cloudflare 保护,启用可靠的网页抓取、监控和媒体访问。它与 Prometheus、Plex、Jackett 和 Prowlarr 等工具无缝集成。

无论安装在 Linux、Docker 还是 Windows 上,FlareSolverr 都可以配置以满足多种用例。结合 curl 或 Python Requests,它提供了一种有效的解决方案,用于访问受保护的网页内容。


在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。

最受欢迎的文章

目录