Immobiliare.it Scraper — Italy Sale, Rent & Auctions
Pricing
from $0.85 / 1,000 listings
Immobiliare.it Scraper — Italy Sale, Rent & Auctions
Immobiliare.it scraper for Italian apartments and houses for sale, rent, and auction. Get price, m2, rooms, GPS, photos, and agency phones. Paste a search or listing URL. API alternative for Python, Node.js, and MCP.
Pricing
from $0.85 / 1,000 listings
Rating
0.0
(0)
Developer
Andrej Kiva
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Disclaimer: This is an unofficial integration developed independently. It is not affiliated with, sponsored by, or endorsed by Immobiliare.it S.p.A. or any of its subsidiaries.
Immobiliare.it and related names are trademarks of their respective owners. Data is read from publicly accessible Immobiliare.it Italy listings. No Immobiliare.it account login is required.
This Actor is provided for informational, research, lead-generation, and market monitoring purposes. You are solely responsible for complying with applicable laws (including GDPR), Immobiliare.it's terms of use, and your organization's policies when processing listing and agent data.
Immobiliare.it scraper for Italy real estate: apartments and houses for sale (vendita), rent (affitto), and auction (aste) with price, €/m², rooms, surface, GPS, photos, private owner vs agency, and public agency phones. Use it as an Immobiliare.it API alternative from Python, Node.js, cURL, or Apify MCP / AI assistants — paste any search or /annunci/{id}/ URL.
Best for: Italy sale and rent comps, PropTech pipelines, FSBO / da-privati leads, auction screening, and dataset export (JSON / CSV) via Apify.
| Actor | Role |
|---|---|
| Immobiliare.it Scraper ◄── you are here | Italy listings (sale, rent, auctions) |
| Idealista Scraper | Spain Idealista listings + agency leads |
| ImmobilienScout24 Scraper | Germany IS24 rent & buy |
| Rightmove Scraper | UK sale & rent |
| Leboncoin Scraper | French classifieds |
When to use this Actor
- Immobiliare.it scraper for search pages — Copy a filtered browser URL (city, price, locali, superficie, con-ascensore) into Start URLs.
- Vendita / affitto / aste datasets — Roma, Milano, Napoli, Torino, or any comune; export JSON/CSV for comps and pipelines.
- Private-seller (da privati) lead lists — Enable Private sellers only to keep
isPrivate: truerows and skip agency inventory. - Agency phones on the search card — Public
agencyPhones/agentPhoneswhen Immobiliare already shows them (no contact-unlock). - Scheduled monitoring — Re-run the same search and emit only new or price-changed listings.
- Coverage past the 2,000-result cap — Immobiliare.it search-list stops at 80 pages × 25 ads. Large cities are split by price bands automatically.
When not to use this Actor
- Casa.it / Idealista.it / Subito.it — This Actor targets immobiliare.it (Italy) only. Use Idealista Scraper for Spain.
- Agency directory crawl (
/agenzie-immobiliari/) — Paste search or listing URLs. Full agency-portfolio crawling is not in this version. - Hidden contact reveal — Public phones already on the card are included. The Actor does not solve Immobiliare contact-unlock walls.
- Authenticated actions — No login, messaging, or saved-search inbox.
Key features
- JSON search API — Reads Immobiliare.it's
api-next/search-list/listingsbackend. No headless browser for search; 128–512 MB RAM. - Search + listing URLs — One Actor handles result lists (
/vendita-case/roma/,/search-list/) and single/annunci/{id}/IDs. - Search builder — Type a city (Roma, Milano, Napoli), sale vs rent vs auction, residential / commercial / land, plus price / rooms / m² filters when you do not have a URL.
- Private vs agency —
isPrivate/advertiserTypeon every row; optional private-only filter. - Monitor mode — Key-value store remembers listing IDs and prices across runs.
- Residential IT proxy — Recommended on Apify Cloud so datacenter IPs are not blocked by DataDome on HTML listing pages.
Input
| Field | What it does |
|---|---|
| Start URLs | Search (/vendita-case/…, /affitto-case/…, /aste-immobiliari/…, /search-list/) or listing (/annunci/{id}/) links. Filters in the URL are kept. |
| City | Builder only. Roma, Milano, Napoli, … |
| Sale / rent / auction / Property category | Builder only. Case, uffici, terreni, nuove. |
| Min/max price, rooms, m² | Builder filters in euros / locali / superficie. |
| Max listings | Cap on dataset rows. |
| Include description and large photos | Default on. Off = title photo only, no description (smaller rows). |
| Private sellers only | Drop agency listings. |
| Monitor mode | Save new and price-changed rows only. |
| Proxy | Apify Residential, country IT. |
{"startUrls": [{ "url": "https://www.immobiliare.it/vendita-case/roma/" }],"maxItems": 50,"includeDetails": true,"onlyPrivate": false,"monitorMode": false,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "IT"}}
Rent example (builder, no URL):
{"city": "Milano","transactionType": "rent","propertyType": "residential","maxPrice": 1500,"minRooms": 2,"maxItems": 100}
Output
One dataset row per listing. Search-card fields (including description and phones) are present when details are on.
| Field | Description |
|---|---|
id | Immobiliare announcement ID |
url | /annunci/{id}/ URL |
title | Headline |
contract | sale, rent, or auction |
typology | Trilocale, Appartamento, Villa, … |
price / priceLabel | Numeric euros + formatted string |
pricePerSqm | €/m² when surface is known |
surfaceValue / roomsValue / bathroomsValue | m², locali, bagni |
floor / elevator / features | Piano, ascensore, balcony/terrace flags |
condition / heating / energyClass | Stato, riscaldamento, APE when present |
isPrivate / advertiserType | Private owner vs agency |
agencyName / agencyUrl / agencyPhones | Public advertiser fields |
agentName / agentPhones | Agent on the card |
address / city / province / macrozone / microzone | Location |
latitude / longitude | GPS |
pictures | Image URLs (upgraded to full size when details are on) |
description | Listing text from the search payload |
visibility | supervetrina / premium / standard |
scrapedAt | ISO timestamp |
{"id": "130988676","url": "https://www.immobiliare.it/annunci/130988676/","title": "Trilocale via Flaminia, 443, Flaminio, Roma","contract": "sale","typology": "Trilocale","price": 590000,"pricePerSqm": 7283.95,"surfaceValue": 81,"roomsValue": 3,"bathroomsValue": 2,"elevator": true,"isPrivate": false,"advertiserType": "agency","agencyName": "Leonardo Leo Immobiliare","agencyPhones": ["06 8590 3213"],"address": "Via Flaminia, 443","city": "Roma","macrozone": "Parioli, Flaminio","latitude": 41.9333,"longitude": 12.467,"pictures": ["https://pwm.im-cdn.it/image/1970422276/xxl.jpg"],"scrapedAt": "2026-08-18T13:00:00+00:00"}
Use cases
- Agents — Watch competing inventory by macrozona; filter to privati for new mandates.
- Investors / PropTech — City-level sale and €/m² snapshots, GPS for maps, auction vs free-sale mix.
- Relocation / HR — Monthly rent + surface + rooms for employee housing shortlists in Milano or Roma.
- Market research — Schedule daily runs in monitor mode and store only new ads and price cuts.
Integration examples
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('crawloop/immobiliare-it-scraper').call({startUrls: [{ url: 'https://www.immobiliare.it/vendita-case/roma/' }],maxItems: 50,includeDetails: true,proxyConfiguration: {useApifyProxy: true,apifyProxyGroups: ['RESIDENTIAL'],apifyProxyCountry: 'IT',},});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]?.id, items[0]?.price, items[0]?.surfaceValue);
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("crawloop/immobiliare-it-scraper").call(run_input={"startUrls": [{"url": "https://www.immobiliare.it/affitto-case/milano/"}],"maxItems": 50,"includeDetails": True,"proxyConfiguration": {"useApifyProxy": True,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "IT",},})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item.get("id"), item.get("price"), item.get("isPrivate"))
cURL
curl -X POST "https://api.apify.com/v2/acts/crawloop~immobiliare-it-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"startUrls": [{"url": "https://www.immobiliare.it/aste-immobiliari/roma/"}],"maxItems": 20,"includeDetails": true,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "IT"}}'
MCP and AI assistants
Use this Actor from AI tools via Apify MCP.
Connect your Apify account, then call this Actor by its Store ID / name (crawloop/immobiliare-it-scraper).
Example prompts:
- "Run Immobiliare.it Scraper for vendita case in Roma, max 30, and return id, price, m², rooms, agency phones as JSON"
- "Scrape Immobiliare.it Milano apartments for rent under €1,500 with full details and summarize private vs agency share"
- "Pull Immobiliare.it Roma auctions, then compare the field set with Idealista Scraper for an Italy vs Spain pipeline"
Suite next step
After Italy Immobiliare.it comps, add Spain coverage with Idealista Scraper, or Germany with ImmobilienScout24 Scraper.
FAQ
Is this an official Immobiliare.it API?
No. It is an unofficial Immobiliare.it scraper / Italy real estate API alternative that reads the public search-list JSON used by the website. It is not affiliated with Immobiliare.it S.p.A. You can call it from Python, Node.js, cURL, or MCP.
How do I scrape Immobiliare.it with Python or Node.js?
Use the Apify client examples above (crawloop/immobiliare-it-scraper). Pass a search URL or the city builder (city, transactionType) and read the dataset as JSON.
Can I scrape vendita case in Roma (or another city)?
Yes. Paste a Roma /vendita-case/roma/ URL, or use the builder with city Roma, sale, and residential. The same pattern works for Milano, Napoli, Torino, and other comuni.
Why residential proxies?
HTML listing pages sit behind DataDome. Search JSON often works with Italy residential. Use RESIDENTIAL + country IT on Cloud.
Can I paste a browser search URL?
Yes. Apply filters on the site, copy the /vendita-case/… or /search-list/ URL, paste into Start URLs. Price, rooms, surface, and amenity path slugs (con-ascensore, da-privati) are translated.
Does it stop at 2,000 results like the website?
One query is capped at 80 pages (25 listings each). If the result set is larger, the Actor splits the price range automatically so Roma / Milano dumps are not truncated.
Are phone numbers included?
Yes, when the search card already lists them (agencyPhones, agentPhones). Private contact-unlock flows are not automated.
Related Actors
| Actor | What it covers |
|---|---|
| Idealista Scraper | Spain sale/rent listings + agency phones |
| ImmobilienScout24 Scraper | Germany IS24 rent & buy |
| Rightmove Scraper | UK Rightmove sale & rent |
| Leboncoin Scraper | France classifieds |
| Yad2 Scraper | Israel classifieds |