
FlareSolverr
A local proxy server that opens a real browser to get past Cloudflare checks for your requests.
- Stars
- 16.1k
- Forks
- 1.3k
- Licence
- MIT
- Language
- Python
- Last update
- 13 days ago
- Type
- App
What it is
FlareSolverr is a proxy server that runs on your own machine and handles requests for pages protected by Cloudflare or DDoS-GUARD. When a request arrives, it launches a Chrome browser, loads the page, waits until the protection challenge is solved or times out, then returns the HTML and cookies. Other HTTP tools can then reuse those cookies.
- Send a POST request to the local /v1 endpoint with a URL and get back the page HTML
- Create a browser session with sessions.create so cookies persist across several requests
- Pass the returned cookies to another HTTP client to keep fetching pages
Great for
- Developers whose scripts are blocked by Cloudflare challenges on pages they are allowed to access
- People running self-hosted tools that need to fetch Cloudflare-protected pages through a local REST endpoint
- Users who prefer running the service in Docker
Not ideal for
- Anyone planning to expose it to the internet, since the README warns it can be abused
- Machines with little RAM, because each request launches a new browser and browsers use a lot of memory
- Users who need to run it on non-x64 hardware outside Docker, since precompiled binaries and source installs are x64 only
How to get it
- 1
Run with Docker
You'll need: Docker
Start the container with the Docker CLI
docker run -d --name=flaresolverr -p 127.0.0.1:8191:8191 -e LOG_LEVEL=info --restart unless-stopped ghcr.io/flaresolverr/flaresolverr:latest - 2
Run it
- Run the docker command to start the container on port 8191
- Send a POST request to http://localhost:8191/v1 with cmd set to request.get and a url
- Read the returned response text for the HTML and cookies
- 3
Get the most out of it
- Mount /tmp as tmpfs with --tmpfs /tmp:size=256M,mode=1777 to reduce disk writes, as the README suggests
- Close sessions with sessions.destroy when finished, since the README advises against leaving them open
- Set a proxy per session with the proxy parameter if you need traffic routed through another server
- Keep the port bound to 127.0.0.1 as shown, because the README warns against exposing it to the internet
Downloads
Strengths
- Runs as a simple REST API that works from curl, Python, or PowerShell
- Reuses browser sessions so you do not have to solve challenges on every request
- Available as a Docker image, precompiled binary, or from source under the MIT license
Trade-offs
- Browsers consume significant memory, so concurrent requests need enough RAM
- Works only for sites you are permitted to access; it is not a general guarantee against blocking
- Setup has platform-specific caveats such as Chromium not working on Windows for source installs
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| FlareSolverr (this) | 16.1k | App | intermediate | 13 days ago | Developers whose scripts are blocked by Cloudflare challenges on pages they are allowed to access |
| gotenberg | 13.5k | App | intermediate | 5 days ago | Developers who need to turn HTML or web pages into PDFs from their own application |
| postgrest | 27.7k | App | intermediate | 7 days ago | Developers who already have a PostgreSQL database and want an HTTP API on top of it quickly |
| json-server | 75.7k | Dev tool | beginner | 8 months ago | Front-end developers who need a backend stub while the real API is not ready |
| one-api | 37.3k | App | intermediate | 10 months ago | Developers who want one OpenAI-compatible endpoint for several model providers |
| headless-recorder | 15.3k | App | beginner | 3.9 years ago | Developers who want a rough starting script for a Playwright or Puppeteer flow |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.