![Idealista-scraper avatar](https://images.apifyusercontent.com/dEXjK6TCaUu0t1iZiMfx8zUj8oxupz_hILvmWxyEy44/rs:fill:250:250/cb:1/aHR0cHM6Ly9hcGlmeS1pbWFnZS11cGxvYWRzLXByb2QuczMudXMtZWFzdC0xLmFtYXpvbmF3cy5jb20vbVNYajhRRlJVMjNZOXRjVW4tYWN0b3ItaWZNbkwxZ1RuZkpySEVaNTktUTFCM3psY0ZIdi10dC5wbmc.webp)
Idealista-scraper
No credit card required
Idealista Scraper Actor
This is an Apify actor that scrapes property listings from Idealista, one of Spain's largest real estate platforms. The actor uses the official Idealista API to fetch property data in a structured format.
Features
- Fetches property listings using Idealista's official API
- Supports various search parameters (property type, operation type, location, etc.)
- Handles authentication automatically with JWT token management
- Returns structured data in JSON format
- Configurable search parameters
Local Development
- Install the required dependencies:
pip install -r requirements.txt
- Set up your environment with the necessary API credentials
- Run the actor locally using the Apify CLI:
apify run
Usage
get locations
The get_locations function allows you to search for locations in a given country using a prefix. This function searches for various types of locations like town districts, metro stations, addresses, etc. based on the provided prefix.
1{ 2 "function": "get_locations", 3 "country": "es", 4 "prefix": "Calle" 5}
and this will return a list of locations that match the prefix. like this:
1[ 2 { 3 "name": "Zona Calle Valencia - La Ermita, Torrent", 4 "locationId": "0-EU-ES-46-17-014-244-12", 5 "divisible": false, 6 "type": "location", 7 "suggestedLocationId": 32063, 8 "subTypeText": "Distrito", 9 "total": 114 10 } 11]
search properties
Now can use name and locationId to search for properties. We can use the name and locationId from the get_locations function.
1{ 2 "function": "search_properties", 3 "country": "es", 4 "locationName": "Zona Calle Valencia - La Ermita, Torrent", 5 "locationId": "0-EU-ES-46-17-014-244-12", 6 "propertyType": "homes", 7 "operation": "sale", 8 "numPage": "1", 9 "order": "weigh", 10 "locale": "en", 11 "quality": "high", 12 "gallery": "true" 13}
This will return a list of properties that match the locationName and locationId.
License
This project is licensed under the Apache License 2.0.