Scrape used-car listings from autovit.ro, Romania's #1 car marketplace (Adevinta/OLX group) — price, make, model, year, mileage, fuel, gearbox, power, body type, colour, seller (dealer/private), location, and photos. Export to JSON or CSV; optionally enrich with the full Romanian description.
Re-applied the residential-proxy guard to main — the CEO daily report
flagged the live Actor as failing customer runs with HTTP 403 from
autovit.ro. Investigation found main had never actually merged the
0.2.0 guard below: the Actor source only ever existed on the
fix/autovit-romania-cars-residential-guard branch, so the live build
on Apify Store was silently serving the pre-guard 0.1 behaviour
(unforced proxy group, no hard-fail on missing RESIDENTIAL).
No code changes beyond restoring the already-QA-passed 0.2.x guard
logic (_resolve_proxy_url / _ensure_residential in src/main.py)
and its input-schema defaults onto the actor tree now committed to
main. Full local suite (ruff, pyright, pytest, prefill verifier)
re-verified green before this commit.
0.2.0 — 2026-06-10
Residential proxy guard: _resolve_proxy_url now always forces
apifyProxyGroups=["RESIDENTIAL"] and raises RuntimeError (instead of
falling back to direct routing) when the proxy configuration is unavailable.
autovit.ro is DataDome-protected — datacenter IPs are hard-blocked.
_ensure_residential helper (pure function) handles the group injection;
apifyProxyCountry is preserved across the rewrite.
New tests/test_proxy_guard.py: 10 unit tests covering forced-group,
country-code preservation, raises-on-None, raises-on-unavailable-proxy.
README Limitations updated: residential is now required, not just recommended.