Imovelweb Property Scraper - Brazil Sale & Rent
Pricing
from $3.00 / 1,000 results
Imovelweb Property Scraper - Brazil Sale & Rent
Scrape property listings from Imovelweb (imovelweb.com.br), Brazil: price, condo fee, IPTU, bedrooms, bathrooms, parking, area, address, coordinates, photos, advertiser and CRECI. Sale and rent search pages or property URLs, cache for new listings only. Export JSON, CSV or Excel.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
ActorFlow
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 hours ago
Last modified
Categories
Security
Limited permissionsShare
Imovelweb (imovelweb.com.br) Scraper de Imóveis à Venda e para Alugar

🇬🇧 English version below: veja a seção "English version" mais abaixo.
Colete anúncios de imóveis do Imovelweb (imovelweb.com.br), o portal de imóveis do Brasil. Cole o link de uma busca (apartamentos, casas, terrenos, comerciais ou rurais, à venda ou para alugar) ou de um imóvel e clique em Iniciar. Cada anúncio traz preço, condomínio, IPTU, quartos, banheiros, vagas, área, endereço, bairro, cidade, estado, coordenadas, fotos e anunciante (imobiliária ou corretor com CRECI). Exporte em JSON, CSV ou Excel ou use como API.
Site de origem: imovelweb.com.br
✨ Recursos do scraper de imóveis do Imovelweb
- Anúncios de venda e aluguel — links de busca de qualquer cidade, bairro ou tipo de imóvel, com os filtros do link (quartos, faixa de preço, ordem), ou links de imóveis individuais.
- Dados já na busca — preço, condomínio, quartos, banheiros, vagas, área, bairro, descrição, primeiras fotos, anunciante e WhatsApp vêm direto dos resultados, 30 imóveis por página.
- Detalhes opcionais — ligue "Abrir cada página do imóvel" para obter todas as fotos, a lista de comodidades, a data de publicação e, quando a busca não os traz, rua e coordenadas.
- Divisão automática de buscas grandes — o site entrega no máximo 29.970 imóveis por busca. Se você pedir mais, o scraper divide a busca por tipo de imóvel, faixa de preço (usando as contagens reais do site) e número de quartos.
- Cache, só anúncios novos — use o mesmo nome de cache em cada execução agendada para receber só os imóveis que ainda não foram salvos.
- Suporte a proxy — configurações de proxy já definidas por padrão.
- Sem navegador — requisições HTTP simples e leves.
🚀 Como coletar imóveis do Imovelweb em 5 passos
- Crie uma conta gratuita na Apify, com US$ 5 de crédito mensal.
- Abra a página do actor e clique em Try for free.
- Informe um ou mais links do Imovelweb em URLs do Imovelweb.
- Clique em Start e aguarde. O Imovelweb é lento de acessar (10 a 80 segundos por página).
- Baixe os resultados na aba Output em JSON, CSV ou Excel.
💰 Preço do scraper do Imovelweb
O actor cobra por resultado.
- Sem detalhes: 1 requisição traz até 30 imóveis.
- Com "Abrir cada página do imóvel": 1 requisição por busca mais 1 por imóvel, ou seja, cerca de 30 vezes mais requisições.
- Buscas grandes divididas fazem uma requisição extra para cada contagem de faixa de preço.
🔧 Configuração de entrada

