Casa.It Scraper: Custom Area, Zone π° 2$/1K results
Pricing
Pay per usage
Go to Apify Store

Casa.It Scraper: Custom Area, Zone π° 2$/1K results
π° 2$/1K results π° Scrapes real estate listings from Casa.it using supported search result URLs like custom polygon, cities, zone or micro zones.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Sebastiano Riva
Maintained by Community
Actor stats
0
Bookmarked
2
Total users
2
Monthly active users
5 days ago
Last modified
Categories
Share
Casa.it Listings Scraper
Scrapes real estate listings from Casa.it using supported search result URLs.
Pricing
$1.00 per 1,000 results (billed via Apify pay-per-event at $0.001/item).
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
searchUrl | string | Yes | Paste a Casa.it search URL copied from a results page. Supported URLs include standard search pages with q= and map searches with geopolygon=. |
maxPages | integer | No | Maximum number of result pages to fetch. Leave empty to fetch all pages. |
maxItems | integer | No | Maximum number of listings to return overall. When set, the actor also reduces the page size to avoid over-fetching. |
Supported URL types
- Standard search URL with a
qparameter - Map search URL with a
geopolygonparameter
How to get the search URL
- Go to casa.it and run a search
- Open the result page you want to scrape
- Copy the URL from your browser's address bar
- Paste it as
searchUrl
Supported result URLs usually contain either q= or geopolygon=.
Example input (standard search)
{"searchUrl": "https://www.casa.it/srp?sortType=relevance&q=9f6485c2&tr=vendita&propertyTypeGroup=casa","maxPages": 2,"maxItems": 10}
Example input (map search)
{"searchUrl": "https://www.casa.it/srp/map/?tr=vendita&sortType=relevance&geopolygon=%7B%22polygon%22%3A%5B%5B45.2564%2C11.0634%5D%2C%5B45.2356%2C11.0876%5D%2C%5B45.2148%2C11.1118%5D%2C%5B45.2372%2C11.1353%5D%2C%5B45.2595%2C11.1589%5D%2C%5B45.2711%2C11.1311%5D%2C%5B45.2827%2C11.1032%5D%2C%5B45.2695%2C11.0833%5D%2C%5B45.2564%2C11.0634%5D%5D%7D&propertyTypeGroup=case"}
Output
Each item in the dataset contains normalized listing fields such as:
| Field | Type | Description |
|---|---|---|
id | string | Prefixed listing ID (for example cas_53312103) |
partner_id | integer | Publisher-side listing identifier when available |
typology | string | Property type label |
price_raw | float | Listing price in EUR |
surface_sqm | float | Surface area in mΒ² |
rooms | int | Number of rooms |
bathrooms | int | Number of bathrooms |
floor | string | Floor label or description |
street | string | Street address when available |
city | string | City name |
district | string | District or area name |
province_code | string | Province code |
province_name | string | Province name |
zipcode | string | Postal code |
latitude | float | GPS latitude |
longitude | float | GPS longitude |
agency_name | string | Agency or publisher name |
phone | string | Contact phone number when available |
status | string | Listing status |
energy_class | string | Energy class label |
image_cover | string | Cover image URL |
share_url | string | Direct listing URL |
has_parking | boolean | Whether parking appears available |
created_at | string | ISO 8601 scrape timestamp |
Example output item
{"id": "cas_53312103","partner_id": 34847746,"typology": "Appartamento","price_raw": 285000.0,"surface_sqm": 45.0,"rooms": 2,"bathrooms": 1,"floor": "piano rialzato","street": "Via Giorgio Briano","city": "Milano","district": "Abbiategrasso, Chiesa Rossa, Gratosoglio-Ticinello","province_code": "MI","province_name": "Milano","zipcode": "20141","latitude": 45.438615,"longitude": 9.181935,"agency_name": "L'idea Immobiliare","phone": "0289746648","status": "active","energy_class": "E","image_cover": "https://www.casa.it/listing/0/ae/fb/b9/775926180.jpg","share_url": "https://www.casa.it/immobili/53312103/","has_parking": false,"created_at": "2026-04-08T10:23:45+00:00"}
Notes
- The actor uses the search criteria embedded in the provided URL and starts from page 1 of that search.
maxPagesis useful when you want a partial extract for testing or limited-volume runs.maxItemsis the preferred limit for low-cost test runs because it stops after the requested number of listings.- Some fields may be
nullwhen they are not available in the result feed for a specific listing.