Leboncoin Voiture Scraper — French Used Cars avatar

Leboncoin Voiture Scraper — French Used Cars

Pricing

from $2.00 / 1,000 car listings

Go to Apify Store
Leboncoin Voiture Scraper — French Used Cars

Leboncoin Voiture Scraper — French Used Cars

Scrape Leboncoin.fr Voitures: brand, model, year, km, fuel, gearbox, price EUR and ad URL. FR RESIDENTIAL proxy recommended — Leboncoin blocks datacenter IPs. Keyword or full search URL; clean car rows for comps and leads.

Pricing

from $2.00 / 1,000 car listings

Rating

0.0

(0)

Developer

Noah Adler

Noah Adler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Leboncoin Voiture / Cars Scraper 🇫🇷

Leboncoin.fr Voitures scraper for French used cars (category=2): brand, model, year, mileage, fuel, gearbox, Crit'Air, seller type, city, and price — one clean Dataset row per listing.

Built for auto dealers, pricing intel, lead gen (FR), and PPE-friendly exports. No browser automation — HTTP + Chrome TLS fingerprint + parse of embedded __NEXT_DATA__ from search HTML.

Leboncoin search pages ship ad payloads inside Next.js __NEXT_DATA__. This Actor GETs /recherche?category=2&…, extracts props.pageProps.searchData.ads (~35 per page), and paginates until maxItems. France residential proxy is recommended (bot protection is strong; default input enables Apify RESIDENTIAL + country FR).

Why this Actor: Cars-only vertical · Rich vehicle fields · No Playwright · FR SEO (voiture / occasion) · Cheaper focus than generalist Leboncoin scrapers · CSV / API / webhooks ready

Store icon: set the Actor icon in Apify Console (PNG not shipped in this repo).


Table of contents

  1. What this Actor does
  2. What you get
  3. Features
  4. Input
  5. Output example
  6. Output fields
  7. Quick start (API)
  8. Use cases
  9. Limitations
  10. FAQ
  11. Keywords

What this Actor does

StepAction
1Accept keyword and/or Voitures searchUrl, plus price / sort / maxItems
2Build https://www.leboncoin.fr/recherche?category=2&text=…&page=n
3GET with curl_cffi (chrome124) + Accept-Language: fr-FR
4Parse __NEXT_DATA__ → searchData.ads
5Map brand / model / year / km / fuel / gearbox / Crit'Air / seller / geo
6Paginate until maxItems or empty page

Input: keyword or search URL, max items, optional EUR price band, sort, proxy.
Output: one Dataset row per car ad.


What you get

Vehicle

  • brand, model, year, mileageKm, fuel, gearbox, horsePower, doors, seats, color, criticalAir

Listing / price

  • listingId, title, url, price, priceCents, categoryId, categoryName

Seller / location

  • sellerType (pro / private), sellerName, city, zipcode, department, region, latitude, longitude

Media / dates / raw

  • thumbUrl, imageCount, firstPublicationDate, indexDate, attributes

Meta

  • keyword, scrapedAt, error, errorMessage

Features

CapabilityDetail
Voitures onlyForced category=2 — not a general Leboncoin dump
No browsercurl_cffi impersonate chrome124 (+ optional browserforge headers)
Live __NEXT_DATA__Same payload the public search UI embeds
Keyword or URLFree text (peugeot, golf) or full searchUrl override
Price bandminPrice / maxPrice → price=min-max
Sortrelevance (default), time, price
Proxy-awareDefault Apify RESIDENTIAL + FR (Leboncoin bot protection)

Input

FieldRequiredDescription
keywordCond.Search text (e.g. peugeot, clio). Required if searchUrl is empty
searchUrlCond.Full Leboncoin search URL; must be Voitures (category=2)
maxItemsNoCap (default 50, max 300)
minPrice / maxPriceNoEUR filters
sortNorelevance | time | price
proxyConfigurationNoDefault on: RESIDENTIAL, country FR

Example

{
"keyword": "peugeot",
"maxItems": 50,
"minPrice": 5000,
"maxPrice": 20000,
"sort": "time",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "FR"
}
}

