# Changelog of Zonaprop Scraper - Argentina Real Estate Listings & Leads (`haketa/zonaprop-scraper`) Actor

- **URL**: https://apify.com/haketa/zonaprop-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/haketa/zonaprop-scraper.md

## Changelog

### 1.0.0 — 2026-11-01

- **Verified a fresh run of 260 unique listings** from a broad Capital Federal sale search in ~92s, with **0 duplicates** and **0 value bugs**. Core identity fields (`postingId`, `title`, `url`, `operationType`, `propertyType`, `priceAmount`, `priceCurrency`, `neighborhood`, `city`, `publisherName`, `publisherUrl`, `imageCount`, `images`) are populated on **100%** of rows; `whatsApp` ~82%, `surfaceTotal`/`rooms` ~85%, `expensesAmount` ~71%, `age` ~43% (all genuinely data-dependent).
- **Identified Zonaprop's deep-pagination wall:** the portal serves ~9 result pages (~270 listings) per search URL to anonymous requests and returns **HTTP 403** on page 10+ (confirmed stable across many fresh Argentina residential IPs and multiple searches). The crawler correctly reads the real `totalPages` and stops when blocked.
- **Crawl improvement:** when a deep page is blocked after results are already collected, the actor now stops that search immediately with a clear, actionable log message instead of burning extra retry cycles on the 403 wall — trimming wasted compute on every run. Parsing, output fields, de-duplication and the input contract are unchanged.
- **README refreshed to the gold standard** and grounded in the fresh run: corrected the pagination/scale section to honestly document the ~270-per-search limit and the recommended workaround (split into many narrower `startUrls`, which the actor merges and de-duplicates), refreshed the output example and field-coverage table to match real data, and expanded the FAQ, tips and use cases.
