scrapling
Scrapling is an undetectable, powerful, flexible, high-performance Python library that makes Web Scraping easy and effortless as it should be!
What it is and what it does
Scrapling is a web scraping framework designed to handle both simple single-page requests and large-scale concurrent crawls. It combines HTTP fetchers (with stealth and anti-bot capabilities), a Scrapy-like spider API for structured crawling, and adaptive parsing that learns from website changes and automatically relocates elements when page layouts shift. The framework includes built-in support for proxy rotation, session management, pause/resume checkpointing, and export to JSON, CSV, and XML.
The package targets modern web scraping challenges: it claims to bypass Cloudflare Turnstile out of the box, supports headless browser automation via Playwright, and provides both synchronous and asynchronous APIs. Its spider framework handles concurrent requests with per-domain throttling, robots.txt compliance, and automatic retry logic for blocked requests. Runtime dependencies are minimal (lxml, cssselect, orjson, tld, w3lib, typing_extensions), keeping the base installation lightweight.
Use it for:
- Scrape product listings from e-commerce sites that use Cloudflare protection or dynamic content loading.
- Build a full-scale web crawler with concurrent requests, automatic proxy rotation, and pause/resume capability.
- Extract data from Shopify stores using the built-in ShopifySpider template to iterate products via JSON API.
- Iterate over XML feeds, RSS, or CSV sources with ready-made feed spider templates.
- Monitor website changes by using adaptive parsing to relocate elements after design updates without rewriting selectors.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Scrapling is a web scraping and crawling framework that handles single requests to full-scale crawls, with built-in anti-bot bypass, adaptive element relocation, proxy rotation, and concurrent spider support.
Yes. Scrapling is actively maintained, has low install friction, carries a permissive BSD license, and addresses real modern web scraping pain points (anti-bot bypass, adaptive parsing, concurrent crawling). The recent release, high star count, and zero known vulnerabilities indicate a mature, well-tested library. Install it if you need to scrape protected or dynamic websites at scale; skip it if you only need simple static HTML parsing.
Install
scrapling on PyPI
pip
pip install scraplinguv
uv add scraplingpoetry
poetry add scraplingInstalling scrapling
Before you install
Low install friction with a pure-Python wheel and six lightweight runtime dependencies. The package is actively maintained with a recent release (4 days old) and substantial community engagement (73959 stars), suggesting stable, well-tested code.
License in practice
BSD 3-Clause License permits commercial and private use with minimal restrictions—you may use, modify, and distribute the code provided you retain the license notice and disclaimer.
Quickstart
pip install scrapling
from scrapling.fetchers import StealthyFetcher
p = StealthyFetcher.fetch('https://example.com', headless=True)
products = p.css('.product', adaptive=True)
Requires Python 3.10 or later. Browser-based fetchers (StealthyFetcher, DynamicFetcher) require a local Chromium/Chrome installation or a remote CDP endpoint.
Verify before relying
- Whether adaptive element relocation works reliably across different website redesigns in production.
- Performance characteristics and memory usage when running concurrent crawls at scale.
- Specific anti-bot systems reliably bypassed beyond Cloudflare Turnstile (e.g., Akamai, DataDome).
Package facts
| License | BSD 3-Clause License Copyright (c) 2024, Karim shoair Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1.… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 6 — lxml, cssselect, orjson, tld, w3lib, typing_extensions |
| Maintenance | actively maintained — 4 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 966,081/month — #4,620 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: scrapling-0.4.14-py3-none-any.whl
Keywords: web-scraping, scraping, automation, browser-automation, data-extraction, html-parsing, undetectable, playwright, selenium-alternative, web-crawler, browser, crawling, headless, scraper, chrome
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
crawleeCrawlee is a web scraping and browser…
permissive · top 5,000 on PyPI
ScrapyScrapy is a web scraping framework that…
permissive · top 5,000 on PyPI
scrapydoProvides a blocking API to run Scrapy spiders…
permissive · top 15,000 on PyPI
python-jobspyScrapes job postings from LinkedIn, Indeed,…
unclear · top 15,000 on PyPI
Crawl4AICrawl4AI is an async web crawler and scraper…
permissive · top 5,000 on PyPI
wrapper-tls-requestsMakes HTTP requests with browser-like TLS…
permissive · top 15,000 on PyPI
zenrowsPython client for the ZenRows web scraping API…
permissive · top 15,000 on PyPI
spider-clientPython SDK for the Spider Cloud API that…
permissive · top 15,000 on PyPI
scrapfly-sdkPython SDK for the Scrapfly web scraping…
permissive · top 15,000 on PyPI
LinkCheckerLinkChecker validates links across websites by…
copyleft · top 15,000 on PyPI