Leboncoin Real Estate Scraper avatar

Leboncoin Real Estate Scraper

Pricing

from $0.79 / 1,000 property listings

Go to Apify Store
Leboncoin Real Estate Scraper

Leboncoin Real Estate Scraper

Scrape French real estate listings from leboncoin.fr: price, surface, rooms, energy rating, location, seller, and photos.

Pricing

from $0.79 / 1,000 property listings

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Leboncoin Real Estate Scraper

Extract structured real estate data from leboncoin.fr, France's largest classifieds site, without writing any code.

Paste any leboncoin.fr search URL and get price, price per m², surface, rooms, bedrooms, energy (DPE) and GES ratings, location, seller type, and photos for every listing — structured and ready for analysis.

Copy to your AI assistant

Use the Apify actor "parsebird/leboncoin-real-estate-scraper" (actor ID: parsebird~leboncoin-real-estate-scraper) via the ApifyClient: client.actor("parsebird/leboncoin-real-estate-scraper").call(run_input={"startUrls": ["https://www.leboncoin.fr/recherche?category=9&locations=Paris_75011__48.85763_2.38005_1753"], "limit": 500}); inputs are startUrls (array of leboncoin.fr search/category URLs, required) and limit (max listings across the run, optional, default all); output is one JSON object per listing with id, url, title, category, pricing (amount_eur, price_per_square_meter, fees), property (surface_m2, rooms, bedrooms, energy, amenities), location (city, zipcode, department, region), seller (type, name), media (image URLs), dates, listing_details, and source_context/source_data for provenance; full API spec at https://apify.com/parsebird/leboncoin-real-estate-scraper/api; get your token at https://console.apify.com/account/integrations.

What does Leboncoin Real Estate Scraper do?

Leboncoin Real Estate Scraper turns any leboncoin.fr property search into a clean, structured dataset. Leboncoin doesn't offer a public API for third parties, and its pages are protected against automated access — this leboncoin scraper handles both problems for you, returning the same data you'd see in the "Ventes immobilières" (real estate sales) category, ready to use.

  • 🏠 Works with any leboncoin.fr search URL — city, radius, price range, surface, rooms, energy rating, property type, or any combination of filters you set up in your browser
  • 💶 Extracts price, price per m², and (when leboncoin provides them) estimated notary fees and total acquisition cost
  • 📐 Extracts surface, land plot surface, rooms, bedrooms, bathrooms, floor number, parking, heating, and amenities
  • 🌍 Extracts rich location data: city, postcode, district, department, region, and coordinates
  • 👤 Distinguishes private sellers from real estate professionals (seller.type)
  • 🖼️ Returns full-size and thumbnail image URLs for every listing
  • 🔁 Paginates automatically up to leboncoin's own result cap for each search URL
  • ☁️ Runs on the Apify platform: schedule recurring runs, trigger via API or webhook, and export straight to your stack

Input parameters

ParameterTypeRequiredDefaultDescription
startUrlsarray of stringsYesleboncoin.fr search or category URLs to scrape, e.g. https://www.leboncoin.fr/recherche?category=9&locations=Paris_75011__48.85763_2.38005_1753
limitintegerNoall available resultsMaximum number of listings to save across the whole run

Advanced users can also override the proxyConfiguration field (defaults to a French residential proxy, required for leboncoin.fr).

Output example

{
"id": "3153918263",
"ids": { "list": "3153918263", "external": "apimo_8078_5325036" },
"url": "https://www.leboncoin.fr/ad/ventes_immobilieres/3153918263",
"title": "Appartement 3 pièces 72 m²",
"category": "Ventes immobilières",
"status": "active",
"listing_type": "offer",
"pricing": {
"amount_eur": 120000,
"price_per_square_meter": 1667.0,
"fees": { "included": null, "paid_by": "Vendeur" },
"estimated_notary_fees_eur": 9600,
"estimated_total_property_price_eur": 129600
},
"property": {
"real_estate_type": "Appartement",
"surface_m2": 72,
"rooms": 3,
"bedrooms": 2,
"bathrooms": 1,
"energy": { "rating": "D", "ges": "D" },
"amenities": ["Cuisine séparée", "Cave", "Interphone", "Balcon"]
},
"location": {
"city": "Fontaine",
"zipcode": "38600",
"department": "Isère",
"region": "Rhône-Alpes",
"lat": 45.19955,
"lng": 5.68872
},
"seller": { "type": "pro", "name": "MIRIBEL IMMOBILIER" },
"media": {
"images": { "count": 7, "urls": ["https://img.leboncoin.fr/api/v1/lbcpb1/images/..."] }
},
"dates": { "first_published_at": "2026-04-27T03:47:32" },
"listing_details": { "category_id": "9", "is_boosted": true, "has_phone": true }
}

