Vibeleaderboard
Index / app
Visit github.com
Category
Developer Tools
Rank

Previous survey · No. 266 ·

Type
APP
Builder
d4vinci
Latest release
v0.4.15
Date

About

An adaptive, high-performance Python web-scraping framework that auto-adjusts to site changes.

What it does

Scrapling combines HTML parsing, page fetching, browser automation, and full crawling in one Python toolkit. It selects content through CSS, XPath, text, regex, and similarity searches. For larger jobs, its spiders coordinate concurrent sessions, retries, throttling, checkpoints, streaming results, and proxy rotation.

Why it's ranked here

This is unusually broad for a scraping library. The same package covers raw HTML, ordinary HTTP, automated browsers, persistent sessions, and resumable crawls. Adaptive element tracking addresses a costly maintenance problem, while terminal and MCP interfaces make the engine useful beyond hand-written Python scripts.

What's good

The crawler has practical production features: per-domain throttling, blocked-request retries, response caching, pause and resume, real-time statistics, and built-in exporters. Browser fetchers can capture background API responses and connect to remote browsers. Parsing supports several selection styles, DOM navigation, and element similarity matching.

Tradeoffs

The richer fetching modes carry substantial optional dependencies, including browser automation, fingerprint tooling, and asynchronous infrastructure. Anti-bot handling is presented as a capability, not a universal guarantee. Robots compliance is optional. Adaptive tracking also requires saving an earlier match before relocation can help after a page changes.

How to use it well

Use it when a Python scraping workflow may grow from page extraction into browser-backed or concurrent crawling. Start with lightweight parsing and HTTP dependencies, then add browser, shell, or AI extras only when needed. Supply your own proxies and target-specific compliance rules. It is not a hosted proxy network or ready-made data API.

Technical notes+

pyproject.toml uses setuptools.build_meta, requires Python 3.10 or newer, and separates the small parsing core from fetchers, ai, shell, and all extras. It installs scrapling and scrapling-mcp console scripts through scrapling.cli:main and scrapling.cli:mcp. docs/index.md documents Spider concurrency, multi-session routing, checkpoint persistence, AutoThrottle, robots.txt handling, exporters, CDP browser connections, XHR capture, adaptive selection, and MCP sessions. setup.cfg identifies the package license as BSD.

Observed

License
BSD License
Primary language
Python 3 only, with Python 3.10 or newer required
Packaging
Setuptools package with core dependencies and optional fetchers, AI, shell, and combined extras
Interfaces
Python library, command-line interface, interactive shell option, and MCP server
Platform support
Declared operating-system independent
Typing
Package declares typed support and configures mypy and Pyright checks

Read from README.md, setup.cfg, pyproject.toml, docs/index.md, docs/donate.md, docs/overview.md, docs/README_AR.md, docs/README_CN.md, docs/README_DE.md, docs/README_ES.md.

Tech Stack

PythonDocker

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.