Housing.com Scraper - India Property Listings & Prices avatar

Housing.com Scraper - India Property Listings & Prices

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Housing.com Scraper - India Property Listings & Prices

Housing.com Scraper - India Property Listings & Prices

Scrape property listings from Housing.com across India for buy or rent: price range, BHK configuration, address, property type, seller name & phone, posting date and features. Export to JSON, CSV or Excel for research and lead generation.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

19

Total users

1

Monthly active users

5 days ago

Last modified

Security

Limited permissions

Share

Housing.com Scraper 🏠🇮🇳 — India Property Listings, Prices & Seller Contacts

Extract property listings from Housing.com — one of India's largest real-estate portals — into clean, structured data. This Housing.com scraper turns any Indian city into a downloadable dataset of for-sale and rental properties, capturing the title, BHK configuration, price range, locality and full address, property type, seller/developer name and phone, possession status, posting date, photo count and listing features — no login, no coding, no manual copy-paste.

Export to JSON, CSV, Excel, or API in one click.

Built for real-estate analysts, proptech teams, lead-generation agencies, brokers, developers, data journalists and investors who need fresh, structured Indian property data at scale.

Actor Market Buy & Rent Seller phone Price range Output


🔎 Why scrape Housing.com?

Housing.com is one of India's leading property portals, with inventory across every major metro and tier-2 city — new-launch developer projects, resale apartments, builder floors, plots and rentals. A single city like Mumbai carries tens of thousands of verified listings, each with pricing, locality, configuration and seller contact details that are extremely valuable for market intelligence and lead generation.

The problem is that this data lives behind an infinite-scroll, JavaScript-heavy front end served through Akamai. Copying listings by hand is painfully slow, the site paginates dynamically, and prices, inventory and seller phone numbers change daily. There is no public Housing.com API for bulk export.

This Housing.com scraper solves that. Point it at a city (buy or rent) — or paste a Housing.com search URL — and it returns a clean, de-duplicated dataset of property listings with every useful field already parsed into columns. No HTML, no clutter, no browser extension.

Common reasons people scrape Housing.com:

  • 📊 Build price and inventory analytics by city, locality, configuration and property type.
  • 📞 Generate seller and developer leads (name + phone) from active for-sale listings.
  • 🏗️ Track new-launch developer projects, possession timelines and pricing.
  • 🏘️ Power a property portal, app, CRM or newsletter with fresh Indian listings.
  • 📈 Run investment and comparable-market research across neighbourhoods.
  • 🕵️ Monitor competitor inventory and project rollouts in a metro.

✨ What this Housing.com scraper does

  • ✅ Scrape a whole city by name — pass mumbai, bangalore, pune, delhi, hyderabad, chennai, gurgaon, noida and more.
  • ✅ Buy or rent — choose properties for sale or rentals with a single dropdown.
  • ✅ Deep city coverage — for sale listings, the scraper automatically expands a city into its many locality (-gid) and filter (-fid) search pages, harvesting listings from across the city rather than a single landing page.
  • ✅ Automatic pagination & de-duplication — walks every search group and merges results into one dataset keyed by the unique listing id; returns hundreds of de-duplicated listings per city, up to the limit you set.
  • ✅ Rich, parsed fields — captures identity (title, BHK subtitle, property type, URL), pricing (formatted price plus priceMin / priceMax in INR), location (locality and full detailedAddress), contact (sellerName, sellerType, sellerPhone) and metadata (postedDate, possessionStatus, possessionDate, verificationStatus, imageCount, rating, features).
  • ✅ Paste-a-URL mode — apply filters on Housing.com, then paste the search/locality URL for a targeted pull.
  • ✅ Reliable by design — rotates Indian residential proxies and realistic mobile Safari fingerprints with automatic retries to pass Akamai.
  • ✅ One-click export — JSON, CSV, Excel, HTML table, RSS/XML or the Apify API.

🎯 Use cases

  • Real-estate price analytics — Aggregate priceMin / priceMax and priceDisplay by locality and BHK to build price indices and trend dashboards.
  • Lead generation — Export seller and developer contacts (sellerName, sellerType, sellerPhone) from active for-sale inventory into your CRM or outreach tool.
  • Proptech & portal data — Feed your own listings app, map or comparison site with current Indian property data.
  • Developer & project intelligence — Track new-launch projects, possessionStatus and possessionDate across a metro.
  • Investment research — Compare neighbourhoods, configurations and resale vs new-project pricing to spot opportunities.
  • Market reports & journalism — Quantify supply, pricing and verification rates with reproducible, structured data.
  • CRM / database enrichment — Keep an existing property database current with scheduled refreshes.

📥 Input

The actor takes a simple, no-code input form. Provide cities (easiest) and/or Housing.com startUrls, choose service (buy or rent), and set maxItems.

