28Hse Scraper | Hong Kong Real Estate
Pricing
from $1.79 / 1,000 results
28Hse Scraper | Hong Kong Real Estate
Extract structured Hong Kong real estate property listings from 28Hse with prices, estate names, districts, bedroom counts, saleable area, and enriched listing details. Built for enterprise-grade Hong Kong real estate intelligence, pricing analysis, and automated property data pipelines.
Pricing
from $1.79 / 1,000 results
Rating
0.0
(0)
Developer
Fatih Tahta
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
0
Monthly active users
11 days ago
Last modified
Categories
Share
28Hse.com Scraper | Hong Kong Real Estate Data
Slug: fatihtahta/28hse-scraper
Overview
28Hse.com Scraper collects structured Hong Kong property listing data, including listing URLs, titles, prices, estate names, districts, bedroom counts, saleable area, and other listing-level attributes. When enabled, it can also return richer listing detail data such as agent information, media assets, location coordinates, nearby places, recent transactions, and estate metadata. 28Hse.com is a widely used Hong Kong real estate marketplace, making it a valuable source for tracking residential and commercial property supply, pricing, and listing activity. This actor helps automate collection across searches and direct listing URLs so teams can work with consistent JSON output instead of manual copy-paste. The result is faster research, cleaner pipelines, and less operational overhead.
Why Use This Actor
- Market researchers and analysts: Track asking prices, listing volume, property mix, and area-level supply for trend analysis, dashboards, and benchmarking.
- Product and content teams: Build listing feeds, neighborhood pages, market snapshots, and editorial datasets with consistent property attributes.
- Developers and data engineers: Send structured listing records directly into ETL jobs, internal databases, APIs, and analytics workflows.
- Lead generation and enrichment teams: Enrich property records with listing context, estate details, and contact-related metadata where available.
- Monitoring and competitive intelligence teams: Watch selected searches, estates, districts, or listing URLs over time to detect changes in pricing and inventory.
Input Parameters
Provide any combination of URLs, queries, and filters. Leave optional fields empty to collect broader results.
| Parameter | Type | Description | Default |
|---|---|---|---|
enrich_data | boolean | When true, returns richer listing detail fields in addition to the standard listing record. | false |
listingMode | string | Transaction type for query-based searches. Allowed values: buy (For sale), rent (For rent). | buy |
queries | string[] | Free-text search terms to run on 28Hse, such as estate names, districts, or property keywords. | – |
propertyType | string | Property type filter for query-based runs. Allowed values: apartment, carpark, office, shop, land, oversea. | – |
location | string | Location filter for query-based runs. Allowed values: hk_only, hong_kong_island, kowloon, new_territories, outlying_islands, oversea. | – |
minPrice | integer | Minimum listing price in HKD. Leave empty for no lower bound. | – |
maxPrice | integer | Maximum listing price in HKD. Leave empty for no upper bound. | – |
minSaleableArea | integer | Minimum saleable area in square feet. | – |
maxSaleableArea | integer | Maximum saleable area in square feet. | – |
bedrooms | string[] | Bedroom filter for query-based runs. Allowed values: studio, 1, 2, 3, 4, 5+. Multiple values are supported. | – |
limit | integer | Maximum number of records to save for each query or direct URL seed. Leave empty to collect all available results. | – |
startUrls | string[] | One or more direct 28Hse listing page URLs to collect. | – |
proxyConfiguration | object | Connection settings for Apify proxy or a custom proxy configuration. | Apify proxy enabled with RESIDENTIAL group |
Example Inputs
Scenario: query-driven run
{"queries": ["Tsing Yi", "Lai Chi Kok"],"listingMode": "buy","propertyType": "apartment","location": "kowloon","bedrooms": ["2", "3"],"limit": 150}
Scenario: direct URL run
{"startUrls": ["https://www.28hse.com/en/buy/apartment/property-3789134","https://www.28hse.com/en/buy/apartment/property-3788395"],"enrich_data": true,"listingMode": "buy","propertyType": "apartment","limit": 20}
Scenario: filtered targeted run
{"queries": ["Liberte", "Mount Haven"],"listingMode": "buy","minPrice": 6000000,"maxPrice": 9000000,"minSaleableArea": 450,"maxSaleableArea": 700,"bedrooms": ["2"],"limit": 100}
Output
6.1 Output destination
The actor writes results to the default Apify dataset as normalized JSON property listing records. Successful listing rows use grouped snake_case fields so humans, ETL jobs, BI tools, CRMs, and AI agents can consume the data without first untangling flat source fields.
6.2 Record envelope
Every normal listing row starts with these stable fields:
- record_type (string, required): Record category. Normal listing rows use
property_listing. - record_id (string, required): Stable listing identifier for deduplication and upserts. Uses the 28Hse listing ID when available.
- source_context (object, required): Source URLs, seed context, page index, and external IDs for auditability.
- entity (object, required): Primary listing title, description, URL, and source IDs.
Recommended idempotency key: record_type + ":" + record_id
6.3 Examples
Example: standard property listing
{"record_type": "property_listing","record_id": "3788395","source_context": {"source_name": "28Hse","source_domain": "www.28hse.com","source_url": "https://www.28hse.com/en/property/dosearch","loaded_url": "https://www.28hse.com/en/property/dosearch","listing_url": "https://www.28hse.com/en/buy/apartment/property-3788395","canonical_url": "https://www.28hse.com/en/buy/apartment/property-3788395","search_url": "https://www.28hse.com/en/property/dosearch","seed_id": "bd5ea23885c1","seed_type": "query","page_index": 1,"detail_enriched": false,"external_ids": {"listing_id": "3788395"}},"entity": {"title": "Rent exceeds 3%, rare and unique unit with rooftop terrace","url": "https://www.28hse.com/en/buy/apartment/property-3788395","external_ids": {"listing_id": "3788395"}},"listing": {"listing_id": "3788395","transaction_type": "sale","posted_text": "23 seconds ago posted"},"pricing": {"price_text": "Sell HKD$7.3 Millions","price": 7300000,"currency": "HKD"},"location": {"district": "Tsing Yi"},"property": {"property_type": "Apartment","bedrooms": 2,"saleable_area_sqft": 561,"gross_area_sqft": 678,"direction": "North west","unit_description": "Unit B,High Floor,BLOCK 1"},"relationships": {"agency": {"name": "Midland Realty International Limited"},"building": {"name": "Mount Haven"}},"attributes": {"tags": ["2 Bedrooms","North west","Apartment","SHKP","Garden view","Elegant"]}}
Example: enriched property listing
{"record_type": "property_listing","record_id": "3789134","source_context": {"source_name": "28Hse","source_domain": "www.28hse.com","source_url": "https://www.28hse.com/en/property/dosearch","loaded_url": "https://www.28hse.com/en/property/dosearch","listing_url": "https://www.28hse.com/en/buy/apartment/property-3789134","canonical_url": "https://www.28hse.com/en/buy/apartment/property-3789134","search_url": "https://www.28hse.com/en/property/dosearch","seed_id": "5589bfff9e2c","seed_type": "query","page_index": 4,"detail_enriched": true,"external_ids": {"listing_id": "3789134","reference_number": "MOD436"}},"entity": {"title": "Exclusive agency, familiar property owners, open to all with tickets, immediate viewing with keys.","description": "Best Buy, Best Buy in the market, Negotiable, Spacious","url": "https://www.28hse.com/en/buy/apartment/property-3789134","external_ids": {"listing_id": "3789134"}},"listing": {"listing_id": "3789134","reference_number": "MOD436","transaction_type": "sale","posted_text": "3 hours ago posted","published_at": "2026-03-28T16:11:39+08:00","updated_at": "2026-03-28T16:11:39+08:00","expires_at": "2026-04-27T16:11:39+08:00"},"pricing": {"price_text": "Sell HKD$8.1 Millions","price": 8100000,"currency": "HKD","price_per_sqft_text": "@16,497"},"location": {"full_address": "Kowloon Lai Chi Kok Liberte No.833 Lai Chi Kok Road","district": "Lai Chi Kok","latitude": 22.334587,"longitude": 114.148849},"property": {"property_type": "Apartment","bedrooms": 2,"saleable_area_sqft": 491,"gross_area_sqft": 647,"direction": "North","floor_zone": "Middle Floor","unit_description": "Unit E,Mid Floor,BLOCK 8, Middle Floor","features": ["Decoration","View","Simple","Good view","City view","Shopping Mall nearby","Clubhouse","MTR nearby"]},"media": {"image_urls": ["https://i1.28hse.com/2026/03/202603281610391162707_large.jpg"],"floorplan_urls": ["https://i1.28hse.com/estate_data/64/2510/FLOOR/2510_20231116200247885351_large.jpg"]},"contact_details": {"methods": ["phone","whatsapp","wechat","message"],"wechat_id": "manicml","wechat_qr_url": "https://u.wechat.com/IFuCvdO7-cnoBhivKdUGTYs?s%3D4=","wechat_message": "Hello Mani Chan , I have just seen your property listing from 28Hse Liberte Sell HKD$8.1 Millions Property(ID:3789134) . Please provide me more details.","message_template": "Hello Mani Chan , I have just seen your property listing from 28Hse Liberte Sell HKD$8.1 Millions Property(ID:3789134) . Please provide me more details.","contacts": [{"name": "Mani Chan","license_number": "S467585","avatar_url": "https://i1.28hse.com/2026/03/202603261009002493037_thumb.jpg","avatar_large_url": "https://i1.28hse.com/2026/03/202603261009002493037_large.jpg","wechat_id": "manicml","wechat_qr": "https://u.wechat.com/IFuCvdO7-cnoBhivKdUGTYs?s%3D4=","name_card_url": "https://i1.28hse.com/2026/03/202603261328385819675_large.jpg","available_actions": ["phone","whatsapp","wechat","message"]}]},"relationships": {"agent": {"name": "Centaline Property","profile_url": "https://www.28hse.com/en/agent/4625","office_address": "長沙灣深盛路9號宇晴匯2樓88號舖","license_number": "S467585","avatar_url": "https://i1.28hse.com/2026/03/202603261009002493037_large.jpg","name_card_url": "https://i1.28hse.com/2026/03/202603261328385819675_large.jpg"},"agency": {"name": "Centaline Property","license_number": "C-000227","image_url": "https://www.28hse.com/assets/images/agent4/CENTALINE.jpg","listing_count": 148},"building": {"name": "Liberte"},"related_listings": [{"title": "2 Bedrooms ( 45 )","price_range": "$6.9M - $9M","url": "https://www.28hse.com/en/buy/apartment/a2/dg27/di27-64/c2510?roomRange=2"}]},"attributes": {"tags": ["2 Bedrooms , 1 Bathroom","North","Apartment","Lai Chi Kok","Liberte","For Sale Property Detail Page"],"labels": ["Apartment","Shun Tak","Golden Ads","3 hours ago posted"],"neighborhood_details": {"nearby_places": [{"category": "Trans","name": "Banyan Garden, Sham Shing Road( Bus Stop )","distance": "2 min Walk"}]},"market_context": {"recent_transactions": [{"unit_id": "163430","estate": "Liberte","unit": "Flat A, 29/F, Block 3","url": "https://www.28hse.com/en/estate/detail/liberte-2510/history/blockno-3/unitid-163430","date": "2026-03-25","source": "Land Registry","area": "512ft²","price": "HKD$8.2 M","unit_price": "@ $16,016"}]},"source_specific": {"property_details": {"Sell Price": "Sell HKD$8.1 Millions","Gross Area": {"value": "647 ft²","subvalues": ["Unit Price: @12,519"]},"Saleable Area": {"value": "491 ft²","subvalues": ["Unit Price: @16,497"]},"Room and Bathroom": "2 Bedrooms 1 Bathroom","Kitchen type": "Separate Kitchen"},"estate_details": {"Estate Entry Date": "2003-08-08","Unit Desc": "2,434 Units","Carpark": "487","Block Desc": "7 Towers","Developer": "Shun Tak"}}}}
Field reference
Top-level fields
- record_type (string, required): Normal property rows use
property_listing. - record_id (string, required): Stable listing identifier. Listing IDs stay strings.
- source_context (object, required): Source name, domain, source URL, listing URL, loaded URL, search URL, seed context, page index, enrichment flag, and external IDs.
- entity (object, required): Listing title, description, URL, and entity-level IDs.
- listing (object, optional): Listing ID, reference number, sale/rent mode, posted text, publish/update/expiry timestamps.
- pricing (object, optional): Displayed price text, normalized numeric price when safe, currency, and price-per-square-foot display text.
- location (object, optional): Displayed address, district, latitude, and longitude when provided by the source.
- property (object, optional): Property type, bedroom/bathroom counts, area fields, direction, floor zone, unit description, and feature labels.
- media (object, optional): Listing image URLs and floor plan URLs.
- contact_details (object, optional): Contact methods, WeChat fields, message templates, and structured contact entries.
- relationships (object, optional): Agent, agency, building or estate, and related listing links.
- attributes (object, optional): Tags, labels, nearby places, market context, and source-specific detail maps.
Nested preservation fields
- attributes.source_specific.property_details preserves the source-labeled property detail map from enriched listing pages.
- attributes.source_specific.estate_details preserves the source-labeled estate/building detail map.
- attributes.neighborhood_details.nearby_places stores nearby transportation, mall, food, school, bank, hospital, and other place rows.
- attributes.market_context.recent_transactions stores contextual transaction rows shown by 28Hse. Treat these as source-provided context, not a complete market history.
- relationships.related_listings stores related unit links and price ranges from the listing context.
Data guarantees & handling
- Best-effort extraction: fields may vary by region, session, availability, and UI experiments on the source site.
- Optional fields: null-check in downstream code because some attributes may be absent on certain listings.
- Deduplication: recommend
record_type + ":" + record_id.
How to Run on Apify
- Open the actor in Apify Console.
- Enter one or more search queries or direct listing URLs, then choose any filters you want to apply.
- Set the listing mode and the maximum number of records to collect per seed.
- Enable enriched data if you want extended listing details in each record.
- Click Start and wait for the run to finish.
- Download the dataset in JSON, CSV, Excel, or another supported format.
Scheduling & Automation
Scheduling
Automated Data Collection
You can schedule recurring runs to keep your property dataset current without manual restarts. This is useful for ongoing market monitoring, reporting, and downstream automation.
- Navigate to Schedules in Apify Console
- Create a new schedule (daily, weekly, or custom cron)
- Configure input parameters
- Enable notifications for run completion
- Optional: add webhooks for automated processing
Integration Options
- Webhooks: Trigger downstream actions when a run completes
- Zapier: Connect to 5,000+ apps without coding
- Make (Integromat): Build multi-step automation workflows
- Google Sheets: Export results to a spreadsheet
- Slack/Discord: Receive notifications and summaries
- Email: Send automated reports via email
Performance
Estimated run times:
- Small runs (< 1,000 outputs): ~2–3 minutes
- Medium runs (1,000–5,000 outputs): ~5–15 minutes
- Large runs (5,000+ outputs): ~15–30 minutes
Execution time varies based on filters, result volume, and how much information is returned per record.
Compliance & Ethics
Responsible Data Collection
This actor collects publicly available real estate listing and market information from https://www.28hse.com for legitimate business purposes, including real estate research and market analysis, listing monitoring and benchmarking, and data enrichment for internal tools and reporting. Users are responsible for ensuring their use of the collected data complies with applicable laws, regulations, and the source site’s terms. This section is informational and not legal advice.
- Real estate research and market analysis
- Listing monitoring and competitive tracking
- Data enrichment and internal analytics
Best Practices
- Use collected data in accordance with applicable laws, regulations, and the target site’s terms
- Respect individual privacy and personal information
- Use data responsibly and avoid disruptive or excessive collection
- Do not use this actor for spamming, harassment, or other harmful purposes
- Follow relevant data protection requirements where applicable, including GDPR and CCPA
Support
For help, open an issue on the actor page in Apify Console. Include the input you used with any sensitive values redacted, the run ID, a short description of expected versus actual behavior, and a small output sample if useful.