SeLoger, Leboncoin, Bien'ici, PAP & Logic-Immo Scraper avatar

SeLoger, Leboncoin, Bien'ici, PAP & Logic-Immo Scraper

Pricing

from $1.60 / 1,000 property listings

Go to Apify Store
SeLoger, Leboncoin, Bien'ici, PAP & Logic-Immo Scraper

SeLoger, Leboncoin, Bien'ici, PAP & Logic-Immo Scraper

French property listings from Leboncoin, SeLoger, Bien'ici, PAP and Logic-Immo in one run, one format: price, m², rooms, DPE, photos, agency, compared with real sale prices (DVF). Buy or rent, any city, postcode or département. Only-new mode for alerts.

Pricing

from $1.60 / 1,000 property listings

Rating

0.0

(0)

Developer

Ken Digital

Ken Digital

Maintained by Community

Actor stats

1

Bookmarked

37

Total users

2

Monthly active users

2 days ago

Last modified

Share

French property listings from Leboncoin, SeLoger, Bien'ici, PAP and Logic-Immo in a single run and a single format. Every row has price, €/m², surface, rooms, bedrooms, floor, DPE energy class, photos, publication date and seller type. Each sale listing is also compared with the real prices paid nearby, from the government's DVF register of property sales. Search to buy or to rent, by city, postcode or département. Turn on Only new listings and schedule it for property alerts that never repeat a listing.

New name: this actor is now cycha/france-real-estate-scraper (it was joyouscam35875/france-real-estate-scraper until 21 October 2026). If an API call or integration stopped working, update the name, or use the actor ID u5Ywbqhs8BTWEOZKI, which never changes.

Annonces immobilières Leboncoin, SeLoger, Bien'ici, PAP et Logic-Immo en une seule recherche : prix, €/m², surface, pièces, DPE, photos, agence, comparées aux prix de vente réels (DVF). Achat ou location, par ville, code postal ou département. Mode « nouvelles annonces uniquement » pour des alertes.

  • Five sites, one schema. Same fields whatever the site; source tells you where each listing came from. A flat posted on several sites is returned once.
  • Market check included. For sales, marketPricePerSqm is the median €/m² actually paid for the same type of home in the same postcode over the last two years, and priceVsMarket is this listing's €/m² divided by it (0.85 = 15% below the market). Viagers, bare-ownership sales and auctions list only part of the price: they are marked in saleType and get no priceVsMarket, so they never pose as bargains.
  • Real filters: buy or rent, apartment / house / land / parking, price, surface, rooms.
  • Only new listings remembers what earlier runs delivered, so scheduled runs return and bill only fresh listings.
  • No login, no account, no proxy setup. The actor handles access to every site itself.

Sample output

Five apartments for sale in Nantes from a real run (one per site). vs market is the listing's €/m² divided by the median €/m² actually paid in the same postcode (DVF): 0.85 means 15% below the market. Each row also has photos, floor, bedrooms, agency, coordinates and publication date.

SiteCityPricem²€/m²RoomsDPEMarket €/m²vs market
LeboncoinNantes 44000€322,09076€4,2382—€3,7811.12
SeLogerNantes 44000€286,20070.76€4,0443C€3,7811.07
Bien'iciNantes 44300€87,90019.44€4,5211E€3,1251.45
PAPNantes 44000€730,000140€5,2144C€3,7811.38
Logic-ImmoNantes 44000€257,00080.34€3,1983D€3,7810.85

Quick start

{
"location": "Lyon",
"transactionType": "buy",
"propertyTypes": ["apartment"],
"maxPrice": 350000,
"minSurface": 50,
"maxResults": 200
}

Daily alert: add "onlyNewListings": true, save as a task, schedule it every morning, and connect Slack, email or Google Sheets from the task's Integrations tab.

Input

FieldTypeDefaultDescription
locationstringrequiredCity (Lyon, Saint-Étienne), postcode (75011, 69003) or département (33, Gironde). One per line for several searches.
transactionTypestringbuybuy or rent.
propertyTypesarrayapartment, houseapartment, house, land, parking, other.
minPrice / maxPriceintegerSale price, or monthly rent.
minSurface / maxSurfaceintegerLiving area in m².
minRoomsintegerPièces (T3 = 3).
sourcesarrayall fiveleboncoin, seloger, bienici, pap, logicimmo.
maxResultsinteger100Per location, shared across the selected sites. 0 = everything (up to 5,000).
marketComparisonbooleantrueAdd DVF market prices to sale listings.
onlyNewListingsbooleanfalseReturn only listings not delivered by earlier runs of the same searches (one found by two searches is sent once).

Earlier inputs (propertyType as a single value) still work, and rows keep the earlier location, dvfMedianPrice and opportunityScore fields for existing integrations.

Output

{
"listingId": "seloger:268MUDI8TF75",
"source": "seloger",
"url": "https://www.seloger.com/annonce/achat/auvergne-rhone-alpes/rhone-69/lyon-69000/268MUDI8TF75",
"title": "Superbe 3 pièces",
"transactionType": "buy",
"propertyType": "apartment",
"price": 189000,
"pricePerSqm": 2739.13,
"surface": 69,
"rooms": 3,
"bedrooms": 2,
"floor": "2/5",
"energyClass": "A",
"newBuild": true,
"city": "Lyon 8ème arrondissement",
"postalCode": "69008",
"departmentCode": "69",
"description": "Lyon 8ème : Appartement T3 Neuf – Éclat et Confort à Proximité des Transports...",
"photos": ["https://..."],
"sellerType": "agency",
"agencyName": "Example Immobilier",
"publishedAt": "2026-10-01T09:12:00Z",
"marketPricePerSqm": 4310,
"marketSampleSize": 812,
"marketScope": "postcode",
"priceVsMarket": 0.636,
"searchLocation": "Lyon",
"scrapedAt": "2026-10-07T10:00:00+00:00"
}

Fields a site does not publish are null: Leboncoin and SeLoger give the most detail; PAP cards have no floor or agency, since PAP sellers are private individuals. sellerType is agency or private. Names of private sellers are never exported.

Pricing

Pay per event: one result event per listing row, market comparison included, plus a tiny actor-start fee. With Only new listings on, a run with nothing new costs only the start fee.

Use cases

  • Property alerts for a city and budget, every morning, across five sites at once
  • Deal hunting for investors: sort by priceVsMarket to see listings priced under what homes actually sold for nearby
  • Agencies and mandate hunters: new private-seller listings (sellerType: private) from PAP and Leboncoin
  • Market studies: asking prices vs. sale prices, €/m² by postcode, DPE mix, supply by site

Integrations

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("cycha/france-real-estate-scraper").call(run_input={
"location": "Bordeaux",
"propertyTypes": ["apartment"],
"maxPrice": 300000,
"onlyNewListings": True,
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row["source"], row["price"], row["surface"], row["priceVsMarket"], row["url"])

Works with Make, Zapier, n8n, Google Sheets, schedules and webhooks, and as an MCP tool for AI agents.

FAQ

How is priceVsMarket computed? From DVF, the public register of every property sale in France. The actor reads the two latest full years for the département, keeps sales of exactly one apartment or house, and takes the median €/m² for the listing's postcode (or its commune or département when the postcode has fewer than 5 sales). It is a first filter, not a valuation: condition, floor and view are not in DVF.

Why do I sometimes get fewer listings from one site? Real-estate sites protect their pages against automated traffic. The actor retries with fresh connections, but a site can still refuse a run now and then. When that happens the run still succeeds with the other sites, and the status message names the site that was unavailable. Re-running usually works.

How are duplicates detected? Same postcode, same price and same surface. When a listing is on several sites, the first site to return it wins.

What if my run has a short timeout? The actor stops shortly before it, keeps every listing already saved, and ends successfully with a message saying so.

Is it legal? The actor reads publicly visible listings and does not export private sellers' names or contact details. You are responsible for how you use the data and for complying with each site's terms and the GDPR.

Feedback

Missing a field or a site? Open an issue on the actor's Issues tab. If this scraper saved you time, a short review on the Store page helps other people find it.

ActorWhat it does
Welcome to the Jungle, France Travail, Hellowork & CadremploiFrench job offers from four sites, only-new mode
LinkedIn Jobs ScraperLinkedIn jobs with full descriptions and only-new mode
Google Maps ScraperBusinesses, ratings and contact details from Google Maps