Imovirtual Scraper - Portugal Real Estate Listings
Pricing
from $8.00 / 1,000 property listing scrapeds
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
Maintained by CommunityActor 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
| Field | Type | Default | Description |
|---|---|---|---|
location | string | lisboa | District, city, parish, or neighborhood. Free text like vila nova de gaia or cascais is resolved automatically. |
transaction | string | comprar | comprar (buy) or arrendar (rent). |
propertyType | string | apartamento | One of apartamento, moradia, quarto, terreno, garagem, imoveis-comerciais, armazens, empreendimento. |
priceMin | integer | — | Minimum price in EUR (monthly rent for arrendar). |
priceMax | integer | — | Maximum price in EUR (monthly rent for arrendar). |
maxResults | integer | 50 | Maximum number of listings to return. |
proxyConfiguration | object | PT residential | Apify proxy settings. Portuguese residential proxies recommended. |
Example input
{"location": "porto","transaction": "comprar","propertyType": "apartamento","priceMax": 300000,"maxResults": 100}
Output fields
| Field | Type | Example |
|---|---|---|
listingId | integer | 19205349 |
listingTitle | string | "Apartamento T1 para venda" |
transactionType | string | "sale" |
propertyType | string | "apartment" |
price | number | 420000 |
currency | string | "EUR" |
pricePerSqm | number | 3595.9 |
areaM2 | number | 76 |
rooms | integer | 2 |
floor | integer | 5 (0 = ground floor) |
street | string | "Praça São Francisco de Assis" |
city | string | "Carnide" |
province | string | "Lisboa" |
locationFull | string | "Telheiras, Carnide, Lisboa, Lisboa" |
agencyName | string | "Remax Ideal Mor" |
isPrivateOwner | boolean | false |
summary | string | Short listing description |
imageUrl | string | Main photo URL |
imageUrls | array | All photo URLs |
datePublished | string | "2026-07-09 23:10:51" |
url | string | Full listing URL |
scrapedAt | string | ISO 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
- Open the actor on Apify and click Try for free (or run it via the Apify API).
- Set
locationto any Portuguese place:lisboa,porto,faro,braga,cascais,vila nova de gaia, or even a parish likealvalade. The actor resolves free text to the right Imovirtual location automatically. - Pick the transaction:
comprarfor sales listings,arrendarfor rentals. - Pick a property type: apartments, houses, rooms, land, garages, commercial spaces, warehouses, or new developments.
- Optionally set
priceMin/priceMaxto narrow the price band. - Set
maxResultsand 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) returnprice: nullon purpose. flooruses numbers:0is the ground floor (rés-do-chão),-1a basement,99an 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
maxResultsto 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.