FieldTypeDescription
citiesarrayOne or more Indian cities to scrape (e.g. mumbai, bangalore, delhi, pune, hyderabad, chennai, gurgaon, noida). The scraper harvests listings across the city's localities automatically.
servicestringbuy (for sale) or rent. Default buy.
startUrlsarrayHousing.com city, locality or search-results URLs (e.g. https://housing.com/in/buy/real-estate-mumbai or a …/andheri-west-gid/ page). Scraped in addition to cities.
maxItemsintegerMaximum number of listings to collect across all cities and URLs. Default 200.
proxyConfigurationobjectProxy settings. Indian residential proxy is recommended and enabled by default (Housing.com sits behind Akamai).

Option A — by city (easiest)

{
"cities": ["mumbai", "pune"],
"service": "buy",
"maxItems": 400,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}

Option B — rentals

{
"cities": ["bangalore"],
"service": "rent",
"maxItems": 200
}

Option C — by URL

{
"startUrls": [
{ "url": "https://housing.com/in/buy/real-estate-hyderabad" },
{ "url": "https://housing.com/in/buy/mumbai/andheri-west-gid/" }
],
"maxItems": 400
}

📤 Output

Each listing is returned as a clean, flat JSON object. Empty fields are omitted, so a record only contains the data Housing.com actually published for it. Here is a real item from a fresh Mumbai run:

{
"id": 311427,
"url": "https://housing.com/in/buy/projects/page/311427-avant-park-west-by-avant-group-in-vile-parle-west",
"title": "Avant Park West",
"subtitle": "1, 1.5, 2, 3, 4 BHK Apartments",
"propertyType": "project",
"listingType": "buy",
"priceDisplay": "₹2.24 Cr - 15.01 Cr",
"priceMin": 22416000,
"priceMax": 150144000,
"address": "Vile Parle East, Mumbai",
"detailedAddress": "Cts No. 824 826 And 827, Ville Parle West, Western Suburbs, Mumbai",
"sellerName": "Avant Group",
"sellerType": "Developer",
"sellerPhone": "77009XXXXX",
"postedDate": "2023-11-30T14:21:04Z",
"possessionStatus": "Under Construction",
"possessionDate": "Jun, 2027",
"verificationStatus": "Verified",
"imageCount": 1,
"rating": 4.2,
"features": ["Possession Starts", "Avg. Price", "Formatted per unit price", "Sizes"]
}

A resale apartment looks the same but with "propertyType": "resale" and a resale-style URL; a rental listing has "listingType": "rent" and a formatted rent in priceDisplay (e.g. "₹27,000").

Output fields

FieldDescription
idUnique Housing.com listing / project ID (natural de-duplication key).
urlDirect link to the listing page.
titleProperty or project name.
subtitleBHK configuration (e.g. "2, 3 BHK Apartments").
propertyTypeproject (new launch), resale, or rent.
listingTypebuy or rent (matches the service you ran).
priceDisplayFormatted price or range (e.g. "₹2.24 Cr - 15.01 Cr", "₹27,000").
priceMin / priceMaxNumeric price range in INR. priceMax present for multi-configuration projects.
addressLocality / short address.
detailedAddressFull address line (present when available).
sellerName / sellerTypeSeller or developer name and type (Developer, Agent, Owner…).
sellerPhoneSeller / developer phone (partially masked by the portal).
postedDateISO posting / listing date.
possessionStatusReady to Move, Under Construction, Possession Started or Launched (present mainly for projects).
possessionDateExpected or actual possession date, e.g. "Jun, 2027" (present when available).
verificationStatusPortal verification label (present when available).
isVerifiedBoolean verification flag (present when available).
imageCountNumber of photos on the listing.
ratingReview rating, when the project has reviews.
featuresListing feature labels.

Coverage, from a fresh 400-listing Mumbai run: identity and pricing fields — id, url, title, subtitle, propertyType, listingType, address, priceDisplay, sellerName, sellerType — populate at 100%, sellerPhone at ~99%, and detailedAddress, features, imageCount and priceMin in the 90s %. Fields like possessionStatus, possessionDate, verificationStatus and rating are data-dependent (they apply mostly to new-launch projects or verified listings), so they populate for the subset of listings that carry them — that is expected, not missing data.

You can download the dataset as JSON, CSV, Excel, HTML, RSS or XML, or fetch it programmatically through the Apify API.


🔁 Pagination & scale

You never manage pages by hand — the Housing.com scraper paginates automatically. For a for-sale city, the actor:

  1. Loads the city landing page and reads its embedded listings.
  2. Discovers the city's locality (-gid) and filter (-fid) search pages from that page.
  3. Visits those sub-pages, harvests each one's search-result groups, and queries Housing.com's search API behind every group.
  4. Merges everything into one de-duplicated dataset keyed by the unique listing id.

The crawl scales with maxItems: set it to 25 for a quick sample or 400+ to pull hundreds of listings from a busy metro (a fresh Mumbai run returns 400 unique de-duplicated listings in ~30 seconds). The actor stops cleanly once maxItems is reached or the city's search groups are exhausted, so you never pay for runaway crawls. Add more cities to scale further.

Buy vs rent: the for-sale (buy) path has the deepest coverage (hundreds per city). The rent path returns the city's currently published rental listings; volume is typically smaller than buy. Both share the exact same output schema.

Because Housing.com is served behind Akamai, the actor rotates Indian residential proxies and realistic mobile fingerprints with automatic retries to keep the scrape reliable.


⚙️ How to use Housing.com Scraper (step by step)

  1. Click Try for free / Start.
  2. Enter one or more cities and choose Buy or Rent — or paste a Housing.com URL under startUrls.
  3. Set maxItems to how many listings you want.
  4. Leave the default Indian residential proxy on and click Save & Start.
  5. When the run finishes, open the Dataset tab and Export to JSON, CSV or Excel — or pull it via the Apify API.

Run it via API

curl -X POST "https://api.apify.com/v2/acts/haketa~housing-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cities": ["mumbai"],
"service": "buy",
"maxItems": 400
}'
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('haketa/housing-scraper').call({
cities: ['pune'],
service: 'rent',
maxItems: 200,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Schedule runs (daily/weekly) or push results to Google Sheets, Airtable, Slack, Zapier, Make, or any webhook straight from the Apify platform.


💡 Tips

  • Start with one city, then scale. Confirm the fields look right for mumbai, then add cities or raise maxItems.
  • Use Buy for the deepest pull. The for-sale path expands across localities and returns the most listings; use Rent for rental analytics.
  • Paste a locality or filter URL (e.g. …/andheri-west-gid/, …/3bhk-fid/) under startUrls for a tightly targeted dataset.
  • Filter after export on possessionStatus / possessionDate to isolate Ready-to-Move homes or upcoming launches, or on propertyType to split projects vs resale.
  • Keep the Indian residential proxy on — Housing.com is behind Akamai and a datacenter IP will be blocked.
  • Schedule for freshness. Prices and inventory change daily; a scheduled run keeps your dataset current.

❓ FAQ

Is scraping Housing.com legal? This actor only collects publicly available listing data — the same information any visitor can see. Use it for lawful purposes such as market research, analytics and lead generation, and always respect Housing.com's Terms of Service, robots.txt, and applicable data-protection and telemarketing (DND) regulations when contacting sellers. See the Legal note below.

Do I need a Housing.com account or API key? No. There is no public Housing.com API — just provide a city or a Housing.com URL and the scraper does the rest.

How many listings can I get and how fast? A busy for-sale city returns hundreds of de-duplicated listings — a fresh Mumbai run produced 400 listings in about 30 seconds. Combine cities to go further. Rent volumes are smaller. The total is bounded by your maxItems.

Does the output include the seller's phone? Yes — sellerName, sellerType and sellerPhone are included wherever the portal exposes them (phone numbers are partially masked by Housing.com). In a fresh run, seller name/type populate at 100% and phone at ~99%.

Can I scrape both buy and rent? Yes. Set service to buy (for sale) or rent. Both produce the same output fields; the buy path has deeper coverage.

Do I need proxies or should I force residential? Housing.com sits behind Akamai, so an Indian residential proxy is recommended and enabled by default. The actor rotates proxies and mobile fingerprints automatically — just keep the default.

How fresh is the data? Every run pulls the current live listings at that moment. Schedule the actor to keep a rolling feed.

Can I filter by possession status, BHK or property type? Yes — each record carries possessionStatus, possessionDate, subtitle (BHK) and propertyType, so you can filter the exported dataset for Ready-to-Move homes, specific configurations, or resale vs new projects.

Why do some fields appear only on some listings? Fields such as possessionStatus, verificationStatus and rating apply mainly to new-launch projects or verified listings, so they are present for that subset and omitted elsewhere — this reflects the real data on the portal.

Is there an API? Yes — run the Housing.com scraper programmatically with the Apify API or the JavaScript / Python clients, and pull results straight from the dataset endpoint (see the examples above).


Scraping real estate in other markets? Try these companion actors:


This actor is intended for lawful data collection such as market research, analytics and lead generation. You are responsible for how you use the collected data. Only collect publicly available information, respect the target website's Terms of Service and robots.txt, and comply with all applicable laws and regulations, including data-protection rules and telemarketing/DND regulations when contacting sellers. Do not use the data for spam or any unlawful purpose. This actor is an independent tool and is not affiliated with, endorsed by, or connected to Housing.com or its parent companies. All trademarks belong to their respective owners.


⭐ If this Housing.com scraper saves you time, please leave a review — it really helps! Questions or a feature request? Open an issue on the actor's page.