Rótulos numerados na captura de tela:
- URLs do Imovelweb — buscas de venda ou aluguel e páginas de imóveis.
- Nome do cache — use o mesmo nome a cada execução para obter só imóveis novos.
- Máx. de imóveis por busca — quantos imóveis salvar para cada URL inicial.
- Abrir cada página do imóvel — adiciona todas as fotos, comodidades, data de publicação, rua e coordenadas.
| Campo | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
URLs do Imovelweb (startUrls) | lista | ✅ | exemplo de busca | Buscas de venda ou aluguel e páginas de imóveis. Os filtros do link são mantidos. |
Nome do cache (cacheProjectName) | texto | — | — | Mesmo nome a cada execução para obter só imóveis novos; cada registro recebe changeType: new. |
Máx. de imóveis por busca (maxItems) | inteiro | — | 5 | Máximo por URL inicial. |
Abrir cada página do imóvel (scrapeDetails) | booleano | — | desligado | Adiciona todas as fotos, comodidades, data de publicação e, se faltar, rua e coordenadas. |
Proxy (proxyConfiguration) | objeto | — | Padrão | Proxy da Apify. Mantenha o padrão. |
Tipos de link aceitos:
- Busca:
https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html,.../casas-aluguel-curitiba-pr.html,.../imoveis-venda-sao-paulo-sp.html(todos os tipos) - Com filtros:
.../apartamentos-venda-sao-paulo-sp-2-quartos-500000-700000-reales.html - Imóvel:
https://www.imovelweb.com.br/propriedades/apartamento-...-3029877928.html
📦 Dados de saída do scraper do Imovelweb
Cada registro tem sempre os mesmos campos (null quando não há valor): id, postingCode, url, title, listingType, postingType, propertyType, price, currency, condoFee, iptu, bedrooms, bathrooms, suites, parking, totalArea, usableArea, address, neighborhood, city, state, latitude, longitude, description, features, images, imageCount, hasVideo, hasTour, advertiserId, advertiserName, advertiserTypeId, advertiserUrl, advertiserLicense, whatsapp, postedAt, updatedAt, detailsScraped, changeType, scrapedAt. Há uma visão (Overview) com os campos principais em tabela. Os nomes dos campos estão em inglês.
Observações: o IPTU não é um campo do site, ele é lido do texto do anunciante quando escrito lá. Rua e coordenadas só aparecem quando o anunciante mostra o local exato. Lançamentos (postingType: development) trazem o menor preço das unidades.
🔁 Coletar só imóveis novos com o cache
Use o mesmo Nome do cache em cada execução agendada. Imóveis já salvos sob esse nome são ignorados, não são cobrados e não contam para o máximo. Caches com nomes diferentes são independentes. Dica: combine com os Agendamentos (Schedules) da Apify.
⚠️ Limitações
- Limite do site — 29.970 imóveis por busca; acima disso o scraper divide a busca. Imóveis sem preço ou sem quartos podem ficar fora de divisões por preço e quartos.
- Lento — leva de 10 a 80 segundos por página.
- Ordem da busca — a ordem "relevantes" do site muda com o tempo, então uma busca longa sem divisão pode repetir ou perder alguns imóveis. Buscas divididas usam "mais baratos primeiro".
- Páginas de imobiliárias não são aceitas como link inicial.
🇬🇧 English version
Imovelweb (imovelweb.com.br) Brazil Property Listings Scraper
Scrape property listings from Imovelweb (imovelweb.com.br), a Brazilian real-estate portal. Paste a search link (apartments, houses, land, commercial or rural, for sale or rent) or a property link and press Start. Each listing has price, condo fee, IPTU, bedrooms, bathrooms, parking, area, address, neighbourhood, city, state, coordinates, photos and advertiser (agency or agent with CRECI licence). Export JSON, CSV or Excel, or call it as an API.
Target website: imovelweb.com.br
✨ Features of this Imovelweb property scraper
- Sale and rent listings — search links for any city, neighbourhood or property type, with the filters in the link (bedrooms, price range, sort), or single property links.
- Rich search records — price, condo fee, bedrooms, bathrooms, parking, area, neighbourhood, description, first photos, advertiser and WhatsApp come straight from the results, 30 properties per page.
- Optional property details — switch on "Open each property page" for all photos, the amenities list, the publication date and, where the search lacks them, street and coordinates.
- Automatic split of big searches — the site serves at most 29,970 properties per search. If you ask for more, the scraper splits the search by property type, price range (using the site's real counts) and bedrooms.
- Cache, new listings only — use the same cache name on each scheduled run to get only properties not saved before.
- Proxy support — proxy settings are preset in the input.
- No browser required — plain, light HTTP requests.
🚀 How to scrape Imovelweb property listings in 5 steps
- Sign up for a free Apify account, with $5 monthly credit.
- Open the actor page and click Try for free.
- Add one or more Imovelweb links under Imovelweb URLs.
- Click Start and wait. Imovelweb is slow to reach (10 to 80 seconds a page).
- Download results from the Output tab as JSON, CSV or Excel.
You can also run this actor through the Apify API or from Zapier, Make or n8n.
💰 Pricing for the Imovelweb scraper
This actor uses pay-per-result billing.
- Without details: one request returns up to 30 properties.
- With "Open each property page": one request per search page plus one per property, roughly 30 times more requests.
- Split big searches make one extra request for each price-range count.
🔧 Imovelweb scraper input configuration

Numbered labels in the screenshot:
- Imovelweb URLs — sale or rent searches and property pages.
- Cache project name — reuse the same name on each run to get only new properties.
- Max properties per search or URL — how many properties to save for each start URL.
- Open each property page (full details) — adds all photos, amenities, publication date, street and coordinates.
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
Imovelweb URLs (startUrls) | array | ✅ | example search | Sale or rent searches and property pages. Filters in the link are kept. |
Cache project name (cacheProjectName) | string | — | — | Same name on each run to get only new properties; each record gets changeType: new. |
Max properties per search or URL (maxItems) | integer | — | 5 | Maximum per start URL. |
Open each property page (scrapeDetails) | boolean | — | off | Adds all photos, amenities, publication date and, if missing, street and coordinates. |
Proxy configuration (proxyConfiguration) | object | — | Preset | Apify proxy. Keep the default. |
Supported URL types:
- Search:
https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html,.../casas-aluguel-curitiba-pr.html,.../imoveis-venda-sao-paulo-sp.html(all types) - With filters:
.../apartamentos-venda-sao-paulo-sp-2-quartos-500000-700000-reales.html - Property:
https://www.imovelweb.com.br/propriedades/apartamento-...-3029877928.html
📦 Imovelweb scraper output data
Every record has the same keys (null when there is no value): id, postingCode, url, title, listingType, postingType, propertyType, price, currency, condoFee, iptu, bedrooms, bathrooms, suites, parking, totalArea, usableArea, address, neighborhood, city, state, latitude, longitude, description, features, images, imageCount, hasVideo, hasTour, advertiserId, advertiserName, advertiserTypeId, advertiserUrl, advertiserLicense, whatsapp, postedAt, updatedAt, detailsScraped, changeType, scrapedAt. There is one view (Overview) with the main fields as a table.
Output at a glance:
| Property | Type | Price (R$) | Condo (R$) | Beds | Area (m²) | Neighbourhood | State |
|---|---|---|---|---|---|---|---|
| Apartamento à venda - na Vila Mariana | sale | 2300000 | 1800 | 2 | 113 | Vila Mariana | SP |
| Flat com 1 dormitório à venda, 29 m² | sale | 270000 | 300 | 1 | 29 | Vila Carrão | SP |
| apartamento à venda em Vila Clementino | sale | 1490000 | 1843 | 4 | 138 | Vila Clementino | SP |
Sample output (raw JSON, search-only record, description and photos shortened):
{"id": "3034717226","postingCode": "FL0001","url": "https://www.imovelweb.com.br/propriedades/flat-com-1-dormitorio-a-venda-29-m-por-r$-270.000-00-3034717226.html","title": "Flat com 1 dormitório à venda, 29 m² por R$ 270.000,00 - Vila Carrão - São Paulo/SP","listingType": "sale","postingType": "property","propertyType": "Apartamentos","price": 270000,"currency": "BRL","condoFee": 300,"iptu": null,"bedrooms": 1,"bathrooms": 1,"suites": null,"parking": null,"totalArea": 29,"usableArea": 29,"address": "Rua Zambeze 166","neighborhood": "Vila Carrão","city": "São Paulo","state": "SP","latitude": -23.547544,"longitude": -46.5361888,"description": "Apresentamos este flat moderno e mobiliado com 29 m², localizado na Rua Zambeze, 166, em uma das regiões mais práticas e valorizadas da Zona Leste de São Paulo...","features": null,"images": ["https://imgbr.imovelwebcdn.com/avisos/2/30/34/71/72/26/720x532/6659708949.jpg","https://imgbr.imovelwebcdn.com/avisos/2/30/34/71/72/26/720x532/6659701554.jpg"],"imageCount": 15,"hasVideo": false,"hasTour": false,"advertiserId": "47288565","advertiserName": "Imoveis & Cia Atibaia SP","advertiserTypeId": "2","advertiserUrl": "https://www.imovelweb.com.br/imobiliarias/imoveis-cia-atibaia-sp_47288565-imoveis.html","advertiserLicense": "33549J","whatsapp": "55 11975617123","postedAt": null,"updatedAt": "2026-11-03T11:20:37-0500","detailsScraped": false,"changeType": null,"scrapedAt": "2026-11-03T16:45:43.096Z"}
Notes: IPTU is not a field of the site; it is read from the advertiser's text when written there. Street and coordinates only show when the advertiser shows the exact place. New-building projects (postingType: development) carry the lowest unit price.
🔁 Scrape only new Imovelweb listings with the cache
Use the same Cache project name on each scheduled run. Properties already saved under that name are skipped, not charged and not counted towards Max properties per search, and new ones get changeType: "new". Different names keep separate caches. With "Open each property page" on, cached properties are skipped before their page is opened. Tip: combine with Apify Schedules.
🐍 How to scrape Imovelweb with Python, JavaScript or the API
Run the actor with the official Apify clients. Replace <YOUR_API_TOKEN> with the token from your Apify Console.
Python (pip install apify-client):
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("confidential_gnat/imovelweb-property-scraper").call(run_input={"startUrls": [{"url": "https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html"}],"maxItems": 30,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
JavaScript (npm install apify-client):
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('confidential_gnat/imovelweb-property-scraper').call({startUrls: [{ url: 'https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html' }],maxItems: 30,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
cURL — start a run and wait for the dataset:
curl -X POST "https://api.apify.com/v2/acts/confidential_gnat~imovelweb-property-scraper/run-sync-get-dataset-items?token=<YOUR_API_TOKEN>" \-H "Content-Type: application/json" \-d '{"startUrls":[{"url":"https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html"}],"maxItems":30}'
💡 What you can use Imovelweb property data for
- Market price tracking by city and neighbourhood
- Rental yield and price-per-square-metre analysis
- Lead lists of agencies and agents (name, CRECI, WhatsApp)
- Alerts for new listings that match a search
- Feeding property portals, valuation models and research datasets
Real-estate agents, investors, proptech teams and analysts in Brazil use this data for pricing, sourcing and market research.
⚠️ Limitations of the Imovelweb scraper
- Site limit per search — 29,970 properties per search; beyond that the scraper splits the search. Properties without a price or bedroom count can fall outside price and bedroom splits.
- Slow — a page takes 10 to 80 seconds.
- Search order — the site's "relevance" order changes over time, so a long unsplit search can repeat or miss a few properties. Split searches use cheapest first.
- Agency pages are not accepted as start URLs.
❓ Imovelweb scraper FAQ
Can I scrape Imovelweb legally?
The actor only collects data already visible on the public site, with no login or private content. Scraping publicly available data is generally considered lawful (see hiQ Labs v. LinkedIn), but you are responsible for following Imovelweb's terms and applicable laws such as the LGPD or GDPR when advertiser contact details are involved.
What data does the Imovelweb scraper return?
Price, condo fee, IPTU (when written in the text), rooms, area, location, coordinates when shown, description, photos and advertiser details. With "Open each property page" on you also get all photos, the amenities list and the publication date.
How many properties can I scrape from one Imovelweb search?
maxItems limits each start URL. The site serves 29,970 properties per search; for a higher maxItems the scraper splits the search by property type, price range and bedrooms.
Do I need a proxy to scrape imovelweb.com.br?
No. The default proxy settings work out of the box.
How do I scrape Imovelweb with Python?
Use the Python example above and iterate over the dataset items.
Can I run this Imovelweb scraper on a schedule?
Yes, with Apify Schedules. Set the same Cache project name on each run to receive only new properties.
What output formats are supported?
JSON, CSV, Excel, XML and RSS, from the Output tab or the Apify API.
Why are some coordinates or streets empty?
Advertisers can hide the exact place. In that case the site gives no street or coordinates, and they stay null.
🔗 Relevant actors for Imovelweb
| Scraper | Description |
|---|---|
| 🏠 QuintoAndar Property Scraper - Brazil Rentals & Homes for Sale | Scrapes property listings from QuintoAndar, Brazil's rental and home-sale site. |
| 🏡 Chaves na Mão Property Scraper - Brazil Real Estate Listings | Scrapes sale and rent listings from Chaves na Mão (chavesnamao.com.br). |
| 🏘️ 99acres Property Scraper - India Homes for Sale & Rent | Scrapes property listings from 99acres: price, area, bedrooms, bathrooms. |
| 🏢 Otodom.pl Property Scraper - Poland Real Estate Listings | Scrapes property listings from Otodom.pl: price, area, rooms, address. |
| 🇬🇧 Rightmove Property Scraper - UK Sale & Rent Listings | Scrapes UK property listings from Rightmove, sale and rent. |
🔗 Other actors you may find useful
| Scraper | Description |
|---|---|
| 🇨🇦 Yellow Pages Canada Scraper - Emails & Leads | Scrape Canadian businesses from Yellow Pages Canada with emails. |
| 🇪🇸 Páginas Amarillas Spain Business Scraper | Scrape business listings from Páginas Amarillas Spain. |
| 🔨 Auction.com Real Estate Auctions Scraper | Scrape Auction.com real-estate auctions: foreclosure and bank-owned. |
| 🛒 Mudah.my Classifieds Scraper - Cars, Property & Marketplace | Scrapes classified ads from Mudah.my, Malaysia's largest marketplace. |
| 🇩🇪 Yellow Pages Germany Scraper - Emails & Leads | Scrape German businesses from Gelbe Seiten with emails. |
💬 Support & contact
If you encounter any issues or have questions, please open an issue.
You can also find more of our actors on the Actor Flow page.