Fotocasa Spain Real Estate Scraper avatar

Fotocasa Spain Real Estate Scraper

Pricing

from $0.80 / 1,000 property listings

Go to Apify Store
Fotocasa Spain Real Estate Scraper

Fotocasa Spain Real Estate Scraper

Scrape Fotocasa.es property listings from any search URL: price, size, rooms, energy certificate, coordinates, agency phone and every photo. Export to CSV, JSON, Excel or XML.

Pricing

from $0.80 / 1,000 property listings

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

ParseForge Banner

๐Ÿ  Fotocasa Spain Real Estate Scraper

๐Ÿš€ Export Fotocasa property listings in seconds. Paste any fotocasa.es search URL and get every listing as a flat row with 70 fields: price, euros per square metre, rooms, surface, floor, energy certificate, coordinates, agency name and phone, and every photo.

Fotocasa is one of Spain's two largest property portals, with tens of thousands of active sale and rental listings in every province. This Actor reads the same server-rendered data the Fotocasa website uses to draw its search results and listing pages, so you get the portal's own structured record for each property, not a guess parsed from the layout. No login, no API key, no browser.

A single Madrid capital search held 11,495 sale listings on the day this README was written. The Actor walks every results page (30 listings each), opens each listing for the full record, and stops exactly at your maximum. It accepts Spanish, Catalan, English and German Fotocasa URLs, sale and rental searches, room shares, and single listing URLs.

๐ŸŽฏ Target Audience๐Ÿ’ก Primary Use Cases
Real estate investors and buy-to-let fundsTrack asking prices and euros per square metre by neighbourhood
Market analysts and proptech teamsBuild supply, price and time-on-market datasets across Spanish cities
Agencies and lead generation teamsCollect agency names, phones and references from every active listing
Data journalists and researchersStudy housing affordability, energy ratings and rental supply

๐Ÿ“‹ What the Fotocasa Spain Real Estate Scraper does

  • ๐Ÿ”— Any search URL. Copy a fotocasa.es results page with your filters already applied (buy or rent, property type, city, district, price, rooms) and the Actor follows every page of it.
  • ๐Ÿ˜ Full listing records. Opens each property page to add the description, energy certificate letters and kWh values, orientation, floor, heating, hot water, conservation state, building age, agency legal name and reference.
  • ๐Ÿ“ Derived pricing. Computes euros per square metre from the listing's own price and surface, ready for comparisons.
  • ๐Ÿ“… Real dates. Converts Fotocasa's relative "published 3 days ago" into an exact ISO timestamp.
  • ๐Ÿ—บ Coordinates and address hierarchy. Latitude, longitude, street, neighbourhood, district, city, county, province, region and zip code on every row.
  • โšก Sort control. Newest, oldest, cheapest, most expensive or largest first, so a small run grabs exactly the listings you want.

๐Ÿ’ก Why it matters: Fotocasa has no public API. Its listing data lives inside the pages, and the Actor extracts it as clean, typed rows you can export to CSV, Excel, JSON or XML, feed to a spreadsheet, or pipe into your own models.

๐ŸŽฌ Full Demo (๐Ÿšง Coming soon)

๐Ÿ“Š Output

Each row is one property listing. The Overview view in the Dataset tab shows the key columns; the full export carries all 70 fields.