Every field the source page provides is included — property, location, and pricing only contain the sub-fields that apply to that listing's category (a plot of land, for instance, has no rooms or bedrooms). The full raw attributes array from leboncoin is also kept under source_data for advanced use cases. Download results as JSON, CSV, Excel, or HTML from the Apify Console, or pull them with the API.

Use cases

  • Market research — track average price per m² across neighborhoods, cities, or departments over time
  • Lead generation — monitor new listings matching your criteria for real estate agencies or investors
  • Portfolio monitoring — re-run a saved search on a schedule to catch new or price-changed listings
  • Data enrichment — feed structured property data into a CRM, spreadsheet, or BI dashboard
  • Academic and journalistic research — analyze French housing market trends at scale

How to scrape leboncoin.fr real estate listings

  1. Go to leboncoin.fr, pick "Ventes immobilières," and apply the location and filters you want (city, price, surface, rooms, energy rating, and so on).
  2. Copy the resulting URL from your browser's address bar.
  3. Paste it into the Start URLs field of this actor (add more URLs to scrape several searches in one run).
  4. Optionally set Max listings to cap how many results are collected.
  5. Click Start and download the results as JSON, CSV, or Excel once the run finishes.

How much does it cost to scrape leboncoin.fr?

This actor uses pay-per-event pricing: you're billed only for listings actually returned, per the pricing table below. A search returning 500 listings costs well under $1. There's no separate compute charge on top — proxy and browser costs are covered by the per-listing price.

Pricing

EventPrice per eventPrice per 1,000
listing-scrapedfrom $0.00079from $0.79

Pricing is tiered by your Apify plan (as low as $0.79 per 1,000 listings on Silver/Gold plans, $0.99 per 1,000 on the Free plan). See the Pricing tab on the Actor page for exact current rates.

Scraping publicly available data is generally legal, but you're responsible for how you use it — comply with leboncoin's terms of service and applicable data protection law (including GDPR) when handling personal data such as seller names. Read more in Apify's guide to the legality of web scraping. This actor only collects data leboncoin already publishes on its public search results pages.

Other real estate scrapers on Apify

FAQ

Do I need to provide my own proxy? No. The actor uses a French residential Apify Proxy by default, which is required to reliably access leboncoin.fr.

Does this work for rentals as well as sales? Yes — pass any leboncoin.fr real estate search URL, including rental ("Locations") searches; the same output structure applies, with listing_details and property reflecting whatever fields that listing includes.

Can I filter by price, surface, rooms, or energy rating? Yes. Apply the filters you want directly on leboncoin.fr, then copy the resulting URL into Start URLs — the actor scrapes exactly what that URL returns.

Can I run this on a schedule? Yes. Use Apify's scheduler to run the actor daily, hourly, or at any interval, and combine it with integrations (Slack, Google Sheets, Make, Zapier, webhooks) to get notified of new listings automatically.

Can I access this via API? Yes. Every Apify actor exposes a REST API — see the API tab for endpoints, or use the official Python or JavaScript clients (examples below).

What if a listing is missing a field? leboncoin only sends the attributes that apply to that specific listing (a "Terrain" plot has no rooms, for example). Fields with no source data are omitted or left null rather than guessed.

I found a bug or a listing that isn't parsed correctly. What do I do? Please open an issue on the Actor's Issues tab with the search URL you used — reports help keep the actor in sync with leboncoin's page changes.

Python example

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("parsebird/leboncoin-real-estate-scraper").call(run_input={
"startUrls": ["https://www.leboncoin.fr/recherche?category=9&locations=Paris_75011__48.85763_2.38005_1753"],
"limit": 500,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], item["pricing"]["amount_eur"])

JavaScript example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('parsebird/leboncoin-real-estate-scraper').call({
startUrls: ['https://www.leboncoin.fr/recherche?category=9&locations=Paris_75011__48.85763_2.38005_1753'],
limit: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.map((item) => [item.title, item.pricing.amount_eur]));