Immobiliare.it [Only $0.50💰]| Search | Detail Pages | Agencies avatar

Immobiliare.it [Only $0.50💰]| Search | Detail Pages | Agencies

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Immobiliare.it [Only $0.50💰]| Search | Detail Pages | Agencies

Immobiliare.it [Only $0.50💰]| Search | Detail Pages | Agencies

Scraper Immobiliare.it da $0.50/1.000 risultati: raccogli annunci e agenzie da URL di ricerca o dettaglio. Prezzi, superfici, foto, classe energetica, coordinate, telefoni ed email disponibili. Monitora nuovi annunci e variazioni di prezzo. Export JSON, CSV ed Excel.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

mostafa ennadi

mostafa ennadi

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

3

Monthly active users

12 hours ago

Last modified

Share

Immobiliare.it Listings & Agencies Scraper

From $0.50 / 1,000 results 💰 · Search results · Property details · Agencies · Market monitoring

Turn Immobiliare.it searches into property and agency datasets you can use for market research, investment screening and CRM workflows. Collect prices, surface area, rooms, descriptions, photos, floor plans, published phone numbers, location and energy information. Enable email enrichment to find published advertiser contacts, or use monitoring to follow new listings and price movements over time.

Overview

The Actor collects public information from Immobiliare.it using the URLs you provide. Start with a filtered property search, inspect individual listings, discover agencies in a city, or collect specific agency profiles. You can combine these URL types in one run and export the results as JSON, CSV or Excel.

Each property retains its available source fields and includes an _enhanced object with 87 convenient fields for analysis. Agencies have a separate record structure with their available contact details, location, opening hours and listing totals.

What can you collect?

  • Property inventory: search results and individual listings with price, contract, property type, size, rooms and available features.
  • Photos and location: image and floor-plan links, coordinates, addresses, cities, macrozones and microzones where published.
  • Agency profiles: names, phone numbers, websites, addresses, opening hours and available property statistics.
  • Contact enrichment: published advertiser emails with a discovery status and source details.
  • Market changes: new listings, price changes and listings that disappear from a monitored search.

Features

  • Search and detail collection in one run. Mix filtered searches, listing URLs, city agency directories and agency profiles.
  • Preserved search filters. Use Immobiliare.it URLs to select geography, contract, property type, budget, surface, rooms and amenities.
  • Automatic pagination. Continue through available search results up to your item and spending limits.
  • Flexible ordering. Select recent listings, price, size, rooms, floor, price per square metre, discounts or advertiser type.
  • Incremental monitoring. Deliver new IDs to the main Dataset and write detected changes to separate datasets.
  • Analysis-friendly fields. Use raw records for detail and _enhanced fields for tables, filtering and comparisons.
  • Optional contact enrichment. Add advertiser email results and payment-tool indicators when requested.
  • Predictable event pricing. Pay $0.50 per 1,000 saved results, with separately priced enrichment and change events. See Pricing for the start fee and examples.

Supported URLs

URL typeExampleReturns
Property searchhttps://www.immobiliare.it/vendita-case/roma/Property records from the filtered search.
Individual listinghttps://www.immobiliare.it/annunci/103009650/Details for that listing, when available.
City agency directoryhttps://www.immobiliare.it/agenzie-immobiliari/pomezia/Agencies in the selected city.
Agency profilehttps://www.immobiliare.it/agenzie-immobiliari/385732/formula-pomezia-roma/Available details for that agency.

Search URLs can include neighbourhood, price and surface filters. For example:

https://www.immobiliare.it/vendita-case/roma/roma-70/?prezzoMassimo=300000&superficieMinima=60

Use the corresponding rental, auction or property-category URL when selecting a different market segment. City agency directories and individual profiles are supported; coverage of other directory formats can vary.

Quick start

  1. Open the Actor's Input tab and paste your Immobiliare.it URLs.
  2. Choose a result limit and any sorting, contact or monitoring options.
  3. Start the run and open its Dataset to inspect the collected records.
  4. Export JSON, CSV or Excel, or retrieve the Dataset through the Apify API.
{
"startUrls": ["https://www.immobiliare.it/vendita-case/roma/"],
"maxItems": 50,
"sortBy": "mostRecent"
}

