MagicBricks Property Scraper ๐
Pricing
Pay per usage
MagicBricks Property Scraper ๐
Scrape residential & commercial properties from India's largest real estate platform. Extract prices, locations, amenities, seller details & contact info. Essential for investment analysis, market intelligence, competitive pricing research & property portfolio tracking.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Shahid Irfan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
MagicBricks Property Scraper
Extract comprehensive property listing data from MagicBricks search result pages with speed and reliability. Collect villas and other sale listings including pricing, area, furnishing, seller type, amenities, images, nearby landmarks, project details, and more. Ideal for market research, listing monitoring, pricing analysis, and property intelligence workflows.
Features
- Listing URL input โ Start from a MagicBricks search results URL
- Pagination support โ Collect across multiple result pages up to your chosen limit
- Rich property fields โ Capture pricing, area, furnishing, seller, project, amenities, and media
- Detailed listing coverage โ Gather property details, project context, seller information, coordinates, images, and amenities
- Null-free output โ Removes empty fields before saving items to the dataset
- Flexible URL handling โ Accepts canonical listing URLs and normalizes page-specific variants
Use Cases
Market Research
Track asking prices, property sizes, and listing mix across localities and property types. Build a structured view of supply in a specific market.
Lead Intelligence
Collect seller and project context from listing pages for downstream qualification, enrichment, and outreach analysis.
Pricing Analysis
Compare price ranges, per-square-foot rates, and inventory depth across neighborhoods, bedroom counts, and project clusters.
Listing Monitoring
Run the scraper on a schedule to watch for fresh inventory, pricing shifts, and listing turnover over time.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
url | String | Yes | https://www.magicbricks.com/villa-for-sale-in-bangalore-pppfs | MagicBricks search results URL to scrape |
results_wanted | Integer | No | 20 | Maximum number of listings to collect |
max_pages | Integer | No | 3 | Maximum number of result pages to visit |
proxyConfiguration | Object | No | { "useApifyProxy": false } | Optional Apify proxy settings |
Output Data
Each dataset item can include:
| Field | Type | Description |
|---|---|---|
id | String | MagicBricks listing ID |
title | String | Listing title |
listingUrl | String | Full listing detail URL |
pageUrl | String | Search result page URL where the listing was found |
pageNumber | Number | Search result page number |
propertyType | String | Property type label |
transactionType | String | Transaction label such as resale |
listingType | String | Search type such as sale |
city | String | City name |
locality | String | Locality name |
price | Number | Listing price |
priceText | String | Human-readable listing price |
minPrice | Number | Minimum price shown for the listing |
maxPrice | Number | Maximum price shown for the listing |
pricePerSqft | Number | Price per square foot |
bedrooms | String | Bedroom count label |
bathrooms | String | Bathroom count label |
balconies | String | Balcony count label |
furnishing | String | Furnishing status |
facing | String | Facing direction |
ownership | String | Ownership type |
status | String | Possession or availability status |
ageOfConstruction | String | Construction age band |
areaSqft | Number | Area value in square feet |
areaText | String | Human-readable area |
carpetArea | String | Carpet area value |
landArea | String | Land area value |
advertiserName | String | Advertiser or seller name |
contactType | String | Advertiser type such as owner or agent |
projectName | String | Project or society name |
developerName | String | Developer name |
seoDescription | String | Listing summary text |
detailedDescription | String | Cleaned long description |
amenities | Array | Amenity names |
nearbyLandmarks | Array | Nearby landmarks with category IDs |
coordinates | Object | Latitude and longitude |
images | Array | Listing image URLs |
imageCount | Number | Image count |
videoUrl | String | Video URL when available |
Usage Examples
Basic Villa Search
Collect listings from the default Bangalore villas page:
{"url": "https://www.magicbricks.com/villa-for-sale-in-bangalore-pppfs","results_wanted": 20,"max_pages": 2}
Specific Bedroom Filter URL
Collect listings from a filtered MagicBricks results page:
{"url": "https://www.magicbricks.com/4-bhk-villa-for-sale-in-bangalore-pppfs","results_wanted": 30,"max_pages": 3}
Page Variant Input
Start from a page-specific URL and still collect a controlled number of listings:
{"url": "https://www.magicbricks.com/villa-for-sale-in-bangalore-pppfs/page-2","results_wanted": 15,"max_pages": 2}
With Proxy Configuration
Use the built-in proxy input only when you want the actor to run through Apify Proxy:
{"url": "https://www.magicbricks.com/villa-for-sale-in-bangalore-pppfs","results_wanted": 25,"max_pages": 2,"proxyConfiguration": {"useApifyProxy": true}}
Sample Output
{"id": "85289623","title": "4BHK Villa for Resale in Budigere","listingUrl": "https://www.magicbricks.com/propertyDetails-4-BHK-3195-Sqft-Villa-FOR-Sale-Budigere-in-Bangalore&id=AQAKzLzZnE9zpSvf+uAgZw==&category=Sale","pageUrl": "https://www.magicbricks.com/villa-for-sale-in-bangalore-pppfs","pageNumber": 1,"propertyType": "Villa","transactionType": "Resale","listingType": "Sale","city": "Bangalore","locality": "Budigere","price": 19500000,"priceText": "1.95 Cr","pricePerSqft": 6103,"bedrooms": "4","bathrooms": "4","balconies": "1","furnishing": "Unfurnished","facing": "West","ownership": "Freehold","status": "Ready to Move","areaSqft": 3195,"areaText": "3195 Sq-ft","carpetArea": "1950","advertiserName": "Poonam","contactType": "Owner","seoDescription": "Check out this one of its kind 4 BHK independent villa for sale at your preferred location of Budigere in Bangalore.","amenities": ["Banquet Hall","Jogging and Strolling Track","Outdoor Tennis Courts","Visitor Parking","Conference Room"],"nearbyLandmarks": [{"categoryId": "19210","name": "Budigere Bus Stop"},{"categoryId": "19202","name": "New Baldwin International School"}],"coordinates": {"latitude": 13.135110855102539,"longitude": 77.74694061279297},"imageCount": 9,"source": "magicbricks"}
Tips for Best Results
Use Search Result URLs
- Provide MagicBricks result pages, not blog pages or unrelated site pages
- Category and locality result URLs work best
Keep Initial Runs Small
- Start with
results_wanted: 20 - Increase page depth after validating the exact search you need
Normalize Page Inputs
- Canonical result URLs and page-specific variants are accepted
- The scraper normalizes page URLs before collecting data
Proxy Usage
- Leave
proxyConfigurationdisabled to run without proxy - Enable
proxyConfigurationin the actor input when you want to use Apify Proxy - Use proxy settings only when your target run requires them
Integrations
Connect your data with:
- Google Sheets โ Export results for manual review and analysis
- Airtable โ Build searchable property databases
- Make โ Trigger downstream automations
- Zapier โ Send listing data into business workflows
- Webhooks โ Push results into your own systems
Export Formats
- JSON โ For APIs and developers
- CSV โ For spreadsheets and quick analysis
- Excel โ For reporting and sharing
- XML โ For system integrations
Frequently Asked Questions
What kind of MagicBricks URLs can I use?
Use MagicBricks property search result URLs. Canonical result URLs, ?page=2 variants, and /page-2 variants are normalized automatically.
Can I scrape more than one page?
Yes. Set max_pages to the page depth you want to visit and results_wanted to the number of listings you need.
Do I have to use a proxy?
No. The actor runs without proxy unless you enable proxyConfiguration in the input.
Will empty fields appear in the dataset?
No. The scraper removes null and empty values before saving each item.
Does the actor collect images and landmarks?
Yes. When the listing provides them, image URLs and nearby landmarks are included in the output.
What happens if a page has no more listings?
The scraper stops pagination when a page returns no listings or no new unique listings.
Support
For issues or feature requests, contact support through the Apify Console.
Resources
Legal Notice
This actor is designed for legitimate data collection purposes. Users are responsible for ensuring compliance with website terms of service and applicable laws. Use the collected data responsibly and respect website policies and rate limits.