FieldDescription
๐Ÿ–ผ imageUrlMain photo
๐Ÿ  titleProperty type, transaction and location, e.g. "Flat for rent in Barri Gรฒtic, Barcelona"
๐Ÿ”— urlCanonical listing URL
๐Ÿ†” idFotocasa listing id
๐Ÿ” transactionTypeSale, Rent, Share, Rent to buy or Transfer
๐Ÿข propertyType, propertySubtypeFlat, House, Penthouse, Studio, Ground floor with garden, ...
๐Ÿ’ถ price, priceText, currencyNumeric price in EUR and the display string (per month for rentals)
๐Ÿ“ pricePerSqmPrice divided by surface, rounded
๐Ÿ“‰ priceDropAmount the price was reduced, 0 when unchanged
๐Ÿ› rooms, bathrooms, surfaceRooms, bathrooms and built surface in mยฒ
๐Ÿชœ floor, orientationFloor (e.g. "5th floor", "Ground floor") and compass orientation
๐Ÿ— antiquity, conservationState, constructionTypeBuilding age band, condition and second hand vs new build
๐Ÿ”ฅ heating, hotWaterEnergy source for heating and hot water
โœ… hasElevator, isFurnished, hasAirConditioning, hasParking, hasTerrace, hasBalcony, hasPool, hasGarden, hasStorageRoom, petsAllowedYes / No feature flags
๐Ÿ†• isNewConstruction, hasVideo, hasVirtualTour, hasFloorPlansYes / No
โšก energyCertificate, energyRating, energyConsumption, emissionsRating, emissionsValueCertificate status (Valid, Exempt, In process), letters A to G and kWh/mยฒ and kg COโ‚‚/mยฒ per year
๐Ÿ“ descriptionFull listing text as written by the advertiser
๐Ÿ“… publishedAtISO timestamp of publication
๐Ÿ“ address, neighborhood, district, city, county, province, region, zipCode, countryAddress hierarchy
๐Ÿ—บ latitude, longitude, isExactLocationCoordinates and whether Fotocasa marks them as exact
๐Ÿข agencyName, agencyLegalName, agencyType, agencyPhone, agencyUrl, agencyLogoUrl, agencyReferenceAdvertiser details (professional or private)
๐Ÿงฉ featureKeys, extraFeatures, subsidiesFeature lists as Fotocasa tags them, plus public purchase subsidies the listing qualifies for
๐Ÿ“ท imageCount, images, videosEvery photo URL in order, plus YouTube or hosted video links
๐Ÿ•’ scrapedAt, errorScrape timestamp; error is null on data rows

Sample rows from a real run:

{
"imageUrl": "https://static.fotocasa.es/images/ads/338410b1-0a15-497e-b3e5-19aa8f51bf71?rule=original",
"title": "Flat for rent in Barri Gรฒtic, Barcelona",
"url": "https://www.fotocasa.es/es/alquiler/vivienda/barcelona-capital/aire-acondicionado-parking-ascensor-patio-amueblado-television-se-aceptan-mascotas-internet/190691868/d",
"id": 190691868,
"transactionType": "Rent",
"propertyType": "Flat",
"price": 900,
"priceText": "900 โ‚ฌ/month",
"pricePerSqm": 9,
"rooms": 3,
"bathrooms": 2,
"surface": 99,
"floor": "2nd floor",
"orientation": "North",
"hasElevator": "Yes",
"isFurnished": "Yes",
"petsAllowed": "Yes",
"energyCertificate": "Exempt",
"publishedAt": "2026-09-07T23:51:53.603Z",
"neighborhood": "Barri Gรฒtic",
"district": "Ciutat Vella",
"city": "Barcelona",
"zipCode": "08002",
"latitude": 41.3850735,
"longitude": 2.1736581,
"agencyName": "FIN EL",
"agencyLegalName": "FIN EL SL",
"agencyPhone": "+34657212567",
"agencyReference": "APPFKEI-79",
"extraFeatures": ["Aire acondicionado", "Garaje privado", "Ascensor", "Patio", "Amueblado", "TV", "Se aceptan mascotas", "Internet", "Cocina Equipada"],
"imageCount": 6
}
{
"title": "Flat for sale in Ventas, Madrid Capital",
"url": "https://www.fotocasa.es/es/comprar/vivienda/madrid-capital/aire-acondicionado-calefaccion-amueblado/189752697/d",
"transactionType": "Sale",
"priceText": "299.900 โ‚ฌ",
"pricePerSqm": 5453,
"surface": 55,
"floor": "5th floor",
"orientation": "East",
"antiquity": "Between 50 and 70 years",
"conservationState": "Very good",
"heating": "Electricity",
"energyCertificate": "Valid",
"energyRating": "G",
"energyConsumption": 999,
"emissionsRating": "G",
"publishedAt": "2026-05-22T11:22:17.243Z",
"agencyName": "TengoTuCasa",
"agencyReference": "83976",
"subsidies": ["aval-comprar-casa-nacional", "mi-primera-vivienda-madrid"],
"imageCount": 35
}
{
"title": "Ground floor with garden for sale in El Cabanyal - El Canyamelar, Valencia",
"url": "https://www.fotocasa.es/en/buy/home/valencia/el-cabanyal-el-canyamelar/189911411/d",
"transactionType": "Sale",
"propertySubtype": "Ground floor with garden",
"priceText": "149.000 โ‚ฌ",
"pricePerSqm": 4139,
"surface": 36,
"floor": "Ground floor",
"city": "Valencia",
"province": "Valencia",
"agencyName": "Sorolla Servicios Inmobiliarios",
"publishedAt": "2026-06-08T11:29:58.373Z",
"imageCount": 6
}