JSON callers may supply URL strings or objects containing a url field. Repeated URLs and repeated result IDs are deduplicated.

Input configuration

FieldDefaultBehaviour
startUrlsRequiredOne or more Immobiliare.it URLs.
maxItems10000Unique-record scan limit, from 1 to 10,000 across all supplied URLs.
sortByautoPreserve URL ordering, or select date, price, size, rooms, floor, €/m², discount or advertiser type.
outputLanguageautoit, en, fr, de, es, pt, ru, el; translations depend on availability.
maxConcurrency10Collection concurrency, from 1 to 50.
minConcurrency1Compatibility setting; cannot exceed maximum concurrency.
maxRequestRetries5Retry budget, from 0 to 100.
includeAgencyDetailstrueInclude full profiles when collecting agency directories.
monitoringModefalseSave only records not delivered in previous runs of the same search and sort settings.
detectPriceChangesfalseWith monitoring, save price changes in a separate dataset.
detectRemovedListingsfalseWith monitoring and a confirmed full search scan, report records no longer present.
enrichEmailsfalseBest-effort email discovery from published advertiser website homepages, for properties and agencies.
qualifyByPaymentfalseWith email enrichment, identify payment tools on those websites.
proxyEmptyAccepted for compatibility; managed connectivity is used.
maxUnblockerRequests60Accepted for compatibility; no paid unblocking requests are purchased.

Standard date, price, size and room sorting is applied before collecting results. Floor, discount, €/m² and advertiser filtering compare up to 10,000 records per search before selecting the requested results. These comparisons can take longer; removal detection is conservatively skipped for comparison-sorted runs.

Choose the result order

sortBy: "auto" preserves the order in your URL. Available alternatives are:

GoalsortBy values
Site rankingrelevance
Listing datemostRecent, oldest
PricepriceLowToHigh, priceHighToLow
Surface areabiggest, smallest
Room countmostRooms, fewestRooms
Price per square metrepricePerSqmLowToHigh, pricePerSqmHighToLow
FloorhighestFloor, lowestFloor
Price reductiondiscounted
AdvertiserprivateSellers, agenciesOnly

For a recurring check of recent listings, use mostRecent with an appropriate maxItems. An explicit order takes precedence over the advertiser filter in a da-privati or da-agenzie URL; select the advertiser option in sortBy when that is your priority.

Property output

Each Dataset item represents one unique property or agency. Raw published fields are preserved where available; fields that cannot be obtained are not invented.

This shortened example illustrates a property record. Values are fictional; actual fields and availability depend on the listing.

{
"id": 123456789,
"dataType": "property",
"title": "Appartamento con terrazzo",
"price": {
"raw": 245000,
"value": "€ 245.000",
"currency": "EUR",
"isHidden": false
},
"topology": {
"surface": {"size": 95, "unitOfMeasure": "m²"},
"rooms": "3",
"bathrooms": "2",
"floor": "2",
"lift": true,
"terrace": true
},
"geography": {
"municipality": {"name": "Roma"},
"province": {"id": "RM", "name": "Roma"},
"street": "Via Esempio 10",
"geolocation": {"latitude": 41.9, "longitude": 12.5}
},
"contacts": {
"agencyId": 12345,
"phones": [{"type": "tel1", "num": "+390000000000"}]
},
"author": {"id": 12345, "type": "agency", "displayName": "Agenzia Esempio"},
"description": {"reference": "EXAMPLE-01", "content": "<p>Example property description.</p>"},
"_enhanced": {
"listingUrl": "https://www.immobiliare.it/annunci/123456789/",
"priceAmount": 245000,
"priceCurrency": "EUR",
"pricePerSqm": 2578.95,
"surfaceSqm": 95,
"rooms": 3,
"bathrooms": 2,
"floor": "2",
"hasLift": true,
"hasTerrace": true,
"city": "Roma",
"latitude": 41.9,
"longitude": 12.5,
"agencyName": "Agenzia Esempio",
"contactPhones": ["+390000000000"]
}
}

