Zonaprop Argentina Property Scraper
Pricing
from $0.79 / 1,000 listings
Zonaprop Argentina Property Scraper
Scrape Zonaprop.com.ar real estate listings by URL or search filters: price, surface, rooms, features, location, coordinates, publisher, photos, and WhatsApp contact. Export to JSON, CSV, or Excel.
Pricing
from $0.79 / 1,000 listings
Rating
0.0
(0)
Developer
ParseBird
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Zonaprop Argentina Property Scraper
Extract real estate listings from Zonaprop.com.ar, Argentina's largest property portal, without writing a single line of scraping code. Paste a Zonaprop search URL — or build a search from simple filters — and get structured data on price, surface, rooms, location, publisher, photos, and WhatsApp contact for every listing.
| Scrape any Zonaprop.com.ar search results page or individual listing URL — price, m², rooms, bathrooms, coordinates, publisher, and photos come out as clean, ready-to-use JSON, CSV, or Excel rows. |
Copy to your AI assistant
Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor: Use the Apify actor parsebird/zonaprop-scraper via ApifyClient — example: client.actor("parsebird/zonaprop-scraper").call(run_input={"startUrls":[{"url":"https://www.zonaprop.com.ar/departamentos-venta-palermo.html"}],"maxItems":100}) — key inputs are startUrls (array of Zonaprop search or clasificado URLs), maxItems (integer, default 100), fetchDetailPage (boolean, default false), and the filterOperation/filterPropertyType/filterPriceMin/filterPriceMax/filterBedroomsMin/filterBathroomsMin/filterLocation fields to build a search without a URL — output rows have source: "zonaprop_listing" with priceAmount, priceCurrency, totalAreaM2, coveredAreaM2, rooms, bedrooms, bathrooms, locationName, latitude/longitude, publisherName, whatsApp, pictureUrls, and propertyUrl — full API spec at https://apify.com/parsebird/zonaprop-scraper/api and get a token at https://console.apify.com/account/integrations.
What does Zonaprop Argentina Property Scraper do?
Zonaprop Argentina Property Scraper pulls structured data out of Zonaprop.com.ar, the Navent-owned property portal that covers sale, rental, and short-term rental (alquiler temporal) listings across Argentina — Capital Federal, GBA, Córdoba, Rosario, and beyond. It works as a Zonaprop API alternative: no account, no manual copy-pasting, no browser extension.
- 🔗 URL mode — paste any Zonaprop search-results URL (with whatever filters you already applied on the site) or a direct listing (
/propiedades/clasificado/...) URL, and the actor collects every listing it shows, across pages. - 🔍 Filter mode — skip the URL entirely and build a search from simple fields: operation (venta/alquiler/alquiler temporal), property type, price range and currency, bedrooms, bathrooms, covered area, garages, agency-only listings, and how recently the listing was published.
- 📍 Rich per-listing data — price, surface (total and covered), rooms, bedrooms, bathrooms, garages, age, address, neighborhood/city/province hierarchy, latitude/longitude, publisher name and WhatsApp number, photo URLs, and Zonaprop's own feature tags — all pulled from the same data the site itself renders, no separate detail-page scrape needed for most fields.
- 📄 Optional detail-page fetch — turn on
fetchDetailPageto also open each listing's own page for its meta title/description. - ⏱️ Automation-ready — run it on a schedule, trigger it via the Apify API, or wire it into Make, Zapier, or n8n to monitor new Zonaprop listings automatically.
- 📤 Export anywhere — download results as JSON, CSV, Excel, or HTML table straight from the Apify Console, or pull them via API/webhook.
What data can you extract from Zonaprop?
| Field | Description |
|---|---|
title, description | Listing headline and full description text |
priceAmount, priceCurrency, priceFormatted | Price and currency (USD or ARS) |
operationName | Venta, Alquiler, or Alquiler temporal |
totalAreaM2, coveredAreaM2 | Total and covered surface in m² |
rooms, bedrooms, bathrooms, garages | Room counts |
ageYears, antiquity | Property age |
address, locationName, locationChain | Street address and neighborhood → city → province hierarchy |
latitude, longitude | Geolocation |
publisherName, publisherType, whatsApp | Agency/owner name, type, and WhatsApp contact number |
pictureUrls, additionalPicturesCount | Photo URLs |
propertyUrl | Canonical public listing URL |
mainFeatures, generalFeatures, highlightedFeatures | Zonaprop's own structured feature tags (disposición, orientation, amenities, etc.) |
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| startUrls | array | One of startUrls/filterOperation | — | Zonaprop search or clasificado (listing) URLs |
| maxItems | integer | No | 100 | Maximum listing rows to save |
| fetchDetailPage | boolean | No | false | Also fetch each listing's own page for meta title/description |
| filterOperation | string | One of startUrls/filterOperation | — | venta / alquiler / alquiler-temporal — activates filter-based search |
| filterPropertyType | string | No | departamentos | departamentos / casas / ph / terrenos / locales-comerciales |
| filterLocation | string | No | — | Free-text city/neighborhood, matched client-side against results |
| filterPriceMin / filterPriceMax | integer | No | — | Price range |
| filterPriceCurrency | string | No | — | USD or ARS |
| filterBedroomsMin | integer | No | — | Minimum bedrooms |
| filterBathroomsMin | integer | No | — | Minimum bathrooms (1–5) |
| filterGaragesMin | integer | No | — | Minimum garages (0–4) |
| filterCoveredAreaMin / filterCoveredAreaMax | integer | No | — | Covered area range, m² |
| filterAgenciesOnly | boolean | No | false | Only agency-published listings |
| filterPublishedWithin | string | No | — | today / yesterday / week / 15days / 30days / 45days |
| maxPages | integer | No | 50 | Max result pages per search (30 listings/page) |
| proxy | object | No | RESIDENTIAL, country AR | Apify proxy configuration |
Output example
{"source": "zonaprop_listing","listingId": "60126728","title": "Venta Departamento 3 Ambientes con Cochera Altos Porteños","propertyUrl": "https://www.zonaprop.com.ar/propiedades/clasificado/veclapin-venta-departamento-3-ambientes-con-cochera-altos-60126728.html","realEstateType": "Departamentos","operationName": "Venta","priceAmount": 195000,"priceCurrency": "USD","priceFormatted": "195.000","totalAreaM2": "62","coveredAreaM2": "58","rooms": "3","bedrooms": "1","bathrooms": "2","garages": "1","ageYears": "11","address": "Carlos Calvo 3000","locationName": "Boedo","locationChain": ["Boedo", "Capital Federal", "Argentina"],"latitude": -34.6225406,"longitude": -58.4084786,"publisherId": "17749932","publisherName": "Salaya Romera","whatsApp": "54 9 1165643204","pictureUrls": ["https://imgar.zonapropcdn.com/avisos/1/00/60/12/67/28/720x532/2077831564.jpg"],"scrapedAt": "2026-09-11T09:51:26.163Z"}
Use cases
- Market research — compare prices per m² across neighborhoods or cities in Argentina.
- Lead generation — build a list of agency-published listings with WhatsApp numbers for outreach.
- Portfolio monitoring — run on a schedule to catch new listings matching your criteria as soon as they're published.
- Feeding a real estate app or CRM — pipe structured JSON straight into your own database via the Apify API.
- Investment analysis — export to Excel/CSV and cross-reference surface, price, and location.
How to scrape Zonaprop.com.ar
- Go to Zonaprop.com.ar, search and filter as you normally would.
- Copy the resulting URL from your browser's address bar.
- Paste it into this actor's Start URLs field (or set the Search filters fields instead).
- Set Max listings and, optionally, a Proxy country (Argentina residential is the default and recommended).
- Click Start and download results as JSON, CSV, or Excel once the run finishes.
How much does it cost to scrape Zonaprop?
This actor uses pay-per-event (PPE) pricing — you pay only for what you get, not for compute time.
| Event | Price per event | Price per 1,000 |
|---|---|---|
| listing-scraped | $0.00099 | $0.99 |
| contact-info-scraped (optional) | $0.019 | $19.00 |
listing-scraped fires once per listing row saved. contact-info-scraped is optional (off by default, enable with chargeForContactInfo) and only fires for listings that include a WhatsApp number. Scraping 1,000 listings without the contact add-on costs about $0.99.
Input / Output
Full field-by-field documentation is on the Input tab. Download results in JSON, CSV, Excel, or HTML from the Storage tab of any run, or pull them programmatically via the Apify API.
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("parsebird/zonaprop-scraper").call(run_input={"startUrls": [{"url": "https://www.zonaprop.com.ar/departamentos-venta-palermo.html"}],"maxItems": 100,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["priceFormatted"])
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('parsebird/zonaprop-scraper').call({startUrls: [{ url: 'https://www.zonaprop.com.ar/departamentos-venta-palermo.html' }],maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Is it legal to scrape Zonaprop?
Yes — this actor only collects publicly available listing data that Zonaprop.com.ar itself shows to any visitor, without logging in or bypassing paywalls. You're responsible for how you use the extracted data; review Zonaprop's Terms of Service and applicable data-protection law (e.g. Argentina's Ley 25.326) before republishing personal data such as WhatsApp numbers. See Apify's guide on the legality of web scraping for more detail.
Other real estate scrapers
- Immobiliare.it Scraper — Italy
- Homegate.ch Swiss Real Estate Scraper — Switzerland
- Imovelweb Scraper — Brazil
- Pincali Mexico Real Estate Scraper — Mexico
FAQ
Do I need a Zonaprop account? No. The actor scrapes public search results and listing pages only.
Can I search by neighborhood, like Palermo or Belgrano?
Yes — either paste a Zonaprop URL that already includes the neighborhood (most accurate), or set filterLocation to match results client-side after fetching.
Why do some filters not narrow the results?
Zonaprop assigns internal numeric codes to each operation and property type combination. Only venta (sale) and departamentos (apartments) have verified codes for the price/room/bathroom filters; other combinations still build a valid Zonaprop URL, but should be pasted directly into Start URLs for guaranteed filtering.
Does it get blocked by Cloudflare? Zonaprop runs Cloudflare. The actor uses a browser-matching TLS fingerprint and defaults to residential proxies in Argentina, which is the combination that reliably passes it. If a run comes back empty, try increasing Max retries or confirm the proxy country is set to Argentina.
Can I schedule recurring runs? Yes — use Apify's built-in Scheduler to run this actor daily, hourly, or on any cron interval, and combine it with a webhook or integration (Make, Zapier, n8n) to get notified of new listings.
Something looks wrong or missing — how do I report it? Open an issue on the actor's Issues tab in Apify Console. Include the input you used and, if possible, the run ID.