Leboncoin Listings Scraper

Scrape public Leboncoin listing search results and listing details for marketplace research, real estate, vehicles, resale monitoring, and lead generation.

Data fields

FieldTypeDescription
querystring | nullKeyword search that produced the listing.
sourceUrlstringOriginal search URL or generated query URL.
pageUrlstringSearch result page URL where the listing was found.
listingIdstring | nullLeboncoin listing identifier when available.
listingUrlstringPublic Leboncoin listing URL.
titlestringListing title.
priceTextstring | nullRaw displayed price text.
priceValuenumber | nullParsed numeric price when available.

Input preview

queriesSearch keywords
startUrlsStart URLs
categoryCategory code
locationLocation parameter
maxItemsMaximum listings
maxPagesPerQueryMaximum pages per query

API and agents

This actor can be run through Apify API, datasets, webhooks, schedules, and the official Apify MCP server.

Ready-to-run examples

Open a saved Apify example, adjust the input, and run the actor in your own Apify account.

View all examples

How this actor works

See example inputs, outputs, API usage, and practical limits before running this actor on Apify.

Open Apify page

Scrape public Leboncoin search results and listing detail pages into a structured dataset for price monitoring, real-estate snapshots, vehicle shortlists, resale research, and lead-generation workflows.

Use this Actor when you need repeatable Leboncoin exports in CSV, JSON, Excel, API, or automation tools without building and maintaining a custom scraper.

At a glance

  • Primary job: Collect public Leboncoin listing rows from keyword searches or pasted search URLs.
  • Input: Keywords, public search URLs, optional category/location parameters, item limits, and optional detail enrichment.
  • Output: One dataset row per listing with URL, ID, title, category, seller display fields, location, date, attributes, images, and price fields when public.
  • Best for: Marketplace analysts, real-estate and vehicle monitors, resellers, researchers, and lead-gen teams.

Common workflows

  • Keyword research: Search terms such as velo, iphone, or a product brand and export fresh public listings.
  • Real-estate snapshots: Paste a Leboncoin real-estate search URL and collect listings with nullable location/property attributes.
  • Vehicle shortlists: Search a vehicle category and keep public listing details and category attributes when present.
  • Monitoring: Schedule small recurring runs and compare listing IDs, prices, and locations across datasets.
  • Automation: Send dataset rows to Google Sheets, CRMs, webhooks, MCP-compatible agents, or your own API pipeline.

What data can you extract?

Field Description
query Keyword search that produced the listing.
sourceUrl Original search URL or generated keyword URL.
pageUrl Result page where the listing was found.
listingId Leboncoin listing identifier when available.
listingUrl Public listing URL.
title Listing title.
priceText, priceValue, currency Raw and parsed price fields when publicly visible.
category, subcategory Leboncoin category labels.
sellerName, sellerType Public seller display fields when shown.
locationText, city, department, region Public location labels.
postedAtText, postedAt Raw and parsed publication date signals.
imageUrls Public image URLs found in search/detail payloads.
description Public description when available.
attributes Category-specific fields such as condition, brand, property or vehicle attributes.
detailStatus Detail enrichment status: not_requested, success, blocked, missing, or failed.
missingFields Important optional fields that were not publicly available for the row.

Example input

{
  "queries": ["iphone"],
  "maxItems": 10,
  "maxPagesPerQuery": 1,
  "includeDetails": false,
  "failOnNoResults": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}

Example output

{
  "query": "iphone",
  "sourceUrl": "https://www.leboncoin.fr/recherche?text=iphone",
  "pageUrl": "https://www.leboncoin.fr/recherche?text=iphone",
  "listingId": "3102094611",
  "listingUrl": "https://www.leboncoin.fr/ad/telephones_objets_connectes/3102094611",
  "title": "IPhone 14 Pro Max Garantie 24 Mois",
  "priceText": null,
  "priceValue": null,
  "currency": null,
  "category": "Téléphones & Objets connectés",
  "sellerName": "DISTRIPHONE",
  "locationText": "Lyon 69002",
  "city": "Lyon 69002",
  "department": "Rhône",
  "region": "Rhône-Alpes",
  "postedAtText": "2026-07-03 12:05:44",
  "detailStatus": "not_requested",
  "missingFields": ["priceText"]
}

Tips for best results

  • Start small: Use maxItems: 10 until output quality and spend are clear.
  • Prefer focused URLs: Build the exact search on Leboncoin, then paste the result URL into startUrls.
  • Use residential proxy: Leboncoin can show edge challenges to datacenter traffic.
  • Expect nullable fields: Some listings do not expose price, seller, images, or category-specific attributes in every payload.

API usage

Node.js:

import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor("fetch_cat/leboncoin-listings-scraper").call({
  queries: ["iphone"],
  maxItems: 10,
  proxyConfiguration: { useApifyProxy: true, apifyProxyGroups: ["RESIDENTIAL"] }
});
console.log(run.defaultDatasetId);

Python:

from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("fetch_cat/leboncoin-listings-scraper").call(run_input={
    "queries": ["iphone"],
    "maxItems": 10,
    "proxyConfiguration": {"useApifyProxy": True, "apifyProxyGroups": ["RESIDENTIAL"]},
})
print(run["defaultDatasetId"])

cURL:

curl -X POST "https://api.apify.com/v2/acts/fetch_cat~leboncoin-listings-scraper/runs?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"queries":["iphone"],"maxItems":10,"proxyConfiguration":{"useApifyProxy":true,"apifyProxyGroups":["RESIDENTIAL"]}}'

MCP and AI agents

Use this Actor from MCP-compatible tools through the official Apify MCP Server.

claude mcp add --transport http apify "https://mcp.apify.com?tools=fetch_cat/leboncoin-listings-scraper"
{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=fetch_cat/leboncoin-listings-scraper"
    }
  }
}

Example prompt: "Run Leboncoin Listings Scraper for iphone with 10 listings and summarize categories and locations."

Limits and caveats

  • Public data only: The Actor does not log in, unlock phone numbers, send messages, or scrape private account pages.
  • Anti-bot risk: Leboncoin may challenge some traffic. Residential proxy is recommended; blocked pages are classified instead of being saved as fake rows.
  • Completeness: Pagination and detail enrichment are bounded by your input limits and by what the public pages expose.
  • Freshness: Listings can change or disappear after a run finishes.

Legality and responsible use

Process only data that you are allowed to access. Follow Leboncoin terms, Apify terms, robots and rate-limit expectations, and applicable privacy and data-protection laws. Do not use scraped data for spam, harassment, discriminatory decisions, or private contact bypasses.

Support

Open an issue from the Actor page if a run fails or output looks wrong. Include the run ID or run URL, input JSON, expected output, actual output, and one reproducible public URL.

  • 2026-07-24 - Feature: Launched Leboncoin Listings Scraper on Apify Store.

Common questions

Questions and answers reused from the canonical actor README.

Can I export results?

Yes. Apify datasets support JSON, CSV, Excel, XML, RSS, and API access.

Why are some fields empty?

Some fields are not publicly visible for every listing or category. The Actor preserves the row and records important gaps in missingFields instead of guessing.

Should I enable detail pages?

Use includeDetails when you need extra public description, image, or attribute fields. Keep it disabled for cheaper, faster search-result monitoring.