Property records include id, uuid, title, price, contract, topology, geography, analytics, media, contacts, author, description, energyClass, mainData, surfaceConstitution, infoCosts, costs, mortgage and basicInfo, when available. Phone numbers appear in contacts.phones[].num.

Convenient fields in _enhanced

The _enhanced object adds convenient fields including:

  • Price: priceAmount, priceCurrency, priceFormatted, pricePerSqm.
  • Property: surfaceSqm, rooms, bedrooms, bathrooms, floor, propertyType, contractType and feature flags.
  • Location: address, city, province, region, latitude, longitude, macrozone, microzone.
  • Media: photoUrls, photoUrlsHd, photos, floorplanUrls, floorplanUrlsHd, floorplanIds.
  • Contacts: agencyName, agencyId, agencyAddress, contactPhones and listingUrl.
  • Dates, status, energy, costs and mortgage convenience fields.

Unavailable convenience fields use null, [] or false, according to their type. Phone numbers, email addresses, coordinates and all other fields depend on what the advertiser publishes. Translations do not guarantee that every free-text field is translated.

Agency output

Agency records use dataType: "agency" and expose name, address, phones, location, realEstateAds, realEstateSales, openingHours, url, website and basicInfo when available, alongside the original agency fields. Staff and website-only promotional fields may be unavailable. Set includeAgencyDetails: false for lighter directory records.

Illustrative shortened agency record:

{
"id": 12345,
"dataType": "agency",
"name": "Agenzia Esempio",
"address": "Via Esempio 10, Roma",
"url": "https://www.immobiliare.it/agenzie-immobiliari/12345/",
"website": "https://agenzia.example/",
"phones": [
{"type": "tel1", "value": "+390000000000", "formattedValues": "+390000000000", "isVirtual": false}
],
"location": {
"city": {"name": "Roma"},
"latitude": 41.9,
"longitude": 12.5
},
"realEstateAds": 42,
"realEstateSales": 12,
"openingHours": [{"day": 1, "hours": [["09:00", "18:00"]]}],
"agents": []
}

Email enrichment and payment qualification

Set enrichEmails: true to add contactEmail, contactWebsite and emailEnrichment to properties and agencies. contactEmail is the preferred published email, or null; contactWebsite is the advertiser's website homepage, or null. The emailEnrichment object includes status, reason, source, emails, requestedUrl, finalUrl, httpStatus and, when a website was requested, durationMs. Status is found, not_found, not_applicable or unavailable. An inaccessible website does not fail the collection. When enrichment is disabled, no email fields are added.

Illustrative contact fields when an email is found:

{
"contactEmail": "info@agenzia.example",
"contactWebsite": "https://agenzia.example/",
"emailEnrichment": {
"status": "found",
"reason": "email_found_on_homepage",
"source": "homepage",
"emails": ["info@agenzia.example"],
"requestedUrl": "https://agenzia.example/",
"finalUrl": "https://agenzia.example/",
"httpStatus": 200,
"durationMs": 120
}
}

To enable enrichment:

{
"startUrls": ["https://www.immobiliare.it/vendita-case/roma/"],
"maxItems": 5,
"enrichEmails": true
}

Set qualifyByPayment: true together with enrichEmails: true to add takesPayments, paymentProcessors, stripeLiveKey (only a public publishable key) and paymentConfidence. These fields describe payment-tool indicators found on the website; they do not verify that an advertiser accepts a particular transaction. Qualification preserves email results and reports no payment match when a website is unavailable.

Export the Dataset as JSON, CSV or Excel from Apify.

Monitor new listings and market changes

Enable monitoringMode to build a recurring feed, then choose whether to detect price changes and removals:

{
"startUrls": ["https://www.immobiliare.it/vendita-case/roma/"],
"maxItems": 10000,
"monitoringMode": true,
"detectPriceChanges": true,
"detectRemovedListings": true
}