Example with search URL

{
"searchUrl": "https://www.leboncoin.fr/recherche?category=2&text=golf&price=3000-15000",
"maxItems": 30
}

Output example

{
"listingId": "3202619127",
"title": "Peugeot 2008 PureTech 100 S&S BVM6 - Style",
"url": "https://www.leboncoin.fr/ad/voitures/3202619127",
"price": 15790,
"priceCents": 1579000,
"categoryId": 2,
"categoryName": "Voitures",
"brand": "Peugeot",
"model": "2008",
"year": 2023,
"mileageKm": 24452,
"fuel": "Essence",
"gearbox": "Manuelle",
"horsePower": "100",
"doors": "5",
"seats": "5",
"color": "Noir",
"criticalAir": "1",
"sellerType": "pro",
"sellerName": "Example Auto",
"city": "Périgueux",
"zipcode": "24750",
"department": "Dordogne",
"region": "Aquitaine",
"latitude": 45.195,
"longitude": 0.78,
"thumbUrl": "https://img.leboncoin.fr/...",
"imageCount": 20,
"firstPublicationDate": "2026-09-10 13:38:14",
"indexDate": "2026-09-20 19:43:19",
"attributes": {
"brand": "Peugeot",
"model": "2008",
"regdate": "2023",
"mileage": "24452",
"fuel": "1",
"gearbox": "1",
"critair": "1"
},
"keyword": "peugeot",
"scrapedAt": "2026-09-21T00:00:00Z",
"error": false,
"errorMessage": null
}

Output fields

FieldNotes
listingId, title, urlFrom list_id / subject / url
price, priceCentsprice[0] EUR + price_cents
brand, model, year, mileageKmAttributes brand/model/regdate/mileage (flexible aliases)
fuel, gearbox, color, criticalAirPrefer Leboncoin value_label when present
sellerTypeNormalized pro / private from owner.type
attributesFull key→value map from the attributes array
keyword, scrapedAt, error, errorMessageRun metadata

Quick start (API)

from apify_client import ApifyClient
client = ApifyClient("<YOUR_TOKEN>")
run = client.actor("YOUR_USERNAME/leboncoin-voiture").call(
run_input={
"keyword": "peugeot",
"maxItems": 20,
"proxyConfiguration": {
"useApifyProxy": True,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "FR",
},
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("brand"), item.get("model"), item.get("year"), item.get("price"))

Use cases

  • Suivi des annonces auto / voitures d'occasion sur Leboncoin
  • Benchmark prix par marque / modèle / km / année
  • Lead lists for dealers (pro vs particulier)
  • Market monitoring for FR used-car verticals
  • Niche SEO: leboncoin voiture vs generalist marketplace scrapers

Limitations

  • Voitures only: other Leboncoin categories are out of scope.
  • Search cards: phone / full detail page enrichment is out of v0.1.
  • Blocking: Leboncoin bot protection is aggressive — keep FR RESIDENTIAL on for production runs. Local smoke may work without proxy.
  • Pagination: capped by maxItems (300) and an internal page safety limit.
  • Respect Leboncoin Terms of Service and applicable laws when scraping.

FAQ

Keyword or URL?
Either. searchUrl must target Voitures (category=2). Keyword alone builds the search URL.

Why FR residential proxy by default?
Leboncoin often challenges datacenter IPs. Residential France maximizes success rate.

Does this use Playwright?
No. HTTP only (curl_cffi + optional browserforge).

Fuel / gearbox as codes?
Top-level fields prefer human value_label (e.g. Hybride, Automatique). Raw codes stay in attributes.

Icon missing?
Configure the Actor icon in Apify Console when you publish.


Keywords

leboncoin voiture, leboncoin occasion, leboncoin annonces auto, scraper leboncoin voiture, leboncoin cars scraper, voitures occasion france export, leboncoin catégorie voitures api, scrape leboncoin peugeot golf clio, occasion auto dataset, leboncoin Crit'Air km carburant, PPE leboncoin voiture, france used car lead gen, leboncoin.fr recherche category=2