Idealista Data Parser & API
Leading Southern European Property Portal Data Extraction.
Extract comprehensive property data from Idealista.com, the top property portal in Spain, Portugal, and Italy with 40M+ monthly visits. Access residential and commercial listings, market statistics, and price trends across Southern Europe.
Platform Overview
Market Position
- Number 1 in Spain: Largest property portal in Spain
- Number 1 in Portugal: Leading Portuguese property website
- Number 1 in Italy: Top Italian property platform
- 40M+ Monthly Visits: Combined across all markets
- 1.5M+ Active Listings: Comprehensive Southern European coverage
Market Coverage
Countries and Regions:
Spain:
- All regions and provinces
- Major cities: Madrid, Barcelona, Valencia, Seville
- Coastal areas: Costa del Sol, Costa Brava
- Islands: Balearic and Canary Islands
Portugal:
- Mainland Portugal
- Major cities: Lisbon, Porto, Faro
- Algarve region
- Azores and Madeira
Italy:
- All regions
- Major cities: Rome, Milan, Florence, Venice
- Coastal areas: Amalfi Coast, Sardinia, Sicily
Property Types
Residential:
- Apartments (Pisos)
- Houses (Chalets, Casas)
- Villas
- Townhouses
- Studios
- Penthouses
Commercial:
- Offices
- Retail spaces
- Warehouses
- Land for development
Data Fields Available
PropAPIS extracts 80+ data fields from each Idealista listing:
Property Information
- Address and location
- Price (EUR currency)
- Bedrooms and bathrooms
- Square meters
- Property type
- Floor level
- Elevator availability
- Condition (new, good, needs renovation)
Listing Details
- Description (Spanish, Portuguese, or Italian)
- Property features
- Photos and virtual tours
- Added and updated dates
- Reference number
- Energy certificate
- Days on market
Financial Information
- Community fees
- Property tax (IBI in Spain)
- Price per square meter
- Price history
- Negotiable indicator
Location Data
- Province and municipality
- Neighborhood
- Postal code
- Coordinates
- Distance to amenities
Building Information
- Year built
- Building condition
- Number of floors
- Elevator status
- Parking availability
- Terrace or balcony
API Endpoints
Get Property Details
from propapis import PropAPIS
api = PropAPIS(api_key='your_api_key')
# Get property in Spain
property_data = api.platforms.idealista.get_property(
address='Calle Gran Via, Madrid, Spain',
country='ES'
)
print(f"Address: {property_data.address}")
print(f"Price: €{property_data.price:,}")
print(f"Bedrooms: {property_data.bedrooms}")
print(f"Size: {property_data.size_m2} m²")
print(f"Price per m²: €{property_data.price_per_m2:,.0f}")
Search Properties in Spain
# Search properties for sale in Spain
listings = api.platforms.idealista.search_for_sale(
location='Barcelona',
country='ES',
min_price=200000,
max_price=400000,
min_bedrooms=2,
property_type='Apartment'
)
for listing in listings[:10]:
print(f"{listing.address} - €{listing.price:,}")
print(f" {listing.size_m2} m² | €{listing.price_per_m2:,.0f}/m²")
Search Rentals in Portugal
# Search rental properties in Portugal
rentals = api.platforms.idealista.search_to_rent(
location='Lisbon',
country='PT',
max_price=1500,
min_bedrooms=1
)
for rental in rentals[:5]:
print(f"{rental.address} - €{rental.price:,}/month")
Search Properties in Italy
# Search properties in Italy
listings = api.platforms.idealista.search_for_sale(
location='Rome',
country='IT',
min_price=300000,
property_type='Apartment'
)
for listing in listings[:5]:
print(f"{listing.address} - €{listing.price:,}")
Get Market Statistics
# Get area market data
market = api.platforms.idealista.get_market_stats(
location='Madrid',
country='ES'
)
print(f"Average Price: €{market.avg_price:,}")
print(f"Avg Price per m²: €{market.avg_price_m2:,.0f}")
print(f"Active Listings: {market.active_count:,}")
print(f"Price Change YoY: {market.price_change_yoy:+.1f}%")
Search by Price per Square Meter
# Find properties by price per m²
listings = api.platforms.idealista.search_for_sale(
location='Barcelona',
country='ES',
max_price_per_m2=3000,
min_size_m2=80
)
for listing in listings[:5]:
print(f"{listing.address}")
print(f" €{listing.price:,} | {listing.size_m2} m² | €{listing.price_per_m2:,.0f}/m²")
Use Cases
International Investment
- Cross-border property investment
- Market comparison across countries
- Holiday home purchasing
- Rental investment analysis
Relocation Services
- Expatriate relocation
- Retirement property search
- Second home acquisition
- Golden visa investments (Portugal, Spain)
Market Research
- Southern European market trends
- Price per square meter analysis
- Regional market comparison
- Investment opportunity identification
Real Estate Services
- International property listings
- Market appraisal
- Comparative market analysis
- Lead generation
Regional Considerations
Spain Specifics
- Price in EUR
- IBI property tax
- Community fees (gastos de comunidad)
- Energy certificate required
- Notary fees approximately 10% of purchase price
Portugal Specifics
- Price in EUR
- IMI property tax
- Condominium fees
- Energy certificate (certificado energético)
- IMT transfer tax
Italy Specifics
- Price in EUR
- IMU property tax
- Condominium fees (spese condominiali)
- APE energy certificate
- Notary fees
Quick Start
from propapis import PropAPIS
api = PropAPIS(api_key='your_api_key')
# Get property in Spain
property_data = api.platforms.idealista.get_property(
address='Barcelona, Spain',
country='ES'
)
print(f"Price: €{property_data.price:,}")
print(f"Size: {property_data.size_m2} m²")
print(f"Price per m²: €{property_data.price_per_m2:,.0f}")
For detailed documentation, see our API Reference.