Portalinmobiliario Scraper — Chile Property Data & API avatar

Portalinmobiliario Scraper — Chile Property Data & API

Pricing

from $10.00 / 1,000 portalinmobiliario scraper — chile property data & apis

Go to Apify Store
Portalinmobiliario Scraper — Chile Property Data & API

Portalinmobiliario Scraper — Chile Property Data & API

Collect public sale and rental property listings from Portalinmobiliario. Get price, rooms, area, location, listing URL, and seller when shown. Run with a search URL, no login. Pricing: $0.01 per saved listing and $0.00005 per Actor Start on Free.

Pricing

from $10.00 / 1,000 portalinmobiliario scraper — chile property data & apis

Rating

0.0

(0)

Developer

Vitalii Bondarev

Vitalii Bondarev

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

20 hours ago

Last modified

Features

Limited permissions

Share

Portalinmobiliario Scraper | Chile Property Listings

Scrape public sale and rental property listings from Portalinmobiliario.com, Chile's real estate marketplace. On the Free plan, each saved listing is $0.01 and Actor Start is $0.00005 per event.

  • Extract the MLC listing ID, URL, title, operation, property type, asking price, currency, rooms, area, features, location, seller when shown, and lead photo from public search cards, with no login.
  • Build a sale or rental shortlist from the default Santiago used-apartment search or from another public search URL you paste.
  • Compare asking prices and room counts across the listings that search returns.
  • Open detail mode for the listing page's CLP price, common expenses, description, coordinates, condition, and gallery image URLs when they are present.
  • Export one dataset record per saved listing, with no value filled in unless the page showed it.

What you get

Public cards on portalinmobiliario.com. overview reads them. detail replaces a field only from a non-empty listing-page value and does not invent area, coordinates, price, or features.

GroupFieldsWhere it comes from
🏷️ Listing identityid, url, titleSearch card. id is MLC- plus the numeric id. url is the canonical https listing link with no query string.
🏠 Offeroperation, property_type, conditionOperation and type from the card headline or the search path. condition is detail only: used or new.
💰 Priceprice, currency, price_clp, maintenance_feeAsking price from the card or the detail page, with currency UF or CLP. price_clp and maintenance_fee are detail only.
📐 Size and roomsbedrooms, bathrooms, useful_area, total_area, parking, storageCard feature labels, replaced by detail specifications when those values exist.
📍 Locationlocation, latitude, longitudeLocation text from the card, or from the detail page when detail mode supplies it. Coordinates come from the detail map only.
🖼️ Seller and imagesseller, thumbnail, imagesSeller and lead photo when shown. images is the detail gallery, HTTPS URLs only.
📝 Textfeatures, descriptionFeature strings from the card. Detail mode replaces features when the listing page has specs or highlights. description is detail only.
⏱️ Run metadatasource, scraped_at, scrape_modeOn every saved record: portalinmobiliario.com, one UTC timestamp for the run, and overview or detail.

Note: A field is omitted when the page has no value the parser can read. Empty strings and empty lists are not saved.

operation is venta, arriendo, or arriendo-temporal (headline, else the search path). Known plurals are stored as Departamento, Casa, Oficina, Terreno, Parcela, Local, Bodega, Estacionamiento, or Sitio. A range (a number, then "a" or a dash, then another number) is not saved as price, parking, or storage. UF is UF or Unidad de Fomento; CLP is pesos, CLP, or $; otherwise price can omit currency.

Sample output

Overview record; detail-only fields are absent.

{
"id": "MLC-2308580069",
"url": "https://www.portalinmobiliario.com/MLC-2308580069-oportunidad-en-nunoa-2d-a-pasos-del-metro-_JM",
"title": "Oportunidad En Ñuñoa / 2d / A Pasos Del Metro",
"operation": "venta",
"property_type": "Departamento",
"price": 3100,
"currency": "UF",
"location": "OPORTUNIDAD EN ÑUÑOA / 2D / A PASOS DEL METRO, Bogotá - Sierra Bella, Santiago",
"seller": "FICHER",
"thumbnail": "https://http2.mlstatic.com/D_NQ_NP_2X_681043-MLC116270594396_092026-E-oportunidad-en-nunoa-2d-a-pasos-del-metro.webp",
"features": ["2 dormitorios", "2 baños", "40 m² útiles"],
"bedrooms": 2,
"bathrooms": 2,
"useful_area": "40 m² útiles",
"source": "portalinmobiliario.com",
"scraped_at": "2026-10-09T08:39:12.505382+00:00",
"scrape_mode": "overview"
}

Pricing

Pay per event, at the Free-plan prices below. No separate paid-plan price is listed.

EventWhat is billedFree plan price
apify-default-dataset-itemOne saved listing with the fields that were read. This is the primary event.$0.01 on Free
apify-actor-startCharged when the Actor starts. The number of events depends on memory: one event per GB, minimum one event.$0.00005 on Free

Default memory is 512 MB, so a normal run is the minimum of one Actor Start event. 499 results = $4.99005 on Free: 499 × $0.01, plus one Actor Start at $0.00005. 1,000 × $0.01 = $10 on Free and 10,000 × $0.01 = $100 on Free for saved listings. 1,000 × $0.00005 = $0.05 on Free and 10,000 × $0.00005 = $0.5 on Free for Actor Start.

