Idealista Portugal Scraper avatar

Idealista Portugal Scraper

Pricing

from $2.00 / 1,000 listings

Go to Apify Store
Idealista Portugal Scraper

Idealista Portugal Scraper

Scrape Portugal real estate listings from idealista.pt: price, price per m², typology, area, floor, agency and more. Fails loudly instead of returning an empty dataset.

Pricing

from $2.00 / 1,000 listings

Rating

0.0

(0)

Developer

João Caldeira

João Caldeira

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 hours ago

Last modified

Categories

Share

Get property listings from idealista.pt search results as clean, typed data: price, price per m², typology, area, floor, lift, agency, description and more. For sale and for rent, any location, any filters.

What you can count on

  • Loud failures. If a run can't get your data, it ends as Failed and says why. It never finishes green with an empty dataset.
  • No silent gaps. idealista only serves the first 60 pages (1,800 listings) of a search. If your search is bigger, the run tells you how many listings you got and how to split the search to get the rest.
  • Stable output. Field names don't change between versions. New fields may be added; existing ones are never renamed or removed.

How to use it

  1. Go to idealista.pt and set up your search: location, sale or rent, price range, typology, sort order.
  2. Copy the URL from your browser.
  3. Paste it into Search URLs. You can add several.
  4. Set Max listings and run.

Works with any idealista.pt search results page, for example:

  • https://www.idealista.pt/comprar-casas/lisboa/
  • https://www.idealista.pt/arrendar-casas/porto/
  • https://www.idealista.pt/comprar-casas/lisboa/com-preco-max_400000,t2/?ordem=atualizado-desc
  • https://www.idealista.pt/comprar-terrenos/setubal-distrito/

Searches with more than 1,800 listings

idealista won't show more than 60 pages for a single search. If your search is bigger, the run will finish with a note saying how many listings you got out of the total. Split the search into narrower ones, for example by price range (com-preco-max_300000, then com-preco-min_300000,preco-max_500000), and add each as a separate URL. Listings that appear in more than one search are only returned once.

Output

One record per listing:

{
"id": "35043634",
"url": "https://www.idealista.pt/imovel/35043634/",
"title": "Apartamento T2 na Rua de Campo de Ourique s/n, Amoreiras, Campo de Ourique",
"propertyType": "Apartamento",
"address": "Rua de Campo de Ourique s/n, Amoreiras, Campo de Ourique",
"operation": "sale",
"category": "casas",
"price": 469000,
"priceUnit": "total",
"currency": "EUR",
"pricePerM2": 7817,
"typology": "T2",
"rooms": 2,
"areaM2": 60,
"floor": "1º andar sem elevador",
"hasLift": false,
"otherDetails": [],
"publishedAgo": null,
"highlight": "T2 com Terraço a Estrear em Campo de Ourique",
"description": "Se procura um apartamento com carácter, conforto e uma localização privilegiada…",
"tags": ["Renovado"],
"isNewDevelopment": false,
"ribbon": null,
"isProfessional": true,
"agency": "Century 21 Le Quartier",
"imageCount": 30,
"imageUrl": "https://img4.idealista.pt/blur/591_420_mq/0/id.pro.pt.image.master/f1/d9/d2/320089049.jpg",
"media": ["HOME_STAGING", "MAP", "PLAN", "VIDEO", "VIRTUAL_TOUR_360", "VIRTUAL_TOUR_3D"],
"country": "PT",
"searchUrl": "https://www.idealista.pt/comprar-casas/lisboa/",
"page": 1,
"scrapedAt": "2026-09-14T21:40:00+00:00"
}
FieldNotes
priceNumber in EUR. For rentals it's the monthly rent and priceUnit is "month".
pricePerM2As shown by idealista. Usually present for sales, not for rentals.
typology, rooms"T2" and 2.
areaM2Gross area as shown on the results page.
floor, hasLiftRaw floor text, plus true/false when idealista says whether there's a lift.
publishedAgoFreshness marker idealista shows on recent listings, e.g. "1 hora".
isProfessional, agencyWhether it's an agency listing, and the agency name when shown.

A run summary is saved to the key-value store under OUTPUT: listing count, duplicates skipped, listings per search, and any problems or notes.

Proxies

idealista blocks most datacenter IPs. Use Apify residential proxies with country Portugal (the default).

Data and privacy

This Actor collects what idealista shows publicly on search results pages. It does not collect phone numbers or the names of private sellers. If you process the data, you're responsible for complying with GDPR and idealista's terms.

Coming next

Spain and Italy, and optional detail pages (full description, coordinates, energy certificate). Open an issue if you need one of these, and it moves up the list.