Scrape used-car listings from Bilasolur.is, Iceland's #1 car marketplace — make, model, year, price in ISK, mileage, fuel type, drivetrain, engine power, engine size, color, registration date, and photos. Export to JSON or CSV; enrich each listing from its detail page.
Graceful proxy fallback: replace hard-fail on RESIDENTIAL unavailability with a two-step
resolution — try RESIDENTIAL first, then fall back to the account's automatic proxy group.
Customers without RESIDENTIAL access were getting an immediate RuntimeError; they now
proceed with auto proxy and get a warning in the run log and status message.
The scraper's existing 403 retry/rotation logic handles any site blocks from non-residential
IPs — no new scraping logic changes required.
Root cause of 28% 30-day success rate: 5/7 customer runs failed at proxy access-check because
those customers' Apify plans did not include RESIDENTIAL proxy group access.
0.2.0 — 2026-06-10
Force-residential proxy guard: _resolve_proxy_config now always injects the RESIDENTIAL group
when apifyProxyGroups is missing, empty, or contains no RESIDENTIAL entry. Customers running
without residential proxy were getting HTTP 403 from Bilasolur.is (datacenter IPs blocked).
Fail-fast on proxy unavailable: raises RuntimeError with a clear message instead of silently
falling back to direct routing.
Updated INPUT_SCHEMA.json, models.py, and README.md to document that RESIDENTIAL is required.
Added test_proxy_guard.py unit tests covering _ensure_residential permutations.
0.1.0 — 2026-06-05
First cloud push (v0.1). Build SUCCEEDED. Cloud QA PASS: 5/5 rows, ISK currency, enrichment (engine_power_hp, engine_size_cc, color, first_registration) all populated. Run ID: nskSNdhjnt6WbFaF6.