Values Fotocasa withholds for a listing (no energy certificate letters when the listing is exempt, no orientation or building age on many rentals, no description when the advertiser left it blank) come back as "Not Disclosed" rather than empty cells, so your spreadsheet columns stay typed.

โœจ Why choose this Actor

  • ๐Ÿงพ The portal's own record, not a layout scrape. Reads the structured data embedded in each page, so rows do not break when Fotocasa restyles its cards.
  • ๐Ÿงฎ 70 typed fields per listing, including energy certificate values, agency reference numbers and exact publication timestamps that most alternatives skip.
  • ๐Ÿ” Sale, rent, share, rent-to-buy and transfer searches, plus single listing URLs, in any of Fotocasa's four site languages.
  • ๐ŸŽš Depth switch. Turn listing details off for a fast, cheaper pass over search cards only (price, size, rooms, features, coordinates, agency phone and photos are already on the card).
  • ๐Ÿงน Deduplicated. Promoted listings that Fotocasa repeats across pages are delivered once.
  • ๐Ÿ›ก Proxy-ready. Fotocasa blocks datacenter and most non-European IPs, so the Actor ships with Spanish residential proxies switched on and rotates sessions on any block.

๐Ÿ“ˆ How it compares to alternatives

FeatureParseForgeFotocasa Scraper (igolaizola)Fotocasa.es Search Results Scraper (azzouzana)Fotocasa Scraper (memo23)
InputSearch URL or listing URLLocation name, coordinates and filtersSearch URLSearch URL
Listing detail pagesYes, switchableYesNot listedNot listed
Energy certificate letters and valuesYesNot listedNot listedNot listed
Euros per square metreYes, computedNoNoNo
Exact publication timestampYesYesNot listedNot listed
Agency phone and referenceYesPhone onlyNot listedNot listed
Sort control6 options7 optionsURL onlyURL only
Browser requiredNoNoNoNo

Fotocasa itself sets one limit worth knowing: it serves 30 listings per results page and re-inserts promoted listings on later pages. The Actor dedupes those and stops when the search is exhausted, so very large searches (a whole province) are best split by city or price band to keep runs short.

๐Ÿš€ How to use

  1. Create a free Apify account and get $5 of monthly credit.
  2. Open the Fotocasa Spain Real Estate Scraper in Apify Store.
  3. On fotocasa.es, run the search you want (buy or rent, city, price, rooms) and copy the URL from the address bar.
  4. Paste it into Fotocasa search or listing URLs, set Max Items, and optionally pick a sort order or switch off listing details.
  5. Click Start. When the run finishes, download the dataset from the Dataset tab as CSV, Excel, JSON or XML, or read it through the API.

A first run with the defaults:

{
"startUrls": [{ "url": "https://www.fotocasa.es/es/comprar/viviendas/madrid-capital/todas-las-zonas/l" }],
"maxItems": 10
}

๐Ÿ’ผ Business use cases

๐Ÿ“ˆ Price monitoring for investors

Run the same Madrid Salamanca search every Monday sorted by newest first, keep id, price, pricePerSqm and publishedAt, and chart how asking prices move week over week.

๐Ÿข Agency lead lists

Scrape a province with details switched off, group rows by agencyName and agencyPhone, and you have every active agency in the area with the number of listings each one carries.

๐Ÿงฎ Valuation models

Combine surface, rooms, floor, energyRating, antiquity, latitude and longitude from tens of thousands of listings to train a hedonic price model for a city.