The Apify Free plan includes $5 of monthly platform usage credit. After one Actor Start event, that credit covers 499 saved listings, from floor(($5.00 on Free − $0.00005) / $0.01). On this pay-per-event Actor, platform usage (compute, Apify Proxy traffic including residential, and storage) is included in the event prices and paid by the Actor developer. Pay per event + usage is off, so platform usage is not a separate charge on your run.

Note: Raising memory above 1 GB can charge more than one Actor Start event. The listing price stays $0.01 on Free per saved record.

How to use

  1. Open Portalinmobiliario Scraper in your Apify account.
  2. Paste a public Portalinmobiliario search URL into searchUrl. Filters already in that URL are kept.
  3. Set maxResults and set scrapeMode to overview or detail.
  4. Set proxyConfiguration. The default is Apify proxy group RESIDENTIAL; set useApifyProxy to false for a direct connection.
  5. Start the run and open the dataset. The log reports how many listing records were saved.
  6. Repeat the run with Apify Schedules. Daily is a starting point for listing and price checks, not a claim about how often Portalinmobiliario updates.
{
"searchUrl": "https://www.portalinmobiliario.com/venta/departamento/propiedades-usadas/santiago-metropolitana",
"maxResults": 10,
"scrapeMode": "overview",
"proxyConfiguration": {
"useApifyProxy": false
}
}

Export the dataset as JSON or CSV, or read it through the Apify dataset API.

Input parameters

No input is required. Empty input uses the defaults below, except a missing or empty proxyConfiguration is a direct connection.

ParameterWhat it doesDefault
searchUrlPublic search URL. Path and query are kept. Host must be portalinmobiliario.com, www.portalinmobiliario.com, or m.portalinmobiliario.com. Rewritten to https://www.portalinmobiliario.com; fragment dropped. A house path can be /venta/casa/santiago-metropolitana.https://www.portalinmobiliario.com/venta/departamento/propiedades-usadas/santiago-metropolitana
maxResultsMost distinct listings to save. Non-numbers become 50; fractions are cut down; below 1 saves nothing. Schema minimum is 1.50
scrapeModeoverview reads cards. detail also opens each listing for specifications, CLP price, seller, location, description, and gallery images. Other values act as overview.overview
proxyConfigurationOptional. useApifyProxy true uses Apify proxy. Omitted, empty, or false means a direct connection. If useApifyProxy is absent and proxyUrls is set, proxy is on.{"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]}

Limits and edge cases

Pages advance by 48 using _Desde_. The first request is the normalized URL, including a pasted offset; later pages are 48 higher. At most ceil(maxResults / 48) + 1 search pages are requested (3 at maxResults 50), stopping once enough distinct listings are saved. Waits: 0.4 seconds between search pages, 0.2 seconds after each detail page except the last. Each request times out at 40 seconds. The Actor reads public data on portalinmobiliario.com and does not log in. Whether a use is legal depends on Portalinmobiliario's terms and the law for your use case. This README does not guarantee compliance.

ConditionWhat you seeWhat to do
maxResults below 1Log says maxResults must be greater than zero; nothing is saved.Set it to 1 or higher.
Bad searchUrl (not HTTP(S), credentials, or another host)Fails with searchUrl must use HTTP or HTTPS, searchUrl must not contain credentials, or searchUrl must point to portalinmobiliario.com.Paste a public https URL on portalinmobiliario.com.
First page has no parseable cardsFails with No parseable Portalinmobiliario listing cards were found. Nothing is saved.Confirm the cards in a browser.
Later page has no cards or no new idThe run stops. Saved listings stay.Raise maxResults only if more cards exist.
Page window is reached firstFewer than maxResults records. At most ceil(maxResults / 48) + 1 search pages.Raise maxResults.
HTTP 429, 500, 502, 503, 504, or a connection failureUp to 3 attempts, waiting 1 second then 2 seconds, then the run fails. Message: Target returned HTTP plus the status. Pushed records remain.Run again, direct or with Apify proxy RESIDENTIAL.
Any other HTTP status on a search pageFails with Target returned HTTP plus the status. Earlier records stay.Check the URL, then run again.
A detail-page fetch failsWarning: detail fetch failed for that id; overview fields are kept. The run continues.Use the overview record, or run detail again.
Price or a count is a rangeprice, parking, or storage is omitted. The text can stay in features.No midpoint is guessed.
The same listing id appears againThe duplicate is skipped and is not billed again.No change is needed.

FAQ

How much does it cost to scrape Portalinmobiliario?

On the Free plan each saved listing is $0.01 and Actor Start is $0.00005. At 512 MB, 499 results = $4.99005 on Free. After one start, the $5 credit covers 499 listings.

Why is the dataset empty?

No parseable cards on the first page, maxResults below 1, or a bad host. Check the URL and set maxResults to 1 or more.

What should I do if the run fails partway through?

Saved rows remain. Use a public portalinmobiliario.com URL and run again. A detail failure keeps overview fields.

When should I use detail mode instead of overview?

Use detail for price_clp, maintenance_fee, description, coordinates, condition, or images. Both modes bill one item per saved listing.

The Actor reads public data on portalinmobiliario.com and does not log in. Whether a use is allowed depends on Portalinmobiliario's terms and the law for your use case. This README does not guarantee compliance.