Imovirtual Scraper - Portugal Real Estate Listings avatar

Imovirtual Scraper - Portugal Real Estate Listings

Pricing

from $8.00 / 1,000 property listing scrapeds

Go to Apify Store
Imovirtual Scraper - Portugal Real Estate Listings

Imovirtual Scraper - Portugal Real Estate Listings

Scrape property listings from Imovirtual.com, Portugal's leading real estate portal. Extract prices, locations, areas, rooms, images, and agency details for apartments, houses, rooms, land, and commercial properties for sale or rent. No login or cookies required.

Pricing

from $8.00 / 1,000 property listing scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

21 hours ago

Last modified

Categories

Share

Imovirtual Scraper — Portugal Real Estate Listings

Scrape property listings from Imovirtual.com, Portugal's leading real estate portal (part of the OLX Group). Search apartments, houses, rooms, land, garages, and commercial properties for sale or rent, and get clean structured JSON with prices, areas, rooms, locations, photos, and agency details.

No login, no cookies, no API keys required.

What does this actor do?

You give it a Portuguese location (any district, city, parish, or neighborhood), a transaction type (buy or rent), and a property type. It searches Imovirtual and returns every matching listing as a flat JSON object, up to the limit you set.

It reads the same data the Imovirtual website itself renders, so you get exactly what a visitor sees: asking price, price per square meter, living area, number of rooms, floor, full location hierarchy, publication date, photos, and whether the seller is an agency or a private owner.

Why use it?

  • Market research — track asking prices per city, parish, or neighborhood over time.
  • Investment analysis — compare price per m² across regions before buying.
  • Lead generation — find new listings from private owners or specific agencies the moment they appear.
  • Portfolio monitoring — agencies can watch competitor listings and pricing in their area.
  • Data science — build datasets of the Portuguese housing market for modeling and dashboards.

Input options

FieldTypeDefaultDescription
locationstringlisboaDistrict, city, parish, or neighborhood. Free text like vila nova de gaia or cascais is resolved automatically.
transactionstringcomprarcomprar (buy) or arrendar (rent).
propertyTypestringapartamentoOne of apartamento, moradia, quarto, terreno, garagem, imoveis-comerciais, armazens, empreendimento.
priceMinintegerMinimum price in EUR (monthly rent for arrendar).
priceMaxintegerMaximum price in EUR (monthly rent for arrendar).
maxResultsinteger50Maximum number of listings to return.
proxyConfigurationobjectPT residentialApify proxy settings. Portuguese residential proxies recommended.

Example input

{
"location": "porto",
"transaction": "comprar",
"propertyType": "apartamento",
"priceMax": 300000,
"maxResults": 100
}

Output fields

FieldTypeExample
listingIdinteger19205349
listingTitlestring"Apartamento T1 para venda"
transactionTypestring"sale"
propertyTypestring"apartment"
pricenumber420000
currencystring"EUR"
pricePerSqmnumber3595.9
areaM2number76
roomsinteger2
floorinteger5 (0 = ground floor)
streetstring"Praça São Francisco de Assis"
citystring"Carnide"
provincestring"Lisboa"
locationFullstring"Telheiras, Carnide, Lisboa, Lisboa"
agencyNamestring"Remax Ideal Mor"
isPrivateOwnerbooleanfalse
summarystringShort listing description
imageUrlstringMain photo URL
imageUrlsarrayAll photo URLs
datePublishedstring"2026-07-09 23:10:51"
urlstringFull listing URL
scrapedAtstringISO timestamp

Example output

{
"listingId": 19205349,
"listingTitle": "Apartamento T1 para venda",
"transactionType": "sale",
"propertyType": "apartment",
"price": 420000,
"currency": "EUR",
"pricePerSqm": 359.59,
"areaM2": 76,
"rooms": 2,
"floor": 5,
"street": "Praça São Francisco de Assis",
"city": "Carnide",
"province": "Lisboa",
"locationFull": "Telheiras, Carnide, Lisboa, Lisboa",
"agencyName": "Remax Ideal Mor",
"isPrivateOwner": false,
"summary": "Apartamento T1 com varanda em Telheiras...",
"imageUrl": "https://ireland.apollo.olxcdn.com/v1/files/...",
"imageUrls": ["https://ireland.apollo.olxcdn.com/v1/files/..."],
"datePublished": "2026-07-09 23:10:51",
"url": "https://www.imovirtual.com/pt/ad/apartamento-t1-para-venda-ID1iAbH",
"scrapedAt": "2026-07-10T09:00:00.000Z"
}

How to scrape Imovirtual data

  1. Open the actor on Apify and click Try for free (or run it via the Apify API).
  2. Set location to any Portuguese place: lisboa, porto, faro, braga, cascais, vila nova de gaia, or even a parish like alvalade. The actor resolves free text to the right Imovirtual location automatically.
  3. Pick the transaction: comprar for sales listings, arrendar for rentals.
  4. Pick a property type: apartments, houses, rooms, land, garages, commercial spaces, warehouses, or new developments.
  5. Optionally set priceMin / priceMax to narrow the price band.
  6. Set maxResults and press Start. Results land in the run's dataset, ready to download as JSON, CSV, or Excel, or to fetch via API.

The actor paginates through search results automatically (72 listings per page) and deduplicates listings by ID, so you get each property once.

Cost estimate

The actor uses plain HTTP requests (no browser), so it is fast and cheap to run. One search page returns up to 72 listings in a single request. Scraping 1,000 listings typically takes well under two minutes and a fraction of a compute unit, plus a small amount of residential proxy traffic.

Limitations and known issues

  • The actor scrapes search result cards. They contain price, area, rooms, floor, location, photos, and agency, but not the full listing description or the advertiser's phone number.
  • Listings with a hidden price (hidePrice) return price: null on purpose.
  • floor uses numbers: 0 is the ground floor (rés-do-chão), -1 a basement, 99 an attic.
  • Imovirtual serves Portuguese property data only. For Polish real estate from the same OLX platform family, see our Otodom scraper.
  • Very broad searches (all of Portugal, no filters) can match tens of thousands of listings — use maxResults to keep runs fast.

FAQ

Do I need an Imovirtual account? No. The actor reads public search results only.

Which locations are supported? Anything Imovirtual knows: districts (Lisboa, Porto, Faro...), councils, parishes, and neighborhoods. Free text is resolved through Imovirtual's own location autocomplete, so accents and spacing don't matter.

Can I get rental prices? Yes. Set transaction to arrendar and price becomes the monthly rent in EUR.

Is this legal? The actor only collects publicly available listing data, the same information any visitor sees in a browser. You are responsible for how you use the data — respect Imovirtual's terms of service and applicable data protection laws.