๐Ÿ”” New supply alerts

Schedule a daily run with sortBy: "publicationDate" and maxItems: 50, then push the rows to Slack or email to catch new listings before they are widely seen.

๐Ÿ”Œ Automating Fotocasa Spain Real Estate Scraper

  • Make and Zapier: trigger a run on a schedule and send new rows to Google Sheets, Airtable or a CRM.
  • Slack: post the newest listings from each run into a channel with the Apify Slack integration.
  • Airbyte: sync every dataset into your warehouse for historical analysis.
  • GitHub Actions: call the Apify API from a workflow to refresh a dataset that feeds a dashboard.
  • Google Drive: export each run as an Excel file straight into a shared folder.

๐ŸŒŸ Beyond business use cases

  • Research: compare energy ratings and prices per square metre across Spanish provinces.
  • Personal: watch one neighbourhood for a flat that fits your budget and get an alert the day it appears.
  • Non-profit: measure rental affordability and supply in a city for a housing report.
  • Experimentation: feed listing descriptions and photos to a language or vision model to tag renovation state.

๐Ÿค– Ask an AI assistant about this scraper

Add the Actor to Claude, Cursor or any MCP client and ask for Fotocasa data in plain language:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/fotocasa-spain-scraper"

โ“ Frequently Asked Questions

๐Ÿ”‘ Do I need a Fotocasa account or API key?

No. The Actor reads public listing pages only.

๐Ÿ”— Which URLs work?

Any fotocasa.es results page whose path ends in /l (with or without filters and a page number) and any single listing page whose path ends in /d. Spanish (/es/), Catalan (/ca/), English (/en/) and German (/de/) URLs are all accepted.

๐Ÿ  Does it work for rentals and room shares?

Yes. Paste a rental (/alquiler/) or share (/compartir/) search and the rows carry transactionType "Rent" or "Share" with the monthly price.

๐Ÿงพ What does "Open each listing for full details" add?

The description, energy certificate letters and values, orientation, floor, heating, hot water, conservation state, building age, agency legal name and reference, and any video. It costs one extra request per listing. Switch it off for a faster pass over search cards only.

๐Ÿ”ข How many listings can one URL return?

Everything the search holds. Fotocasa serves 30 listings per page and the Actor walks every page until the search count is reached or your Max Items is hit.

โšก Why is the energy rating "Not Disclosed" on some rows?

Fotocasa marks many listings, most rentals in particular, as exempt or in process. The Actor reports that status in energyCertificate and leaves the letters as "Not Disclosed" rather than inventing a value.

๐Ÿ—บ Are the coordinates exact?

When isExactLocation is "Yes". Otherwise Fotocasa places the pin at the neighbourhood or street level, which the Actor passes through as is.

๐Ÿ›ก Do I need a proxy?

Yes, and it is switched on by default. Fotocasa blocks datacenter IP ranges and most non-European IPs with a 403 page, so the Actor uses Apify residential proxies with Spain as the country. Keep that setting unless you have your own Spanish proxies.

๐Ÿšฆ Why did I get an error row?

A row with an error field means a URL was not a Fotocasa search or listing URL, a listing was removed (404), or the site blocked the request even after retries. Data rows always have error set to null.

๐Ÿ“… Where does publishedAt come from?

From the timestamp Fotocasa embeds in each listing card and detail page, converted to ISO 8601 in UTC.

๐Ÿ“ค What export formats are supported?

CSV, Excel, JSON and XML from the Dataset tab, or any of them through the Apify API.

๐Ÿ”Œ Integrate with any app

Run the Actor from the Apify API, the JavaScript or Python client, the CLI, or through webhooks, and connect it to Make, Zapier, n8n, Google Sheets, Slack, Airbyte or your own code.

๐Ÿ’ก Pro Tip: browse the complete ParseForge collection for more real estate and marketplace scrapers.

๐Ÿ†˜ Need Help? Open our contact form with your run ID, your input and what you expected.

โš ๏ธ Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Fotocasa or Adevinta Spain, S.L.U. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR. Do not use it to collect personal data unlawfully.