Pisos.com Scraper — Spain Real Estate Data
Pricing
from $2.00 / 1,000 results
Pisos.com Scraper — Spain Real Estate Data
Pisos.com unofficial API: scrape Spain property listings without login and export real estate data to CSV, JSON or Excel.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
1
Bookmarked
26
Total users
6
Monthly active users
11 days ago
Last modified
Categories
Share
Pisos.com Property Scraper — Spain Real Estate Listings, Prices & Leads (No API)

Scrape property listings from Pisos.com, one of Spain's largest real estate portals (owned by Vocento) — apartments, houses, attics, duplexes, studios, lofts, rural estates, commercial premises, offices, warehouses, land, garages and storage rooms, for sale, rent or new construction, anywhere in Spain. Get price in EUR, price/m², price drops, GPS coordinates, full address, energy class, advertiser data & image galleries in clean structured JSON. Fast HTTP scraping, no browser, no API key, no login.
🏆 Why this Pisos.com scraper?
60+ fields per listing · hundreds to thousands of listings per run · direct HTTP + structured parsing (no headless browser) · residential-proxy ready · 20+ feature flags (elevator, parking, pool, sea view…) · export to JSON / CSV / Excel. The unofficial Pisos.com API alternative for Spanish real-estate market research, investment screening and advertiser lead generation.
✨ What this Actor does / Key features
- 🇪🇸 Nationwide targeting — scrape Pisos.com across all of Spain by province (e.g.
madrid) or city (e.g.madrid_capital), or all Spain withespana. - 🏢 13 property types — apartments, houses, attics, duplexes, studios, lofts, rural estates, commercial premises, offices, warehouses, land, garages and storage rooms.
- 🔁 Sale, rent & new build — venta, alquiler or obra nueva via a single
transactionType. - 💰 Full pricing — price in EUR, price-per-m², plus price-drop amount and flag.
- 📐 Property detail — built / usable / terrain area (m²), rooms, bathrooms, floor, building condition, year built, orientation and energy certificate (class, consumption, emissions).
- 📍 Full address & GPS — province, city, district, neighborhood, full address and latitude/longitude for every listing.
- 🏷️ 20+ feature flags — elevator, parking, garage, terrace, balcony, AC, heating, garden, pool, storage, fitted wardrobes, sea view, furnished, luxury, exterior and featured.
- 🧑💼 Advertiser lead data — advertiser ID, name, URL and type (agency / private) for outreach.
- 🖼️ Image galleries — main image plus the full list of image URLs and image count.
- 🔎 Client-side filters — price, area, rooms, advertiser type and keyword.
- ⚡ Direct HTTP extraction — no headless browser; automatic pagination with configurable caps.
🚀 Quick start (3 steps)
- Configure — pick
transactionType(sale / rent / new),propertyType(e.g.apartment) and alocationslug (e.g.madrid_capital). Add price/area/room filters if you want. - Run — click Start. The Actor paginates the search results and streams listings into your dataset.
- Get your data — open the Output tab and export to JSON, CSV, Excel or XML, or pull it via the Apify API.
📥 Input
Set at least transactionType, propertyType, location, maxListings, maxPages and proxyConfiguration. Filters are optional.
Example — apartments for sale in Madrid (with price & room filter)
{"transactionType": "sale","propertyType": "apartment","location": "madrid_capital","sortBy": "newest","minPrice": 200000,"maxPrice": 500000,"minRooms": 2,"maxListings": 200,"maxPages": 20,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "ES"}}
Example — rentals in Barcelona (private advertisers only, lead generation)
{"transactionType": "rent","propertyType": "apartment","location": "barcelona_capital","advertiserType": "private","sortBy": "newest","maxListings": 1000,"maxPages": 40,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"], "apifyProxyCountry": "ES" }}
Example — new-build (Obra Nueva) developments in Valencia province
{"transactionType": "new","propertyType": "apartment","location": "valencia","maxListings": 300,"maxPages": 20,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"], "apifyProxyCountry": "ES" }}
| Field | Type | Description |
|---|---|---|
transactionType | enum | sale (Venta), rent (Alquiler) or new (Obra Nueva). Required. |
propertyType | enum | apartment, house, attic, duplex, studio, loft, ruralEstate, commercial, office, warehouse, land, garage or storage. Required. |
location | string | Pisos.com location slug. Province alone (e.g. madrid) targets the whole province; append _capital for the city (e.g. madrid_capital). Use espana for all Spain. Required. |
sortBy | enum | relevance, newest, priceAsc, priceDesc or areaDesc. |
minPrice / maxPrice | integer | Price range in EUR (applied client-side). |
minArea / maxArea | integer | Surface area range in m² (client-side). |
minRooms / maxRooms | integer | Room-count range, 0–20 (client-side). |
advertiserType | enum | all, agency or private (client-side filter). |
keyword | string | Optional substring filter on title and description. |
maxListings | integer | Hard cap on listings saved (default 200). Required. |
maxPages | integer | Hard cap on search pages crawled (default 20, ~33 listings/page). Required. |
proxyConfiguration | object | Apify Proxy settings — RESIDENTIAL group with country=ES recommended and default. Required. |
Location slugs
| Slug | Coverage | Slug | Coverage |
|---|---|---|---|
espana | All Spain | sevilla_capital | Seville city |
madrid | Madrid province | malaga / malaga_capital | Málaga |
madrid_capital | Madrid city | alicante | Alicante |
barcelona | Barcelona province | zaragoza | Zaragoza |
barcelona_capital | Barcelona city | bilbao | Bilbao |
valencia / valencia_capital | Valencia | mallorca | Mallorca |
Finding a location slug: browse pisos.com, apply a location filter, and copy the slug from the URL. Use lowercase ASCII and replace spaces with underscores. Append
_capitalfor the city itself (e.g.madrid= province,madrid_capital= city).
📤 Output
One row per listing — 60+ fields, exportable to JSON, CSV, Excel or XML. Here is a trimmed sample record:
{"adId": "12345678_67890","detailUrl": "https://www.pisos.com/comprar/piso-madrid_capital_chamberi-12345678_67890/","title": "Piso reformado en Chamberí","transactionType": "sale","propertyType": "apartment","advertType": "AGENCY","price": 425000,"priceCurrency": "EUR","pricePerSqm": 5882,"priceDropValue": 15000,"hasPriceDrop": true,"areaSqm": 72,"usableAreaSqm": 65,"rooms": 2,"roomsLabel": "2 hab.","bathrooms": 1,"floor": "3","buildingCondition": "Buen estado","yearBuilt": 1975,"orientation": "Sur","energyClass": "E","province": "Madrid","city": "Madrid","district": "Chamberí","neighborhood": "Trafalgar","fullAddress": "Calle de Trafalgar, Chamberí, Madrid","latitude": 40.4324,"longitude": -3.7012,"mainImageUrl": "https://static.pisos.com/…/main.jpg","imageUrls": ["https://…/1.jpg", "https://…/2.jpg", "…"],"imageCount": 18,"advertiserId": "ag-40912","advertiserName": "Inmobiliaria Centro Madrid","advertiserType": "agency","hasElevator": true,"hasParking": false,"hasTerrace": true,"hasAirConditioning": true,"isExterior": true,"isFeatured": false,"datePosted": "2026-07-02","labels": ["Rebajado"],"searchLocation": "madrid_capital","scrapedAt": "2026-07-06T10:30:00.000Z"}
💡 Use cases
- Market research — track Spanish property prices, price/m² and price drops across provinces, cities and neighborhoods.
- Investment screening — compare sale vs. rent pricing per area to estimate gross rental yield.
- Portals & aggregators — feed Pisos.com listings into your own search platform or comparison tool.
- Lead generation — use
advertiserType: privatefor direct-owner leads, or cluster agency listings byadvertiserId. - Relocation & buyer's agents — build curated shortlists filtered by price, area, rooms and features.
- Data science teams — build valuation models with structured location, area, energy and feature data.
👥 Who uses it
Real-estate agencies & proptech teams · property investors & flippers · valuation and mortgage analysts · market researchers & data journalists · relocation and buyer's agents · lead-gen agencies building advertiser contact lists.
💰 Pricing
This Actor runs on a simple pay-per-result model — you pay for the listings you extract, with no separate Apify platform fees to calculate. Try it on the free tier first, then scale up. See the Pricing tab on this page for the current rate.
❓ Frequently Asked Questions
Does Pisos.com have a public API? Pisos.com does not provide an open public listings API, so this Actor extracts the structured data directly from its search pages — giving you Spanish real estate data with no API key.
Is this a Pisos.com API alternative? Yes. Pisos.com has no open public listings API, so this Actor works as an unofficial Pisos.com API alternative — it reads the structured data directly from search pages with no API key.
Do I need a Pisos.com account or API key? No. The Actor scrapes publicly visible listings — no login and no API key required, only an Apify account.
Can I scrape Pisos.com without an API key or login? Yes. The Actor extracts publicly visible Spanish property listings with no login and no API key required — just set your location and filters.
Is scraping Pisos.com legal? The Actor collects publicly available listing data. You are responsible for using it in compliance with Pisos.com's terms of service, robots.txt and applicable laws such as GDPR. The Actor uses a polite throttle between pages.
How do filters work?
Price, area, rooms, advertiser type and keyword filters are applied client-side after fetching pages — not via the search URL. With very narrow filters, increase maxPages so the Actor crawls enough pages to find matches.
How much data can I get?
Pisos.com shows ~33 listings per page. Set maxListings and maxPages to control volume — a single run can return hundreds to thousands of listings.
Why are some detail-page fields empty?
Card-level data does not include every detail-page field (full energy certificate, exact agency phone, complete feature list). Follow the detailUrl in a downstream step to enrich those.
Do I need a proxy?
A RESIDENTIAL proxy with country=ES is recommended and set by default. Adjust proxyConfiguration if you use your own proxy provider.
How do I export Pisos.com data to CSV or JSON? Run the Actor, then download the resulting dataset as CSV, JSON or Excel from the Apify Console, or pull it via the Apify API for a clean Spain real estate data export.
How do I scrape apartments for sale in Madrid from Pisos.com?
Set transactionType to sale, propertyType to apartment and location to madrid_capital, and the Actor returns every Madrid apartment listing with price and price-per-m².
How do I scrape rental properties in Barcelona on Pisos.com?
Set transactionType to rent and location to barcelona_capital, and the scraper collects Barcelona rental listings with price, area, rooms and GPS coordinates.
Can I filter Pisos.com listings by price and number of rooms?
Yes. minPrice, maxPrice, minRooms and maxRooms apply client-side after fetching pages, so you can narrow results to your exact budget and layout.
🔗 More real estate scrapers by logiover
Building a cross-country property dataset? Pair Pisos.com with the rest of the European (and beyond) real-estate suite:
| Country | Actor |
|---|---|
| 🇪🇸 Spain | Habitaclia Scraper |
| 🇵🇱 Poland | Otodom.pl Scraper |
| 🇨🇿 Czechia | Sreality.cz Scraper |
| 🇬🇷 Greece | Spitogatos Scraper · XE.gr Scraper |
| 🇮🇹 Italy | Casa.it Scraper · Subito Scraper |
| 🇩🇪 Germany | ImmobilienScout24 Scraper · WG-Gesucht Scraper |
| 🇵🇹 Portugal | Imovirtual Scraper |
| 🇫🇷 France | Bien'ici Scraper |
| 🇷🇴 Romania | Storia.ro Scraper |
| 🇳🇱 Netherlands | Funda Scraper |
| 🇮🇪 Ireland | Daft.ie Scraper · MyHome.ie Scraper |
| 🇦🇹 Austria | Willhaben Scraper |
| 🇩🇰 Denmark | Boliga Scraper |
| 🇧🇬 Bulgaria | Imot.bg Scraper |
👉 Browse all logiover scrapers on Apify Store — 180+ actors across real estate, jobs, crypto, social media & B2B data.
⏰ Scheduling & integration
Schedule this Actor on Apify to monitor new listings and price changes across Spanish cities. Export results to JSON, CSV or Excel, sync to Google Sheets, or push to your database, BI tools and webhooks through the Apify API. Connect it to Make, n8n or Zapier to build automated real-estate pipelines.
⭐ Support & feedback
Found a bug or need an extra field? Open an issue on the Issues tab — response is usually fast. If this Actor saves you time, a ★★★★★ review on the Store page genuinely helps and is hugely appreciated. 🙏
⚖️ Legal
This Actor extracts only publicly available data and is intended for legitimate research, analytics and lead-generation use. You are responsible for complying with Pisos.com's terms of service, robots.txt, GDPR and any applicable local laws.
📝 Changelog
2026-07-06
- ✨ README overhaul: richer 60+ field output sample, three ready-to-run example scenarios, full field reference, and an expanded cross-country real-estate suite.
2026-07-01
- Maintenance pass: re-verified end-to-end on live data and confirmed successful runs within the 5-minute quality window on the default input.
- Sharpened Store metadata (SEO title & description) and expanded the FAQ with high-intent, long-tail questions for easier discovery in Google and Apify Store search.
- Added ready-to-run example tasks that cover common real-world use cases.
2026-06-28
- Health check passed — Actor verified working end-to-end on the Apify platform.
- Changelog refreshed for Store quality compliance.
2026-06-20
- Maintenance & reliability pass: re-verified end-to-end against live data and confirmed the Actor completes successfully within the 5-minute quality window on the default input.
- Refreshed the prefilled example input and tuned run defaults for faster, lower-cost runs.
2026-06-15
- Reliability pass: re-verified end-to-end on live data with real-world inputs. Routine maintenance build.
2026-06-07
- Docs: added coverage for using the Actor as a Pisos.com unofficial API alternative, exporting Spain real estate data to CSV/JSON, and scraping Pisos.com without an API key or login.
2026-06-05
- 🛡️ Reliability fix: results are no longer dropped by strict output validation — runs now complete cleanly even at high volume (thousands of results).
- ⚡ Stability & performance hardening; fresh rebuild.
2026-06-04
- Verified live & refreshed build — reliability/maintenance pass.
2026-06-01
- Maintenance & reliability pass: pulled the latest source and rebuilt the Actor on the current base image; build verified.