French Property Scraper for SeLoger - Listings & Agency Leads
Pricing
from $0.55 / 1,000 property listings
French Property Scraper for SeLoger - Listings & Agency Leads
Scrape French property listings from SeLoger by town, postcode, departement or region: price, price per m2 vs the area market, rooms, size, energy class, year built, photos and the agency with phone, SIRET and address. Independent tool, not affiliated with SeLoger.
Pricing
from $0.55 / 1,000 property listings
Rating
0.0
(0)
Developer
Scrape Sage
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
8 days ago
Last modified
Categories
Share
Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by AVIV Group France or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "SeLoger" is referenced only to describe the publicly available website this Actor collects data from.
Turn any SeLoger search into a clean spreadsheet of French property listings: sale or rental price, price per m², rooms, bedrooms, living space, floor, energy class (DPE), year built, building condition, photos and floor plans, with SeLoger's own market price per m² for the area next to every apartment and house, and the estate agency behind each listing with its phone number, address, website, SIRET and RCS.
No API key and no login. Type a town (Lyon), a postcode (33000), a departement (Gironde), a region (Bretagne) or france, or paste SeLoger search URLs. Apartments, houses, land, parking, lofts, duplexes, villas, chateaux, whole buildings, mansions, senior residences and businesses, to buy or to rent.
Why this SeLoger scraper?
Every listing arrives complete from the search page itself: there is no slow per-listing detail pass, so a search page of 30 listings costs one fetch, not 31. And the columns that make a French property dataset commercially useful are on every row.
| Data | This Actor |
|---|---|
| Price, price per m², rooms, bedrooms, living space, floor | ✅ |
| Energy class (DPE), year built, building condition | ✅ |
| SeLoger's market price per m² for the area + how far each listing is above or below it | ✅ |
| Price drops (previous price and drop %) | ✅ |
| Photos, photo count, floor plans, 3D-tour flag | ✅ |
| Agency phone number(s), address, website, SIRET, RCS, head office | ✅ |
| Private-owner flag, publisher type (agency, agent, builder, developer, notary) | ✅ |
| Neighbourhood, nearest metro / RER / bus lines (Paris region) | ✅ |
| New-build programme name and link | ✅ |
| Rentals: available-from date, charges included or not | ✅ |
| Search by town name, postcode, departement or region | ✅ |
| SeLoger's own private-owner, room-count and feature pages (new builds, to renovate, furnished, garden...) | ✅ |
| Monitor mode: only new listings | ✅ |
| Choose your own columns (99 available) | ✅ |
Use cases
- Agency lead generation: SIRET and RCS match a listing to a real French company, and the phone number is on the same row. One search becomes a qualified prospect list.
- Deal sourcing:
priceVsMarketPercentshows how far each listing's price per m² sits from SeLoger's market price for the area, andpriceDropPercentflags listings that were just reduced. - Market and price analysis: price per m², living space, rooms, DPE and year built across arrondissements, towns or whole departements.
- Private-seller sourcing: turn on Only private owners and SeLoger's own private-sellers page is searched.
- Renovation and energy-transition targeting: properties to renovate, and the DPE class of every listing, for retrofit, insulation and heat-pump campaigns.
- New-listing alerts: monitor mode plus a schedule returns only what this monitor has not delivered before.
How to use
- Sign up for Apify: the free plan is enough to try this Actor.
- Open the Actor, enter one or more Locations, choose buy or rent and, if you like, the property types, then click Start.
- Watch listings stream into the dataset table.
- Export as JSON, CSV, Excel, XML or RSS, or pull results programmatically through the Apify API.
Where to search
| You type | What is searched |
|---|---|
A town: Lyon, Saint-Étienne, Aix-en-Provence | That town (the most populous one when several share the name) |
A SeLoger town slug: paris-75, lyon-69, vienne-38 | That town. Add the departement code to pick between towns of the same name |
An arrondissement: paris-11eme-75, or its postcode 75011, 69003, 13008 | That arrondissement of Paris, Lyon or Marseille |
A postcode: 33000, 06400 | The town with that postcode |
A departement: Gironde, 33, loire-atlantique-44 | The whole departement. A plain departement name wins over a town of the same name: write vienne-38 for the town of Vienne |
A region: Bretagne, ile-de-france, PACA | The whole region |
france | The whole country |
| A SeLoger search URL (in Search URLs) | Exactly that search, with every filter it carries |
A location SeLoger has no page for is named in the run's status message, and no listing is charged for it.
How deep does a search go?
SeLoger shows 30 listings per search page and does not publish a crawlable "page 2": its next-page buttons call an interface that seloger.com/robots.txt disallows, so this Actor never requests it. Busy searches also carry one promoted listing that matches the search; it is included and flagged isTopPosition: true. SeLoger's "you may also like" suggestions come from other places and are never returned.
Two ways to get real volume, both from SeLoger's own published pages:
- Search narrower places and split by type. One search per arrondissement or neighbourhood, per room count, or
appartementandmaisonseparately, each returns 30 listings of its own segment. - Turn on Go deeper. Every results page links narrower searches inside the same place: arrondissements and neighbourhoods first, then room and bedroom counts, sub-types and features. The Actor follows them, bounded by Max search pages. A listing found twice is returned and charged once.
Filters
| Filter | How it is applied |
|---|---|
| Only private owners | Apartments, houses and parking: SeLoger's own private-sellers page is searched, so the whole page matches. Other types: checked on each listing |
| Min and Max rooms set to the same number (1 to 4) | SeLoger's own page for that room count is searched |
| Only listings with this feature | SeLoger's own page for the feature is searched: new builds, life annuity (viager), to renovate, luxury, rental investment, furnished rentals, balcony or terrace, garden, swimming pool, parking or garage, lift, cellar, top floor, ground floor, by the sea, wheelchair access |
| Min/Max price, other room ranges, Min/Max living space, Only with a 3D tour | Checked on each listing |
Listings left out by a filter are never charged.
Input
| Field | What it does |
|---|---|
| Locations | Towns, postcodes, departements, regions or france (see above). |
| Deal type | For sale (achat) or to rent (locations). |
| Property types | Apartment, house, land, parking, loft, duplex, villa, chateau, whole building, mansion, senior residence, business. Leave empty for all types. |
| Only listings with this feature | One of SeLoger's feature pages (see Filters). |
| Search URLs / from a file | Paste SeLoger search URLs, link a .txt/.csv file, a Google Sheet or a Drive file. |
| Go deeper / Also follow nearby towns | Depth, as described above. Nearby towns are outside the place you asked for, so they are off unless you turn them on. |
| Max listings per search / Max listings in total / Max search pages | Caps. |
| Min/Max price, Min/Max rooms, Min/Max living space, Only private owners, Only with a 3D tour | Filters (see above). |
| Output fields | Tick exactly the columns you want. |
| Monitor mode / Monitor store name | Return only listings this monitor has not delivered before. Ideal on a schedule. |
Output
One row per listing, up to 99 fields. Abridged example:
{"classifiedId": "26BBKJCMBYJV","url": "https://www.bellesdemeures.com/281164893/detail.htm","title": "Appartement à vendre","dealType": "BUY","propertyType": "APARTMENT","priceText": "1 080 000 €","price": 1080000,"pricePerSqm": 15437.39,"previousPrice": 1150000,"priceDropPercent": 6.09,"rooms": 2,"bedrooms": 1,"livingSpaceSqm": 70,"floor": "Étage 8/8","floorNumber": 8,"energyClass": "G","yearBuilt": 1930,"buildingCondition": "REFURBISHED","city": "Paris 18ème arrondissement","zipCode": "75018","district": "Montmartre","transportText": "METRO 12; BUS 31, 40, 60, 80, 95","marketPricePerSqm": 9052,"marketPriceArea": "Paris 18ème arrondissement","priceVsMarketPercent": 70.5,"agencyName": "JUNOT MONTMARTRE","phone": "+33 1 42 55 20 00","phoneInternational": "+33142552000","agencyAddress": "27 avenue Junot, 75018 Paris","agencySiret": "33135796200017","agencyRcs": "331357962","publisherType": "AGENCY","isPrivateOwner": false,"imageCount": 17,"hasFloorPlan": true,"has3DVisit": true,"searchRank": 23,"createdAt": "2026-10-01T12:11:00Z"}
Four dataset views ship with it: Listings overview, Agency & contact leads, Location & transport and Price vs area market. In Price vs area market the Market area column (marketPriceArea) names the place SeLoger's market price is for, which is the place you searched: a paris-75 search compares every listing with Paris as a whole, while a paris-18eme-75 search compares with the 18th arrondissement.
When a field is empty
A null means SeLoger publishes nothing there for that listing. The fields that are often empty, and why:
| Field | Filled for |
|---|---|
rooms, bedrooms, floor, floorNumber | Homes; land and parking have none. Bedrooms only when the advertiser gave them |
plotAreaSqm | Houses and land |
energyClass | Most homes; parking, land and some new builds are exempt from the DPE |
pricePerSqm, priceVsMarketPercent | Sales (SeLoger shows no price per m² on rentals). The market comparison covers apartments and houses |
marketPricePerSqm and the other market... fields | Apartments and houses; a monthly rent per m² on rental searches |
chargesIncluded | Rentals |
availableFrom, availableNow | When the advertiser gave a move-in date (rentals) or a delivery date (new builds) |
previousPrice, priceDropPercent | Listings whose price was reduced |
monthlyAnnuity | Life-annuity (viager) sales: the monthly payment next to the up-front price |
yearBuilt, buildingCondition, propertySubType | When the advertiser gave them |
newBuildProgram, newBuildProgramUrl | New-build programmes |
district | Where SeLoger names a neighbourhood for the listing (most of Paris, Lyon, Marseille and the large towns) |
transportLines, transportText | Paris and its inner suburbs: SeLoger publishes nearest transport only there |
agencyName, phone, website, agencySiret, agencyRcs, feeUrl and the other agency fields | Agency listings, when the agency published them on SeLoger (private sellers have none) |
description | Always: it is the preview SeLoger shows on the results page (descriptionIsPreview tells when it was cut) |
agencyRating, agencyReviewCount, agencyReviewsUrl, imprintUrl | Not shown on SeLoger's result pages today; kept for compatibility and empty |
Good to know
- SeLoger is served over residential connections. The Actor handles that for you and retries a refused page on a fresh connection, so you never configure a proxy.
- Robots.txt is honoured. Only
/recherche/and/immobilier/search pages are requested. SeLoger's search interface,?page=URLs and the other paths its robots.txt disallows are never requested; a pasted URL of that kind is skipped and named in the run's status message. - Chateaux, whole buildings, mansions, villas, senior residences and businesses are sale-only on SeLoger, so those rent combinations are skipped before any request and no listing is charged for them.
- A run never fails on a temporary block. It ends Succeeded with whatever it collected plus a status message explaining what happened, and stops before its own time limit rather than timing out.
Listings name estate agents and, on some listings, private sellers, so the contact columns are personal data. See Data & lawful use below before you use them.
How much does it cost to scrape SeLoger?
This Actor uses Apify's pay-per-event pricing: you pay for the listings it delivers, with no monthly rental. From 3 November 2026 each run also pays Apify's standard Actor start fee, charged once per GB of run memory (a run at the default memory pays it once). The events it can charge are:
- Property listing - One SeLoger property listing with its full record - price, price per m2, rooms, living space, energy class, location and nearest transport, photos and the listing agency. Listings filtered out by your price, room, living-space, owner or 3D-tour filters are never charged.
- Actor start (from 3 November 2026) - charged by Apify once when a run starts, per GB of run memory.
The current price of each event is shown on the Pricing tab of this page. Set a maximum total charge on the run if you want a hard cap on spend, and use the input limits to control how much the Actor fetches.
Automate & schedule
Run this Actor on autopilot and pull results into your own stack:
- Apify API - start runs, fetch datasets and manage schedules over REST.
- apify-client for JavaScript and apify-client for Python - official SDKs.
- Schedules - run it hourly, daily or weekly and keep your dataset current.
- Webhooks - trigger downstream actions (CRM import, Slack alert, email sequence) the moment a run finishes.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });const run = await client.actor('scrapesage/seloger-scraper').call({locations: ['Lyon', '75011'],dealType: 'achat',propertyTypes: ['appartement'],});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${items.length} records`);
Integrate with any app
Connect the dataset to thousands of apps - no code required:
- Make - multi-step automation scenarios.
- Zapier - push new records straight into your CRM or spreadsheet.
- Slack - get notified when a scheduled run finds something new.
- Google Drive / Sheets - auto-export every run to a spreadsheet.
- Airbyte - pipe results into your data warehouse.
- GitHub - trigger runs from commits or releases.
Use with AI assistants (MCP)
The output is clean, LLM-ready JSON. You can call this Actor from Claude, ChatGPT or any agent framework through the Apify MCP server - describe the data you need and let the assistant run this Actor for you.
Agent-ready: autonomous payments (x402 & Skyfire)
This actor is agent-ready: AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:
- x402: an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server, with no account and no API key.
- Skyfire: agent-to-service payments for fully autonomous AI-agent workflows.
Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.
More scrapers from scrapesage
Related Actors in the same category:
- Real Estate Scraper for Redfin - Listings, Sold Comps & Leads
- BizBuySell Scraper - Businesses For Sale & Broker Leads
- VivaReal & ZAP Imóveis Scraper - Brazil Real Estate
- PropertyGuru Scraper - Singapore Property & Agent Leads
- Airbnb Scraper & Market Monitor
Tips
- Split by arrondissement or neighbourhood. In Paris, one search per arrondissement (
75011,75016...) gets you far more of the market than one search forparis-75, or turn on Go deeper. - Find under-priced stock. Sort the export by
priceVsMarketPercent: negative values are below SeLoger's market price per m² for the area. - Build the agency list. Deduplicate on
agencySiretfor one row per real company, then join it to your CRM. - Watch a price band. Set
minPrice/maxPrice, add monitor mode and a Schedule, and you get a feed of new stock in that band only. - Trim your columns. Set
outputFieldsto what you actually use and the CSV lands ready for a spreadsheet instead of 99 columns wide.
FAQ
How is this Actor billed? Pay-per-event: you pay for the listings it delivers, with no monthly rental. From 3 November 2026 each run also pays a small Actor start fee (once per GB of run memory). Every price is shown on the Pricing tab.
Can I schedule it and get results automatically? Yes - create a Schedule and add a webhook or an integration (Google Sheets, Slack, Make, Zapier) to push each run's dataset wherever you need it.
Which export formats are available? Every run's dataset can be downloaded as JSON, CSV, Excel (XLSX), XML, HTML or RSS from the Apify Console or the API.
Can I run it from code or an AI agent? Yes - through the Apify API and client libraries, or from Claude, ChatGPT and other assistants via the Apify MCP server.
Why do I get 30 listings per search? That is what SeLoger shows on one results page. Search narrower places, split by property type or turn on Go deeper for more (see How deep does a search go?).
Is it legal to scrape SeLoger? This Actor collects publicly available data only. You are responsible for using the output in compliance with applicable laws (including data-protection law where personal data is involved) and the source's terms. See Data & lawful use and the Disclaimer below.
Is this an official SeLoger tool? No. It is an independent, third-party Actor with no affiliation to, endorsement by or sponsorship from AVIV Group France. See the Disclaimer below.
Data & lawful use
This Actor reads public listings and the seller information shown on them. Sellers on SeLoger include private individuals, so seller names, usernames and any contact details are personal data. If you are in the EU or UK you are the data controller for what you do with them: have a lawful basis, use the data for market research, price monitoring or lawful sourcing, honour deletion requests, and do not send private sellers unsolicited marketing.
Under Apify's Standard Actor Contract, which governs your use of this Actor, you are the controller of any personal data in your input and output and scrapesage acts only as your processor: that data is processed solely to run your job, written only to your own Apify storage, never used for any other purpose and never shared onward. If you need help with a data-subject request that involves this Actor's output, open an issue on the Issues tab.
Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by AVIV Group France or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.
"SeLoger" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official SeLoger product, is not authorised or certified by AVIV Group France, and does not distribute SeLoger software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.
Need help?
Open an issue on the Actor's Issues tab, or visit the Apify help center. Feature requests are welcome - this Actor is actively maintained.