Pisos.com Scraper
Pricing
from $1.20 / 1,000 results
Pricing
from $1.20 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share

Scrape real estate listings from Pisos.com — Spain's second-largest dedicated real estate portal. Filter by transaction, location, property type, and sort order. No API key required.
Why this scraper?
⚡ Fast & cost-efficient extraction
No browser required — JSON-LD + structured data-attribute extraction for reliable, selector-stable data retrieval.
🏠 Market coverage
300,000+ Spanish property listings on the dedicated real estate portal.
💰 Structured price & property data
Price in EUR, area, bedrooms, bathrooms, floor, energy certificate and agent phone per listing.
🔍 Flexible filters
Filter by location slug, property type, sort order and price range.
📍 Location & coverage details
Covers Madrid, Barcelona, Seville and all 52 Spanish provinces.
🔗 Direct URL support
startUrls support: pass any Pisos.com search URL directly.
Input parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
transaction | string | Transaction: sale, rent | sale |
propertyType | string | Type: apartment, house, land, garage, office, attic, duplex, studio | apartment |
location | string | City or province slug, e.g. madrid, barcelona, sevilla, valencia | madrid |
sortBy | string | Sort: relevance, newest, cheapest, mostexp, mostrooms, largest | relevance |
maxItems | integer | Maximum number of listings to scrape | 100 |
startUrls | array | Direct pisos.com search URLs | — |
Output schema
{"id": "64230283973.528715","url": "https://www.pisos.com/comprar/piso-universidad_malasana28004-64230283973_528715/","transaction": "sale","title": "Piso en calle de Jesús del Valle, 25","description": "Se vende este piso exterior, recién reformado...","priceText": "828.000 €","priceAmount": 828000,"priceCurrency": "EUR","phone": "919374312","areaM2": 107,"rooms": 3,"bathrooms": 1,"floor": 2,"images": ["https://fotos.imghs.net/mm-wp/..."],"isNewDevelopment": false,"isProfessional": true,"provinceCode": "P28","municipalityCode": "M28079","agencySlug": "hernan_inmobiliaria","city": "Madrid Capital","region": "Madrid","postalCode": null,"country": "ES","latitude": 40.424862,"longitude": -3.703745,"source": "pisos.com","scrapedAt": "2026-05-06T11:00:00.000Z","contentHash": "07f0a4ebbca8d114"}
Field fill rates (battery-25, Madrid sale listings)
| Field | Fill rate | Notes |
|---|---|---|
id, url, transaction | 100% | Always present |
title, description | 100% | Full title + snippet |
priceText, priceAmount, priceCurrency | 100% | Exact integer from data-ad-price |
phone | 100% | Agent phone from data-number |
areaM2, rooms, bathrooms | 100% | From structured .ad-preview__char |
floor | ~68% | Ground-floor & studios omit floor number |
images | 100% | Carousel photos (logos excluded) |
isNewDevelopment, isProfessional | 100% | Boolean flags from data attributes |
provinceCode, municipalityCode | 100% | e.g. P28, M28079 |
agencySlug | 100% | Agency identifier from URL |
city, region, country | 100% | From JSON-LD |
latitude, longitude | 100% | From JSON-LD GeoCoordinates |
postalCode | 0% | Not exposed on list pages |
descriptionMarkdown | string | Full description converted to Markdown. |
Examples
Properties for sale in Madrid:
{ "transaction": "sale", "location": "madrid", "maxItems": 100 }
Newest rentals in Barcelona:
{ "transaction": "rent", "location": "barcelona", "sortBy": "newest", "maxItems": 200 }
Cheapest houses in Seville:
{ "transaction": "sale", "propertyType": "house", "location": "sevilla", "sortBy": "cheapest", "maxItems": 500 }
Direct URL:
{ "startUrls": [{ "url": "https://www.pisos.com/alquiler/pisos-valencia/" }], "maxItems": 150 }
Daily feed of new listings (run on a schedule):
{"daysOld": 1,"maxItems": 500}
Schedule this input to run once a day in the Apify Scheduler — each run returns only listings added in the last 24 hours, ideal as a daily new-listings alert.
💰 Pricing
$1.50 per 1,000 results — you only pay for successfully retrieved listings. Failed retries are never charged.
| Results | Cost |
|---|---|
| 100 | ~$0.15 |
| 1,000 | ~$1.50 |
| 10,000 | ~$15.00 |
| 100,000 | ~$150.00 |
Flat-rate real estate data providers typically charge $99–$299/month regardless of usage. At 10,000 results/month, this scraper costs significantly less with no subscription.
Use the Max results cap in the input to control your spend exactly.
Performance
| Run size | Estimated time |
|---|---|
| 100 listings | ~2–4 min |
| 500 listings | ~10–15 min |
| 1,000 listings | ~20–30 min |
Known limitations
- postalCode: Not exposed on listing pages — always
null. - floor: Ground-floor and studio listings typically omit floor number.
- agencySlug: Agency slug only (full name not on list pages).
- Energy cert: Not available on list pages.
Technical details
- Source: Pisos.com — Spain's second-largest dedicated real estate portal
- Memory: 256 MB
- Retry: Automatic retry on transient errors with exponential backoff
- Deduplication: Cross-run content hash prevents duplicate listings in repeated runs
- Output fields: 28 fields
Additional services
Need a custom actor, additional filters, scheduled runs, or integration support?.nl](mailto:info@unfencedgroup.nl) — we build on request.
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl