FlareSolverr: Complete Step-by-Step Guide [2026]
Advanced Data Extraction Specialist
FlareSolverr is essentially a proxy server designed to circumvent Cloudflare’s anti-bot defenses. It acts as an intermediary between Cloudflare-protected websites and your data retrieval requests. Using Python, Selenium, and ChromeDriver, FlareSolverr allows users to bypass Cloudflare challenges and access secured web content efficiently.
This tutorial provides an in-depth overview of FlareSolverr, including installation instructions for Linux, Docker, and Windows. It also explains configuration for different scenarios, covering environment variables, Cloudflare, Plex, Prometheus, and integration with other tools like Jackett and Prowlarr.
Disclaimer
This guide is intended solely for educational purposes. It does not endorse any illegal activity, product, or service. Users are responsible for complying with all applicable laws, including intellectual property rules. We are not liable for any damages resulting from the use of this guide.
1. Introduction to FlareSolverr
a. What is FlareSolverr?
Cloudflare provides security solutions such as anti-bot protection, DDoS mitigation, and user privacy safeguards. To distinguish humans from bots, Cloudflare uses JavaScript challenges, CAPTCHAs, and fingerprinting techniques. While these obstacles prevent malicious bot activity, they can also block legitimate automated tasks.
FlareSolverr is an open-source proxy server that helps overcome Cloudflare’s anti-bot protections by simulating a real browser environment.
Note: Not all bots are harmful. Bots can perform legitimate tasks such as web scraping, search engine crawling, monitoring, or assisting AI applications.
b. How does FlareSolverr work?
FlareSolverr acts as a proxy that mimics human browser behavior to bypass Cloudflare challenges. The typical workflow is:
- A client (e.g., Python HTTP library) sends a request.
- FlareSolverr, initially idle, launches a Chrome browser via Python Selenium and Undetected ChromeDriver.
- The request is forwarded to the Cloudflare-protected site.
- Cloudflare challenges are automatically solved.
- The site responds, and FlareSolverr returns the HTML and cookies to the client.
This allows the resulting data to be used with other HTTP clients like Python Requests.
c. Common Use Cases
FlareSolverr supports various applications, including:
- Bypassing Cloudflare protection for web scraping (news, e-commerce, price monitoring).
- Accessing torrent and Usenet indexers via Jackett, Prowlarr, and Sonarr/Radarr.
- Providing stable remote access to Plex servers behind Cloudflare.
- Monitoring Cloudflare-protected APIs with Prometheus.
- Feeding AI/LLM models with scraped content.
- Integrating with headless browsers like Playwright or Puppeteer for stealth scraping.
- Bypassing some CAPTCHA walls (limited success; third-party solvers may be needed).
d. Advantages and Disadvantages
Advantages:
- Automated bypassing of Cloudflare challenges.
- Efficient data scraping from protected websites.
- Seamless browser simulation for reliable access.
- Easy integration with Python, Selenium, and ChromeDriver workflows.
- HTML and cookies can be used with other HTTP clients.
Disadvantages:
- Legal and ethical concerns—bypassing anti-bot mechanisms may violate terms of service.
- Additional server load on target websites.
- High resource consumption due to browser instances and JavaScript solving.
- Dependency on external tools like Selenium and ChromeDriver.
- CAPTCHA handling may be limited; third-party solvers like 2Captcha or CapSolver may be necessary.
2. Installing FlareSolverr
a. Linux Installation
Prerequisites: Python 3.11+, pip.
Steps:
- Open terminal and create a folder:
bash
mkdir FlareSolverr
cd FlareSolverr
- Download the latest binary from the official GitHub.
- Extract the archive:
bash
tar -xzf flaresolverr_linux_x64.tar.gz
cd flaresolverr
- Run FlareSolverr:
bash
./flaresolverr
Access is available at http://0.0.0.0:8191.
Troubleshooting:
- Missing
libatk-1.0.so.0→sudo apt install libatk1.0-0 - Missing Xvfb →
sudo apt install xvfb
Tip: Modern Chrome supports headless mode, making Xvfb optional.
b. Docker Installation
- Clone repository:
bash
git clone https://github.com/FlareSolverr/FlareSolverr.git
cd FlareSolverr
sudo docker-compose up -d
- Verify container:
bash
sudo docker ps
- Access FlareSolverr at
http://localhost:8191.
Supports multiple architectures: x86, x86-64, ARM32, ARM64.
c. Windows Installation
- Download the Windows x64 binary from GitHub.
- Extract and run
FlareSolverr.exe. - Allow firewall access.
3. Configuring FlareSolverr
a. Changing Environment Variables
Linux:
bash
export LOG_LEVEL=debug
export TZ=America/New_York
Docker: Modify docker-compose.yml under the environment section.
Windows:
cmd
set LOG_LEVEL=debug
set TZ=Europe/London
b. Cloudflare Configuration
Set key environment variables:
bash
export CAPTCHA_SOLVER=hcaptcha
export LOG_LEVEL=debug
./flaresolverr
c. Plex Configuration
bash
export PROXY='{"url": "http://proxy-server-address:proxy-port"}'
export LOG_LEVEL=info
./flaresolverr
d. Prometheus Configuration
- Enable Prometheus:
PROMETHEUS_ENABLED=true - Set listening port:
PROMETHEUS_PORT=xxxx - Configure Prometheus to scrape FlareSolverr endpoints.
e. Other Apps (Jackett, Prowlarr)
- Enable FlareSolverr in app settings.
- Set host URL:
http://flaresolverr:8191. - Adjust CAPTCHA solver variables if necessary.
4. Using FlareSolverr
a. Using curl on Linux
- Create session:
bash
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "sessions.create"}'
- List sessions:
bash
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "sessions.list"}'
- Destroy session:
bash
curl -L -X POST 'http://localhost:8191/v1' -H 'Content-Type: application/json' --data-raw '{"cmd": "sessions.destroy", "session": "session_id_here"}'
- GET request:
bash
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. Using Python Requests
python
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())
This returns HTML content and cookies from the target site.
5. Conclusion
FlareSolverr is a powerful tool for bypassing Cloudflare protections, enabling reliable web scraping, monitoring, and media access. It integrates seamlessly with tools like Prometheus, Plex, Jackett, and Prowlarr.
Whether installed on Linux, Docker, or Windows, FlareSolverr can be configured to meet a variety of use cases. Combined with curl or Python Requests, it provides an effective solution for accessing protected web content.
At Scrapeless, we only access publicly available data while strictly complying with applicable laws, regulations, and website privacy policies. The content in this blog is for demonstration purposes only and does not involve any illegal or infringing activities. We make no guarantees and disclaim all liability for the use of information from this blog or third-party links. Before engaging in any scraping activities, consult your legal advisor and review the target website's terms of service or obtain the necessary permissions.
![FlareSolverr: Complete Step-by-Step Guide [2026]](/_next/image?url=https%3A%2F%2Fassets.scrapeless.com%2Fprod%2Fposts%2Fflaresolverr-guide%2F81c2baf53aa757ca85292d63578fa5a4.png&w=1920&q=100)


