Mobile.bg Bulgaria Car Scraper avatar

Mobile.bg Bulgaria Car Scraper

Pricing

Pay per event

Go to Apify Store
Mobile.bg Bulgaria Car Scraper

Mobile.bg Bulgaria Car Scraper

Scrape used-car listings from Mobile.bg, Bulgaria's #1 car marketplace — make, model, year, price in EUR (with BGN), mileage, fuel type, gearbox, engine power, engine size, body type, color, location, seller, and photos. Export to JSON or CSV; enrich each listing from its detail page.

Pricing

Pay per event

Rating

0.0

(0)

Developer

DevilScrapes

DevilScrapes

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share


🎯 What this scrapes

Mobile.bg is Bulgaria's largest used-car marketplace and ships no public API. This Actor scrapes the public listings — paste a filtered search URL or use the default cars-and-jeeps feed — and returns one clean, typed row per car: make, model, year, price (EUR, with the BGN amount kept too), mileage (km), fuel, gearbox, engine power, engine size, body type, color, and photo URLs. Optional detail-page enrichment fills in the full technical table, location, and seller type. Built on curl-cffi with browser TLS impersonation, correct windows-1251 Cyrillic decoding, and Apify residential proxies.

🔥 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

  • Market pricing — track used-car asking prices by make, model, and year across Bulgaria.
  • Dealer intelligence — monitor inventory and pricing moves from seller_type and location.
  • Cross-border arbitrage — compare Bulgarian prices against other EU markets to spot import deals.
  • Depreciation modelling — build price-vs-mileage and price-vs-age curves per model.
  • Lead generation — surface fresh private-seller listings the moment they post.

⚙️ How to use it

  1. Click Try for free at the top of the page.
  2. Fill in the input form — most fields have sensible defaults.
  3. Click Start. Output streams into the run's dataset.
  4. Export from Storage → Dataset as JSON, CSV, or Excel — or fetch via the API.

📥 Input

FieldTypeRequiredDefaultNotes
searchUrlstringno'—'Full Mobile.bg search/results URL with filters already applied (e.g. https://www.mobile.bg/obiavi/avtomobili-dzhip
maxResultsintegerno50Hard cap on dataset rows.
enrichDetailsbooleannoTrueFetch each listing's detail page for the full technical table, exact engine size, location, and seller type. Doubles the
proxyConfigurationobjectno{'useApifyProxy': True, 'apifyProxyGroups': ['RESIDENTIAL']}Apify Proxy configuration. RESIDENTIAL group required — Mobile.bg 403s datacenter/direct exits. Run fails fast if unavailable.

Example input

{
"maxResults": 5,
"enrichDetails": true,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": [
"RESIDENTIAL"
]
}
}

📤 Output

Every row is one dataset item.

FieldTypeNotes
listing_idstringMobile.bg listing ID.
listing_urlstringAbsolute URL to the listing detail page.
titlestringListing title (make + model).
make['string', 'null']Car make (e.g. Audi).
model['string', 'null']Car model (e.g. A3).
year['integer', 'null']Manufacture year.
price['integer', 'null']Asking price as an integer, in EUR.
currency['string', 'null']ISO-4217 currency code — always EUR.
price_bgn['integer', 'null']Asking price in Bulgarian lev (BGN), if shown.
mileage_km['integer', 'null']Odometer reading in kilometres.
fuel_type['string', 'null']Fuel type (Дизелов / Бензинов / Електрически / ...).
transmission['string', 'null']Gearbox (Ръчна / Автоматична).
engine_power_hp['integer', 'null']Engine power in metric horsepower (к.с.).
engine_size_cc['integer', 'null']Engine displacement in cubic centimetres.
body_type['string', 'null']Body type (Хечбек / Седан / Комби / ...).
color['string', 'null']Exterior color.
first_registration['string', 'null']Production / first-registration date (e.g. 'октомври 2010').
location['string', 'null']Seller location (city). Enrichment-only.
region['string', 'null']Region. Enrichment-only.
seller_type['string', 'null']Seller type — dealer or private. Enrichment-only.
seller_name['string', 'null']Seller display name. Enrichment-only.
photo_urlsarrayList of listing photo URLs.
description['string', 'null']Seller's free-text description.
posted_date['string', 'null']Relative posting marker from the listing card (e.g. 'НОВА ОБЯВА').
scraped_atstringISO-8601 UTC timestamp when this row was recorded.