The first run establishes the baseline. Later runs save only new IDs in the default Dataset. Previously seen IDs still count toward maxItems, so a small cap checks only that portion of the search.

OptionDelivered dataBilling
monitoringModeNew property or agency IDs in the main Dataset.Result price for newly saved records.
detectPriceChangesOne event for each detected price movement.$0.0007 per saved change event.
detectRemovedListingsOne event for each listing absent from a confirmed complete search.$0.0007 per saved removal event.

Price changes go to immobiliare-changes-<runId> with propertyId, url, oldPrice, newPrice, priceDelta, pctChange, direction and firstSeenAt. Removed listings go to immobiliare-removed-<runId> with propertyId, url, searchUrl and detectedRemovedAt. These datasets are created only when an event is found. Their IDs are included in the OUTPUT run summary.

Removal means that a listing disappeared from the monitored search; it does not confirm a sale. Removal checks are skipped when the result cap is reached, a collection error occurs, details are incomplete, or a full search cannot be confirmed. Monitoring history is updated only after the result writes succeed. Keep the same URLs and sort settings between runs.

Run summary

The OUTPUT record includes item, error, skipped-listing, price-change and removed-listing counts plus result Dataset IDs. Partial source failures are counted and clearly reported. A total collection failure marks the run as failed.

Pricing

EventPriceCharged for
Result$0.50 / 1,000Each unique property or agency saved in the default Dataset.
Additional Data$0.70 / 1,000Each saved record with a found contact email, or each saved price-change or removed-listing event.
Actor Start$0.005Starting a run; one event at the Actor's 128 MB memory allocation.

The same event prices apply to every subscription tier. Standard run platform usage is included in the event prices. Email misses, duplicate records and previously seen records skipped during monitoring incur no result or email charge. A record with several discovered emails incurs one Additional Data event. Payment qualification has no separate fee.

For example, 1,000 saved results without email enrichment cost $0.505 including one start. With 100 of those results containing a found contact email, the total is $0.575. Your maximum charge per run can limit the number of results; the run summary reports when the spending limit constrained collection.

The Actor uses 128 MB and processes records in bounded batches. No browser or user-provided credentials are required. Consult the Actor's Pricing tab for the active event prices. Storage access after a run can incur standard Apify charges.

Typical workflows

  • Market research: compare asking prices, property size and available features across city districts.
  • Investment screening: collect a budget-filtered search and rank the results in your own analysis.
  • Agency mapping: combine city directories with profile details to build a brokerage database.
  • CRM enrichment: collect published agency phone numbers and optionally discover website emails.
  • Inventory monitoring: schedule repeated searches to follow new listings, price movements and disappearing inventory.

FAQ

Does the Actor return phone numbers?

Yes, when the advertiser publishes them. Properties expose phone records in contacts.phones and convenient numbers in _enhanced.contactPhones. Agencies expose phones. Some published numbers are virtual contact numbers; agency phone records include isVirtual where it can be identified.

Are emails included in every result?

Email enrichment is optional and depends on the advertiser having a website with a published email. Enable enrichEmails and inspect emailEnrichment.status. A miss does not incur an Additional Data charge.

Can one run collect properties and agencies?

Yes. Add search, listing, city-directory and agency-profile URLs to startUrls. Each output record includes dataType so you can separate properties and agencies after export. maxItems applies across the supplied URLs.

Why are some fields empty or absent?

Listings and agency profiles publish different levels of detail. Missing convenience values use null, [] or false; unavailable source fields can be absent. Hidden prices, unpublished phones and agency staff data are not reconstructed. Localized fields also depend on the translations available for the source record.

Why did a run return fewer records than requested?

A search can contain fewer available results, duplicate IDs can be skipped, and monitoring returns only new IDs. The maximum charge per run can also reduce the output. Check the OUTPUT summary for counts, partial errors and spending-limit warnings.

Disclaimer

This is an independent tool and is not affiliated with Immobiliare.it. It collects public information; availability and field coverage vary with the source.

The input form starts with 5 results for a quick preview. Increase Maximum results up to 10,000 for larger searches. API calls that omit maxItems use 10,000.