Blocket Car Scraper (Sweden) icon

Automation

Blocket Car Scraper (Sweden)

Scrape used-car listings from Blocket.se — Sweden's #1 classifieds marketplace. Get make, model, year, price in SEK, mileage in km (converted from the Swedish 'mil'), fuel, gearbox, power (hp), body type, colour, seller type (dealer/private), location and photos. Export to JSON or CSV.

Free Apify credit covers a first run. No credit card to try.

What this Actor scrapes

Blocket.se is Sweden's largest marketplace and lists tens of thousands of used cars — with no public API. This Actor scrapes the public car search: filter by free-text query, make, or paste a full Blocket search URL, and (optionally) enrich each listing from its detail page with mileage, gearbox, engine power, body type, colour, first-registration date, drivetrain, owner count, and whether the seller is a dealer or a private person. Swedish 'mil' odometer readings are converted to kilometres for you. Built on curl-cffi with browser TLS impersonation and Apify residential proxy rotation.

What we handle for you

  • 🛡️ Browser fingerprint rotationcurl-cffi impersonates real Chrome / Firefox / Safari TLS handshakes so the target sees a browser, not Python.
  • 🌐 Residential proxy rotation via Apify Proxy — fresh session and exit IP on every block.
  • 🔁 Retries with exponential backoff on 408 / 429 / 5xx — up to 5 attempts per page, Retry-After honoured.
  • 🧱 Rate-limit-aware pacing — when the target pushes back, we slow down instead of getting banned.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, stable IDs, JSON / CSV / Excel export straight from the Apify Console.
  • 💰 Pay-Per-Event pricing — you only pay for results that hit your dataset. No data, no charge.

Use cases

  • Used-car price analytics — track SEK price vs mileage and model year across the Swedish market.
  • Dealer-inventory monitoring — filter by <code>seller_type = dealer</code> and watch a competitor's stock turnover.
  • EV market tracking — query electric makes/models and chart Sweden's fast-moving used-EV pricing.
  • Lead generation — build a directory of private sellers and dealers by make, region, and price band.
  • Arbitrage + sourcing — spot under-priced listings the moment they appear with a daily diff.

Input

Paste this into the Apify Console, or send it as the run input over the API. Proxy settings are on by default; you rarely need to touch them.

FieldTypeRequiredWhat it does
searchUrl string no A full Blocket.se car search URL you pasted (filters already applied), e.g. https://www.blocket.se/bilar/sok?make=Volvo. When set, this overrides the query/make fields below.
query string no Free-text search (Blocket q param), e.g. volvo v70 kombi. Ignored when searchUrl is set.
make string no Convenience filter for a single car make, e.g. Volvo. Ignored when searchUrl is set.
maxResults integer no Hard cap on dataset rows. Blocket serves ~43 listings per search page; we paginate up to this cap.
enrichDetails boolean no Fetch each car's detail page for mileage (km), gearbox, engine power, engine size, body type, colour, drivetrain, owner count, first-registration date, and seller type. Roughly doubles the request count.
{
  "query": "volvo",
  "maxResults": 5,
  "enrichDetails": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}

Output

One row per result, schema-validated before it is written. Export JSON, CSV, Excel or XML from the run, or read it over the API.

listing_idlisting_urltitlemakemodelyearpricecurrencymileage_kmfuel_typetransmissionengine_power_hpengine_size_ccbody_typecolorfirst_registration

{
  "listing_id": "23740311",
  "listing_url": "https://www.blocket.se/mobility/item/23740311",
  "title": "Volvo V70",
  "make": "Volvo",
  "model": "V70",
  "year": 2000,
  "price": 12000,
  "currency": "SEK",
  "mileage_km": 238000,
  "fuel_type": "Bensin",
  "transmission": "Manuell",
  "engine_power_hp": 140,
  "engine_size_cc": 2400,
  "body_type": "Kombi",
  "color": "Gr\u00e5",
  "first_registration": "1999-11-04",
  "location": "Sverige",
  "drivetrain": "Framhjulsdrift",
  "num_owners": 4,
  "seller_type": "private",
  "photo_urls": [
    "https://images.blocketcdn.se/dynamic/default/item/23740311/0c453750-654c-488c-878e-7d50af9966be"
  ],
  "description": "2.4 Manuell",
  "scraped_at": "2026-06-02T00:00:00+00:00"
}

Pricing

EventPriceWhen
Actor start$0.20Once per run, covers warm-up and proxy session setup.
result-row$0.0020Per result written to the dataset.

You pay only for results that land. Cap any run with maxTotalChargeUsd. See pricing & billing for worked examples.

FAQ

What does mileage_km mean — Blocket shows 'mil'?
Sweden reports odometers in the Swedish mile (mil), where 1 mil = 10 kilometres. We convert it for you: a listing showing <code>23 800 mil</code> becomes <code>238000</code> in <code>mileage_km</code>, so it lines up with the rest of our automotive fleet.
Why are mileage, gearbox and power sometimes null?
Those live on each car's detail page. Keep <code>enrichDetails</code> on (the default) to fill them; turn it off to halve the request count and get just make, model, price, photos and the trim line from the search payload.
What currency are prices in?
Swedish kronor (SEK). The <code>currency</code> field is set to <code>SEK</code> and <code>price</code> is an integer amount.
How do I search a specific make or model?
Set <code>make</code>, type a <code>query</code> like <code>volvo v70</code>, or paste a full Blocket search <code>searchUrl</code> with the filters already applied — the URL wins if all three are set.
Is this a Blocket-sanctioned API?
No. Blocket.se publishes no public car API. This Actor scrapes the public website politely with browser TLS impersonation and proxy rotation — see the ToS notice in the README.

Ready to run it?

Open the listing on Apify, paste the input above, and watch rows land. If it ever breaks, it is our problem before it is yours.

Read more

Articles about this Actor

Related Actors

Teams that run this also run