Example output

{
"listing_id": "11772628462288076",
"listing_url": "https://www.mobile.bg/obiava-11772628462288076-audi-a3-s-line-s3",
"title": "Audi A3 S-line S3",
"make": "Audi",
"model": "A3",
"year": 2010,
"price": 7600,
"currency": "EUR",
"price_bgn": 14864,
"mileage_km": 255000,
"fuel_type": "\u0414\u0438\u0437\u0435\u043b\u043e\u0432",
"transmission": "\u0420\u044a\u0447\u043d\u0430",
"engine_power_hp": 140,
"engine_size_cc": 2000,
"body_type": "\u0425\u0435\u0447\u0431\u0435\u043a",
"color": "\u0411\u044f\u043b",
"first_registration": "\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438 2010",
"location": "\u0433\u0440. \u0412\u0430\u0440\u043d\u0430",
"region": null,
"seller_type": "private",
"seller_name": null,
"photo_urls": [
"//mobistatic1.focus.bg/mobile/photosorg/076/1/11772628462288076_t4.webp"
],
"description": "Audi A3 2.0 TDI ...",
"posted_date": "\u041d\u041e\u0412\u0410 \u041e\u0411\u042f\u0412\u0410",
"scraped_at": "2026-06-02T10:00:00+00:00"
}

💰 Pricing

Pay-Per-Event — you pay only when these events fire:

EventUSDWhat it is
actor-start$0.05One-off warm-up charge per run
result-row$0.002PPE event

Example: 1 000 results at the rates above ≈ $2.05. No subscription, no minimum, no card to start — Apify gives every new account $5 of free credit.

🚧 Limitations

Mobile.bg paginates results and very deep queries can be truncated by the site. Detail enrichment doubles the request count and roughly doubles run time. Fuel-type, gearbox, body-type and color values are surfaced in the site's original Bulgarian (Cyrillic). Seller phone numbers behind the contact widget are not scraped. Location and seller type are only available with detail enrichment enabled.

Residential proxy is required. Mobile.bg returns 403 for datacenter and direct exits. The Actor enforces this — if the Apify Proxy RESIDENTIAL group is unavailable on your plan, the run will fail with a clear error message. Upgrade your Apify plan or contact support to enable residential proxy access.

❓ FAQ

Do I need a search URL?

No. Leave searchUrl empty and the Actor scrapes the default cars-and-jeeps feed. To target a make, model, or price band, apply the filters on mobile.bg and paste the resulting URL — the Actor scrapes exactly that result set.

What currency are prices in?

Euros. Mobile.bg shows the EUR price as primary (Bulgaria is adopting the euro); price is the integer EUR amount and currency is always EUR. The matching Bulgarian-lev amount is also kept in price_bgn.

What does detail enrichment add?

Setting enrichDetails to true fetches each listing's detail page for the full technical table, exact engine displacement, the seller's city, and seller type. Set it to false to halve the request count — you still get make, model, year, price, mileage, fuel, gearbox, power, engine size, body type, color, and photos from the listing card.

Is this an official Mobile.bg API?

No. Mobile.bg offers no public API. This Actor scrapes the public website politely and decodes its windows-1251 Cyrillic encoding correctly.

The labels are in Bulgarian — can I get English?

We map the core spec fields to standard English column names (make, model, year, mileage_km, fuel_type, ...). Bulgarian category values such as Дизелов or Автоматична are preserved as-is so nothing is lost in translation.

💬 Your feedback

Spotted a bug, hit a weird edge case, or need a new field? Open an issue on the Actor's Issues tab on Apify Console — we ship fixes weekly and we read every report.