Imobiliare.ro Scraper avatar

Imobiliare.ro Scraper

Pricing

from $0.70 / 1,000 listings

Go to Apify Store
Imobiliare.ro Scraper

Imobiliare.ro Scraper

Scrape real estate listings from imobiliare.ro — Romania's largest property portal. Filter by sale/rent, property type and location. EUR prices, descriptions, images. Optional detail enrichment for surface area and floor data.

Pricing

from $0.70 / 1,000 listings

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

17

Total users

3

Monthly active users

7 days ago

Last modified

Share

Imobiliare.ro Scraper

Extract property listings from imobiliare.ro at scale, in a clean, consistent structure ready for market analysis, valuation models, lead generation and monitoring. No API key required.


Why this scraper?

🎯 Built for Romania

A dedicated Romanian scraper, not a global tool with a country dropdown. Locations, price formats and currency (EUR) are tuned for imobiliare.ro.

💶 Structured pricing

Asking price or rent as a clean number in EUR, plus the price exactly as displayed. Price-on-request listings return null, never a guess.

🏠 Property characteristics

Bedrooms, rooms, surface and property type in structured fields, ready for filtering and analysis.

📄 Full listing content

Complete listing description and title for every record, with a direct link back to the source.

📍 Precise location

Address fields plus latitude/longitude for mapping and radius analysis.

🖼️ Listing photos

Photo URLs for every listing where the source publishes them.

🔁 Change detection

Every record carries a contentHash over the listing's identity and price, so a daily feed can tell an unchanged listing from a repriced one.


Input parameters

ParameterTypeDefaultDescription
offerTypestring"sell"Whether to scrape sale or rental listings.
propertyTypestring"apartamente"Type of property to scrape.
locationstring"bucuresti"Romanian location slug, e.g. 'bucuresti', 'cluj-napoca', 'timisoara', 'iasi'. Used to build the search URL.
maxItemsinteger100Maximum number of listings to scrape. 30 listings are collected per search page.
fetchDetailsbooleantrueFetch each listing's detail page to add bathrooms, energy label, kitchens, exact street address, coordinates, publish date and the full description. Leave it off for a faster, cheaper run — the search results alone already carry price, surface, rooms, floor, images, agency and location.
startUrlsarray(empty)Optional list of direct listing URLs (imobiliare.ro/oferta/...) to scrape. When provided, the offerType/propertyType/location fields are ignored.

Output schema

Every field below is present on every record. Fields the source does not publish for a given listing are returned as null rather than omitted.

FieldTypeDescription
idstringImobiliare.ro internal listing ID
urlstringDirect link to the listing
operationTypestringsale or rent
propertyTypestringe.g. apartment, house
titlestringListing title
priceTextstringPrice as displayed
priceAmountnumberPrice (numeric)
priceCurrencystringe.g. EUR, RON
countystringRomanian county
neighborhoodstringNeighborhood.
citystringCity
countrystringAlways RO
bedroomsnumberNumber of bedrooms (null if not stated).
bathroomsnumberNumber of bathrooms (null if not stated).
floorstringFloor.
yearBuiltnumberConstruction year (null if not stated).
surfaceTotalnumberSurface total.
surfaceUnitstringSurface unit.
featuresarrayFeature list as published on the listing.
imagesarrayURLs of listing photos.
agencyNamestringAgency name.
sellerTypestringSeller type.
daysOnMarketnumberDays on market.
energyLabelstringEnergy label or rating (null if not published).
kitchensnumberKitchens.
isNewbooleanIs new.
publishDatestringPublish date.
publishDateISOstringPublish date iso.
latitudenumberLatitude of the property.
longitudenumberLongitude of the property.
streetAddressstringStreet address.
descriptionPreviewstringTruncated description from the search results card. Always present.
descriptionTextstringFull listing description as plain text. Requires fetchDetails.
descriptionHtmlstringFull listing description in HTML. Requires fetchDetails.
descriptionMarkdownstringFull listing description in Markdown. Requires fetchDetails.
sourcestringSource.
scrapedAtstringTimestamp when this record was scraped.
contentHashstringStable hash of the listing content, used for repost and change detection.

Example record

