Usabletested 2026-05-24 · public-tough-v1 · proxy: none

Scrapling

curl_cffi-class fetching with a scraping-first API.

Scrapling positions itself as a batteries-included scraping library: fetchers with impersonation, adaptive element selection, and parsing built in. We tested the entry-level path — Fetcher.get — at version 0.4.8 against the 21-site corpus, no proxy.

It passed 5 of 21: Amazon, Target, Expedia, Rightmove, and Wikipedia — exactly the curl_cffi pass set, which is consistent with its fetcher riding impersonated TLS under the hood. Failure modes match too: captcha pages from Zillow and Indeed rather than bare 403s, the Yahoo consent redirect, and hard 403s from the usual wall.

The important caveat: this smoke test exercises only the basic fetcher. Scrapling's differentiating claims — StealthyFetcher, DynamicFetcher for JS rendering, adaptive selectors — are untested by us so far and queued as the next step.

Test conditions

21 real public sites (public-tough-v1), 2026-05-24, no proxy, single residential IP, Linux. Deterministic validators: expected status code plus required and forbidden content markers. Pass rates measure the tool and the network position together. Without a proxy, results reflect how each site's protections treat one plain residential connection as much as the tool itself.

What worked

  • +5/21 with the basic Fetcher — matches the best pure-HTTP client we measured.
  • +Impersonation works out of the box; no manual TLS configuration needed.
  • +Parsing/selection API sits directly on the fetch result — less glue code than client + parser.

What failed

  • Same JS-challenge and hard-403 walls as every non-browser tool without a proxy.
  • Our test covers Fetcher.get only — StealthyFetcher and DynamicFetcher remain unverified claims for now.

When to use it

When you want curl_cffi-level fetching plus parsing in one dependency. Judge its stealth/dynamic fetchers only after they're tested — we haven't yet.

The basic fetcher earns its keep; the headline features are still on our to-verify list.

Run evidence

Every attempt below is backed by saved artifacts: request/response metadata, body content, and (for browsers) screenshots. Raw JSON and artifacts live in the runner data directory.

Run · scrapling-common-sites-v1-20260524

5/21 passedversion 0.4.8proxy: none2026-05-24

adapter: scrapling.Fetcher.get

TargetResultDetailLatency
amazon.comamazon_search_laptoppassstatus 2001.1 s
walmart.comwalmart_search_laptopfailblock marker: “Blocked”2.9 s
ebay.comebay_search_laptopfailexpected 200, got 403237 ms
aliexpress.comaliexpress_search_laptopfailblock marker: “Robot”1.8 s
target.comtarget_search_laptoppassstatus 2001.1 s
booking.combooking_search_parisfailexpected 200, got 202103 ms
airbnb.comairbnb_search_parisfailblock marker: “captcha”1.3 s
tripadvisor.comtripadvisor_restaurants_parisfailexpected 200, got 403160 ms
expedia.comexpedia_hotels_parispassstatus 2002.0 s
zillow.comzillow_homes_for_salefailblock marker: “CAPTCHA”965 ms
realtor.comrealtor_new_yorkfailexpected 200, got 429333 ms
rightmove.co.ukrightmove_londonpassstatus 200907 ms
indeed.comindeed_python_remotefailblock marker: “captcha”1.3 s
yelp.comyelp_sf_restaurantsfailexpected 200, got 403210 ms
trustpilot.comtrustpilot_amazonfailexpected 200, got 40373 ms
newyork.craigslist.orgcraigslist_nyc_bikefailexpected 200, got 403672 ms
finance.yahoo.comyahoo_finance_aaplfailredirected to consent.yahoo.com905 ms
coinmarketcap.comcoinmarketcap_homefailblock marker: “captcha”90 ms
reddit.comreddit_webscrapingfailexpected 200, got 403333 ms
youtube.comyoutube_search_scrapingfailblock marker: “captcha”765 ms
en.wikipedia.orgwikipedia_web_scrapingpassstatus 200236 ms