Graana Property Search Scraper
Pricing
from $3.00 / 1,000 results
Graana Property Search Scraper
Efficiently scrape property listings from Graana.com, Pakistan's leading real estate platform. Extract comprehensive data including residential and commercial properties, prices, locations, specifications, and agent details across major Pakistani cities for market analysis & investment intelligence
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer

Stealth mode
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Graana.com Property Search Scraper: Extract Pakistan Real Estate Data
Understanding Graana.com and Pakistan's Real Estate Market
Graana.com is Pakistan's premier online real estate marketplace, connecting buyers, sellers, and renters across major cities including Karachi, Lahore, Islamabad, and Rawalpindi. The platform aggregates thousands of property listings from individual sellers, real estate agencies, and developers, making it the central hub for understanding Pakistan's property market dynamics.
Unlike generic property portals, Graana specializes in Pakistani real estate with localized features: pricing in PKR, area measurements in marlas and kanals, neighborhood-specific data, and integration with local agencies. For investors analyzing market trends, agencies building databases, or researchers studying urban development, Graana provides unmatched visibility into property availability, pricing patterns, and demand across Pakistan's growing cities.
Manual data collection across multiple cities, property types, and price ranges would require endless clicking and copying. This scraper automates the entire process, transforming search results into structured datasets ready for analysis, investment decisions, or market intelligence.
What This Scraper Extracts and Who Should Use It
The Graana.com Property Search Scraper processes search result pages—the listings you see after filtering by location, type, or price range. It captures multiple properties per page, making it ideal for building comprehensive datasets across different searches and markets.
Key extracted data includes:
- Property identifiers: ID, custom titles, Propsure ID for tracking and referencing
- Classification: Purpose (sale/rent), type (residential/commercial), subtype (house, apartment, plot)
- Pricing & size: Price in PKR, area size, unit of measurement (marla, kanal, sq ft)
- Specifications: Bedrooms, bathrooms, total images available
- Location data: Area, city, area ID, city ID for geographic analysis
- Seller information: User ID, agency ID, agency name for seller profiling
- Status & timing: Property status, creation date for freshness tracking
- Visual assets: Property image URLs for display or analysis
Target users:
Real estate investors analyze market trends, identify undervalued properties, and track pricing across neighborhoods. Property agencies build inventory databases, monitor competitor listings, and identify market opportunities. Market researchers study urban development patterns, pricing trends, and housing availability. PropTech companies power property recommendation engines and valuation models with fresh market data. Urban planners understand housing supply distribution across cities.
Input Configuration: Targeting Property Searches
The scraper processes Graana search result URLs—pages displaying multiple properties after applying filters. Understanding URL parameters ensures you target the right data.
Example Input:
{"proxy": {"useApifyProxy": false},"max_items_per_url": 20,"ignore_url_failures": true,"urls": ["https://www.graana.com/sale/residential-properties-sale-karachi-169/?pageSize=30&page=2"]}
Example Screenshot:

Parameter breakdown:
proxy.useApifyProxy: Set false if Graana doesn't require proxy rotation, reducing costs. Set true with residential proxies if experiencing blocks.
max_items_per_url: Limits properties extracted per URL. Set to 20-30 to match typical page sizes. Graana displays 20-30 properties per page by default.
ignore_url_failures: Set true when scraping multiple URLs—individual failures won't stop your run. Essential for large-scale extraction.
urls array: Contains search result page URLs. Build these by:
- Searching on Graana.com with desired filters (city, type, price range)
- Copying the resulting URL
- For pagination, increment
page=parameter
URL structure example:
- Base:
graana.com/sale/residential-properties-sale-karachi-169/ - Filters:
?pageSize=30&page=2 - Purpose: sale vs rent
- Location: karachi-169 (city-ID)
- Type: residential vs commercial
Pro tip: Manually test searches on Graana to verify filters return relevant results before bulk scraping. For comprehensive datasets, create multiple URLs covering different cities, price ranges, and property types.
Complete Output Structure and Field Definitions
ID: Unique numeric identifier for each property (e.g., 145678). Purpose: Database primary key, tracking specific listings, deduplication.
Purpose: Transaction type—"sale" or "rent". Purpose: Fundamental classification for market segmentation, filtering investment vs. rental opportunities.
Type: Broad category—"residential" or "commercial". Purpose: Major property classification for market analysis and user filtering.
Custom Title Generated: Auto-generated property title combining key attributes. Purpose: Standardized naming for displays, searchability.
Subtype: Specific property category (house, apartment, plot, office, shop). Purpose: Detailed classification for precise market analysis and buyer matching.
Area ID / City ID: Numeric identifiers for neighborhood and city. Purpose: Geographic indexing, linking to location hierarchies, spatial analysis.
Price: Property price in Pakistani Rupees (PKR). Purpose: Core valuation metric, price comparison, market trend analysis, investment screening.
Size: Property area measurement value. Purpose: Price per unit calculations, size-based filtering, space analysis.
Size Unit: Measurement unit (marla, kanal, sq ft, sq yd). Purpose: Standardizing area measurements for accurate comparisons across listings.
User ID: Identifier of listing owner. Purpose: Tracking seller activity, identifying power users or agencies, seller reputation analysis.
Status: Property listing state (active, sold, pending). Purpose: Filtering available properties, tracking turnover rates, market velocity analysis.
Bed / Bath: Number of bedrooms and bathrooms. Purpose: Specification matching, lifestyle filtering, price-per-bedroom analysis.
Agency ID / Name: Real estate agency identifier and name. Purpose: Agency performance tracking, market share analysis, partnership opportunities.
Custom Title: User-defined property title. Purpose: Marketing copy analysis, SEO insights, seller positioning strategies.
Propsure ID: Insurance or verification identifier if applicable. Purpose: Property verification status, quality indicator.
Created At: Listing creation timestamp. Purpose: Freshness indicator, time-on-market calculations, posting pattern analysis.
Total Images: Count of property photos. Purpose: Listing quality indicator (more images = serious listings), visual asset availability.
Area / City: Human-readable location names. Purpose: Geographic filtering, user-friendly displays, location-based analysis.
Property Images: Array of image URLs. Purpose: Visual assets for displays, image analysis, quality assessment.
Sample Output:
[{"id": 1507267,"purpose": "buy","type": "residential","custom_title_generated": false,"subtype": "flat","area_id": 2509,"city_id": 169,"price": "15000000","size": 1000,"size_unit": "sqft","user_id": "e65c8de6-d945-4fe3-b3e1-1af0a81fddb0","status": "published","bed": 2,"bath": 2,"agency_id": 22669,"custom_title": "1000 Ft² Flat for Sale","propsure_id": null,"created_at": "2026-01-01T06:50:23.276Z","total_images": "12","name": "Shahzaib Ali","area": {"id": 2509,"name": "Gulistan-e-Jauhar Block 3A"},"city": {"id": 169,"name": "Karachi"},"property_images": [{"id": 10694094,"url": "/images/original/760fc989e75bd77932a494fbf2321a19","type": "cover","updated_at": "2026-01-01T06:50:23.291Z"},{"id": 10694109,"url": "/images/original/2bf6429fcf6d0d5b64394c277d539d34","type": "image","updated_at": "2026-01-01T06:50:23.334Z"},{"id": 10694108,"url": "/images/original/59a582d9d6001d37476bec273db99492","type": "image","updated_at": "2026-01-01T06:50:23.330Z"},{"id": 10694107,"url": "/images/original/147dc143b55588cc48dc61ec052e57b0","type": "image","updated_at": "2026-01-01T06:50:23.326Z"},{"id": 10694106,"url": "/images/original/5606559b4fefb6c96f8c1fc2ebe3226e","type": "image","updated_at": "2026-01-01T06:50:23.322Z"},{"id": 10694105,"url": "/images/original/86e0322fe34d45ee665a635074c82a2e","type": "image","updated_at": "2026-01-01T06:50:23.319Z"},{"id": 10694104,"url": "/images/original/06ee79a4403d835d18135e69f594497b","type": "image","updated_at": "2026-01-01T06:50:23.315Z"},{"id": 10694103,"url": "/images/original/976ddd942acb799d3113922a9018b545","type": "image","updated_at": "2026-01-01T06:50:23.311Z"},{"id": 10694102,"url": "/images/original/15987f176c888d33a9e09494b4a24ee1","type": "image","updated_at": "2026-01-01T06:50:23.307Z"},{"id": 10694100,"url": "/images/original/42db15d64dd527437f5dc843cd6a2438","type": "image","updated_at": "2026-01-01T06:50:23.303Z"},{"id": 10694098,"url": "/images/original/3d18f983e997775088c4c47182c3d76f","type": "image","updated_at": "2026-01-01T06:50:23.299Z"},{"id": 10694096,"url": "/images/original/53fca5c87be976bd90107b079b521967","type": "image","updated_at": "2026-01-01T06:50:23.295Z"}],"from_url": "https://www.graana.com/sale/residential-properties-sale-karachi-169/?pageSize=30&page=2"}]
Step-by-Step Implementation
1. Define Target Market: Decide which cities, property types, and price ranges you need. Test searches on Graana.com to ensure filters return relevant results.
2. Build URL Collection: Copy search result URLs. For comprehensive data, create URLs covering multiple cities (Karachi, Lahore, Islamabad), property types (houses, apartments, plots), and purposes (sale, rent).
3. Handle Pagination: For deep extraction, include multiple page URLs: page=1, page=2, etc. Alternatively, set max_items_per_url higher (50-100) to auto-handle pagination.
4. Configure Input JSON: Set up with collected URLs. Enable ignore_url_failures for robustness when scraping 10+ URLs.
5. Execute Run: Launch via Apify console. Monitor progress. Processing 5-10 search pages typically completes in 2-4 minutes.
6. Validate Data: Check that prices, locations, and specifications look correct. Verify property images are accessible.
7. Export & Analyze: Export as JSON for databases or CSV for spreadsheets. Filter by status="active" for current availability.
Error handling: Verify URLs are search pages, not individual property detail pages. Check pagination parameters are valid. Activity logs provide detailed error information.
Strategic Applications for Real Estate Intelligence
Market Price Analysis: Track price trends across neighborhoods and cities. Calculate price-per-marla or price-per-sq-ft by area. Identify undervalued properties where pricing is below area averages.
Investment Opportunity Identification: Filter properties by price range, size, and location. Track new listings in target areas. Identify motivated sellers through pricing changes or long listing durations.
Competitive Intelligence: Monitor agency listing volumes and market share. Analyze competitor pricing strategies and property positioning. Identify which agencies dominate specific neighborhoods.
Supply-Demand Dynamics: Track listing creation rates by area. Monitor how quickly properties change from active to sold status. Identify high-demand neighborhoods with limited supply.
Neighborhood Profiling: Aggregate data by area to understand typical property types, price ranges, and specifications. Identify emerging neighborhoods with increasing listing activity.
Pricing Trend Forecasting: Historical scraping reveals price movements over time. Seasonal patterns, area-specific appreciation rates, and market cycles become visible.
Maximizing Data Value
Schedule Regular Scraping: Weekly scraping captures new listings and price changes. Monthly patterns reveal seasonal trends in Pakistan's property market.
Geographic Segmentation: Create separate datasets for major cities. Within cities, segment by neighborhoods (DHA, Bahria Town, Gulberg) for localized analysis.
Size Unit Standardization: Convert all measurements to common unit (sq ft) for accurate comparisons. 1 marla = 225 sq ft, 1 kanal = 20 marlas = 4,500 sq ft.
Price Normalization: Calculate price-per-unit metrics (PKR per marla, PKR per sq ft) for meaningful comparisons across differently-sized properties.
Agency Performance Tracking: Rank agencies by listing volume, average pricing, and geographic focus. Identify top performers for potential partnerships.
Quality Indicators: Use bed/bath ratios, image counts, and custom title quality as listing quality signals. Correlate quality with time-on-market.
Historical Tracking: Store scraped data with timestamps. Track when properties appear, when they're updated, when they sell. Calculate average time-on-market by area and type.
Data Enrichment: Combine with Google Maps API for coordinates. Cross-reference with census data for neighborhood demographics. Integrate with economic indicators for macro analysis.
Data Governance Best Practices
Refresh Frequency: Active market segments (high-demand areas) need weekly updates. Slower markets can be scraped bi-weekly or monthly.
Duplicate Handling: Same property may be listed by multiple agencies. Use property address, size, and price combinations to identify duplicates.
Data Validation: Flag anomalies—unrealistic prices (too high/low), missing critical fields (price, location), impossible specifications (50 bedrooms).
Respect Rate Limits: Space out large scraping runs. Process 100-200 URLs per hour to avoid overwhelming the platform.
Privacy Compliance: User IDs and agency contacts may be personal data. Store securely, use only for intended purposes, implement access controls.
Attribution: Always store source URLs and scrape timestamps for verification and data freshness tracking.
Conclusion
The Graana.com Property Search Scraper transforms Pakistan's leading real estate platform into actionable market intelligence. Whether identifying investment opportunities, building property databases, or analyzing market trends, this tool delivers comprehensive data across Pakistan's dynamic property markets. Start extracting real estate insights today.