{
"id": "273029660",
"url": "https://www.imobiliare.ro/oferta/apartament-de-vanzare-sector-3-theodor-pallady-3-camere-273029660",
"operationType": "sell",
"propertyType": "apartamente",
"title": "Apartament cu 3 camere decomandat în Theodor Pallady",
"priceText": "180.290 EUR",
"priceAmount": 180290,
"priceCurrency": "EUR",
"county": "Bucuresti",
"neighborhood": "Theodor Pallady",
"city": "Sector 3",
"country": "RO",
"bedrooms": 3,
"bathrooms": 2,
"floor": "1 / 10",
"yearBuilt": 2026,
"surfaceTotal": 74.26,
"surfaceUnit": "m²",
"features": [
"Rezidențial",
"Faianță",
"Vopsea lavabilă",
"Gresie"
],
"images": [
"https://i.roamcdn.net/prop/imo/og-image-full-1200w-630h/F1yByVnkGZPo_bMy-Nj2ug/-/_1I8pjhgYGhsZmFoZGAA/60e31c02-1331-41e8 …",
"https://i.roamcdn.net/prop/imo/og-image-full-1200w-630h/vLogP3bgU4hPIFaX6hPKRg/-/_1I8pjhgYGhsZmFobGAA/e46c02d4-7089-4f08 …",
"https://i.roamcdn.net/prop/imo/og-image-full-1200w-630h/K5tmlWQQcclz0UaM31_DsQ/-/_1I8pjhgYGhsZmFoYmAA/8798be62-6eae-4c23 …",
"https://i.roamcdn.net/prop/imo/og-image-full-1200w-630h/NtQqszPrkj9Yt4mYrvUlkA/-/_1I8pjhgYGhsZmFoamAA/e5ddee61-f785-4d06 …"
],
"agencyName": "Hils Titanium",
"sellerType": "developer",
"daysOnMarket": 115,
"energyLabel": null,
"kitchens": 1,
"isNew": true,
"publishDate": "2026-03-10",
"publishDateISO": "2026-03-10",
"latitude": 44.4113422,
"longitude": 26.1898017,
"streetAddress": "Bulevardul Theodor Pallady,45,,,, Theodor Pallady, Sector 3",
"descriptionText": "Vă invităm să descoperiți HILS Titanium, un ansamblu rezidențial remarcabil, potrivit pentru cei care doresc să își înceapă viața independentă sau să investească într-un mediu urban de calitate superi …",
"descriptionHtml": "<p>Vă invităm să descoperiți HILS Titanium, un ansamblu rezidențial remarcabil, potrivit pentru cei care doresc să își înceapă viața independentă sau să investească într-un mediu urban de calitate sup …",
"descriptionMarkdown": "Vă invităm să descoperiți HILS Titanium, un ansamblu rezidențial remarcabil, potrivit pentru cei care doresc să își înceapă viața independentă sau să investească într-un mediu urban de calitate superi …",
"source": "imobiliare.ro",
"scrapedAt": "2026-07-04T00:29:08.120Z",
"contentHash": "99971fadba7340f2"
}

Examples

Listings in București:

{
"location": "București",
"maxItems": 100
}

Filter by transaction type:

{
"location": "București",
"maxItems": 100,
"offerType": "sell"
}

Scrape a specific search URL:

{
"startUrls": [
{
"url": "https://www.imobiliare.ro/vanzare-apartamente/bucuresti"
}
],
"maxItems": 200
}

Daily feed of new listings (run on a schedule):

{
"location": "București",
"maxItems": 500
}

Schedule this input in the Apify Scheduler (for example daily at 07:00) to keep an always-fresh feed of the newest listings.


💰 Pricing

$0.7 per 1,000 results — you only pay for successfully retrieved listings. Failed retries are never charged.

ResultsCost
100~$0.07
1,000~$0.7
10,000~$7
100,000~$70

Flat-rate alternatives typically charge $29–$49/month regardless of usage.

Subscription tiers lower the rate further, down to $0.7 per 1,000 at the highest tier. Use the Max results cap in the input to control your spend exactly.


Performance

Measured on build 1.0.67, 512 MB:

RunTypical time
20 listings with details~4 minutes
60 listings, details off~1.5 minutes
1,000 listings, details off~20 minutes

Detail pages are the slow part: each one is a separate fetch, and most of them go through a challenge-solving proxy. Turn fetchDetails off when the search-result fields are enough and runs get several times faster.


Known limitations

  • Some fields (energy label, kitchens, year built) are only returned when the lister publishes them — expect null on a share of records.
  • The full description, coordinates, bathrooms and publish date come from the detail page, so they are only populated when fetchDetails is on. Without it you still get a truncated descriptionPreview.
  • The portal caps any single search at 333 pages (~10,000 listings). Narrow by location or property type to reach beyond that.
  • An unrecognised location slug is rejected rather than silently widened: imobiliare.ro answers an unknown slug with nationwide results, and returning those would be wrong data, so the run stops and tells you.
  • Listings can be withdrawn at any time, so a small share of URLs may expire shortly after scraping.

Technical details

  • Source: imobiliare.ro — Romania property listings
  • Coverage: everything the public search exposes, filterable via the input parameters above
  • Retry: automatic retry on network errors with exponential backoff

Rate this actor

If this scraper does its job, a short review on the Reviews tab helps other users find it. Something not working? Open an issue on the Issues tab instead — issues get fixed.


Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl