Imovelweb Scraper - Sale & Rent, No Run Minimum avatar

Imovelweb Scraper - Sale & Rent, No Run Minimum

Pricing

$5.00 / 1,000 listing scrapeds

Go to Apify Store
Imovelweb Scraper - Sale & Rent, No Run Minimum

Imovelweb Scraper - Sale & Rent, No Run Minimum

Scrape Imovelweb Brazil property listings by city and operation (sale or rent): price, condo fee, bedrooms, area, full description and photos. $0.005 per listing, no minimum charge per run.

Pricing

$5.00 / 1,000 listing scrapeds

Rating

0.0

(0)

Developer

Gio

Gio

Maintained by Community

Actor stats

0

Bookmarked

11

Total users

0

Monthly active users

17 days ago

Last modified

Categories

Share

Why use this scraper

Imovelweb is one of Brazil's largest real estate listing sites, with no public API and search results pages designed for a buyer scrolling by hand, not for a pipeline that needs every listing in a city. Anyone doing market research, building a property aggregator, or running automated price alerts ends up either copying listings one at a time or writing a scraper that breaks the moment the site's anti-bot protection (DataDome) kicks in.

This actor searches Imovelweb by city and operation (for sale or for rent) and returns each listing as structured data: price, condo fee, area, bedrooms, bathrooms, parking spaces, the full listing description and the photo gallery. When Imovelweb's DataDome protection blocks a request, the actor returns a warning record instead of crashing the run, so a partial block does not silently look like zero properties on the market.

Overview

Give the actor a city (as an Imovelweb location slug, e.g. sao-paulo), an operation (venda for sale or aluguel for rent), and a maximum number of listings. The actor loads Imovelweb's search results for that city and operation, reads the page's own embedded listing data, and returns one dataset record per property. A search for a few dozen listings typically finishes in under a minute. Pricing is pay-per-result at $0.005 per listing, with no minimum charge per run, so a 5-listing test costs $0.025.

Supported inputs

FieldTypeDescription
searchTermstring, requiredImovelweb city/region slug, e.g. sao-paulo, rio-de-janeiro, belo-horizonte, curitiba, porto-alegre, brasilia, salvador, fortaleza. Spaces and accents are normalized automatically.
operationstringvenda (for sale, default) or aluguel (for rent).
maxItemsintegerMaximum number of listings to return. Default 60.
useProxybooleanRoutes the run through a residential proxy instead of the default connection. Turn this on if a run returns an anti-bot challenge instead of listings.

Use cases

  • Real estate market research. Pull every active for-sale listing in a city to analyze price per square meter by neighborhood.
  • Rental market tracking. Switch operation to aluguel to monitor asking rents in a city over time.
  • Property aggregators. Feed Imovelweb listings into a multi-source property search tool alongside other sites.
  • Lead generation for agents and brokers. Build a list of current listings in a target area, with full descriptions, to identify owners and agencies active in that market.
  • Price-alert tools. Run the same search on a schedule and diff the results to flag new listings or price drops.

How it works

Imovelweb's search results page embeds the full listing data for that page as a __PRELOADED_STATE__ JSON object inside the HTML, meant for the site's own front end to render. This actor reads that embedded JSON directly instead of parsing the rendered page elements, which keeps it working across front-end layout changes. When Imovelweb's DataDome bot protection intercepts the request and returns a challenge page instead of the search results, the actor detects that and logs a warning record rather than returning an empty or broken result silently.

Input configuration

Search for-sale listings in São Paulo:

{
"searchTerm": "sao-paulo",
"operation": "venda",
"maxItems": 30
}

Search rental listings in Rio de Janeiro:

{
"searchTerm": "rio-de-janeiro",
"operation": "aluguel",
"maxItems": 50
}

Search a smaller city, using the proxy option if the default run gets blocked:

{
"searchTerm": "curitiba",
"operation": "venda",
"maxItems": 20,
"useProxy": true
}

Output sample

Real records from a São Paulo "for sale" search:

[
{
"id": "3000737720",
"url": "https://www.imovelweb.com.br/propriedades/casa-a-venda-ermelino-matarazzo-3-quartos-500-m-3000737720.html",
"title": "Casa · 500m² · 3 Quartos · 5 Vagas · Casa à Venda",
"description": "Casa de 3 quartos no Parque Boturussu a venda. Ótima oportunidade de compra!",
"price": 1400000,
"condoFee": null,
"area": 400,
"bedrooms": 3,
"bathrooms": 2,
"parkingSpaces": 5,
"neighborhood": "Ermelino Matarazzo, 3 Quartos, 500 m²",
"city": null,
"state": null,
"images": [
"https://imgbr.imovelwebcdn.com/avisos/2/30/00/73/77/20/360x266/4559659254.jpg?isFirstImage=true",
"https://imgbr.imovelwebcdn.com/avisos/2/30/00/73/77/20/360x266/4554394854.jpg"
],
"imageCount": 5,
"scrapedAt": "2026-09-28T07:38:17.212Z"
},
{
"id": "3040605436",
"url": "https://www.imovelweb.com.br/propriedades/apartamento-a-venda-mooca-1-quarto-70-m2-3040605436.html",
"title": "Apartamento · 70m² · 1 Quarto · 1 Vaga · Apartamento à Venda",
"description": "Este encantador apartamento localizado no vibrante bairro da Mooca oferece uma excelente oportunidade de moradia...",
"price": 705000,
"condoFee": 800,
"area": 70,
"bedrooms": 1,
"bathrooms": 1,
"parkingSpaces": 1,
"neighborhood": null,
"city": null,
"state": null,
"images": [
"https://imgbr.imovelwebcdn.com/avisos/2/30/40/60/54/36/360x266/6960803906.jpg?isFirstImage=true"
],
"imageCount": 3,
"scrapedAt": "2026-09-28T07:38:17.424Z"
}
]

Key output fields

FieldTypeDescription
idstringImovelweb's internal listing ID.
urlstringDirect link to the listing.
titlestringListing title as shown on the site.
descriptionstringFull listing description text.
pricenumberAsking price (sale) or asking rent (rental), in BRL.
condoFeenumber or nullMonthly condo fee, when the listing states one.
areanumberProperty area in square meters.
bedroomsintegerNumber of bedrooms.
bathroomsintegerNumber of bathrooms.
parkingSpacesintegerNumber of parking spaces.
neighborhoodstring or nullNeighborhood, when Imovelweb's listing data includes it as a separate field.
city / statestring or nullNot populated by Imovelweb's own listing data; city-level context comes from the search itself (the searchTerm used) rather than a separate field.
imagesarray of stringsPhoto URLs from the listing gallery.
imageCountintegerTotal number of photos on the listing.
scrapedAtstringISO timestamp of the scrape.

Pricing

Pay per event, per listing returned. No minimum charge per run.

EventPrice
Listing scraped$0.005

A 30-listing search costs $0.15; a 60-listing search costs $0.30.

What makes this richer than the competition

  • fatihtahta/imovelweb-scraper (25 users in the last 30 days) charges a lower per-result price on paid tiers but enforces a $1 minimum charge per run, so even a 1-listing test costs $1. This actor has no run minimum: a small test run costs only what it actually scrapes.
  • solidcode/imovelweb-br-scraper (7 users in the last 30 days) is priced slightly lower per result but covers sale listings; this actor covers both sale and rental search from the same operation input.
  • A blocked request returns a labeled warning record instead of an empty or broken run, so a DataDome challenge is visible in the output instead of looking like "no listings found."

Notes & limitations

  • searchTerm must be an Imovelweb city or region slug (lower case, hyphenated), not a free-text address or neighborhood name.
  • city and state are not returned as separate fields by Imovelweb's own listing data; the city searched is known from the input, and the neighborhood field carries whatever location detail that specific listing included.
  • Imovelweb sits behind DataDome bot protection. If a run returns a warning record instead of listings, enable useProxy and retry.
  • Some fields (condoFee, neighborhood) are null when that specific listing did not include the detail; this is the listing's own data, not a scraping failure.

FAQ

Can I search for rental listings instead of sale listings? Yes, set operation to aluguel. Default is venda (for sale).

What location format does searchTerm expect? An Imovelweb city/region slug such as sao-paulo or rio-de-janeiro. The actor normalizes spaces and accents, but the underlying location still needs to be a city or region Imovelweb indexes.

What happens if my run gets blocked? The actor returns a warning record noting the block instead of crashing. Retry with useProxy set to true.

Does the output include the seller's or agency's contact details? No. This actor returns the listing's own public data (price, specs, description, photos); it does not extract seller or agency contact information.

Is there a minimum charge for a small test run? No. You are only charged per listing actually returned, with no run minimum.

Can I run searches for multiple cities in one call? Each run takes one searchTerm. Call the actor once per city (directly, via the API, or in a loop) to cover several cities.

Does maxItems guarantee exactly that many results? It is a cap, not a guarantee: a city or operation with fewer active listings than maxItems returns everything available instead of padding the output.

For AI Agents & LLM Apps

This actor is available as an Apify MCP server tool, for an LLM agent to call directly:

https://mcp.apify.com/?actors=YOUR_USERNAME/imovelweb-scraper

It also supports a direct synchronous API call that returns the dataset items in the response body:

curl "https://api.apify.com/v2/acts/YOUR_USERNAME~imovelweb-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerm": "sao-paulo", "operation": "venda", "maxItems": 20}'

Disclaimer

This actor is an independent tool that extracts publicly available listing data from Imovelweb's own site. It is not affiliated with, endorsed by or sponsored by Imovelweb. "Imovelweb" is a trademark of its respective owner.

SEO Keywords

imovelweb scraper, imovelweb api, scrape imovelweb listings, brazil real estate scraper, imovelweb aluguel scraper, imovelweb venda scraper