Chotot.com Scraper | Vietnam Classifieds & Property avatar

Chotot.com Scraper | Vietnam Classifieds & Property

Pricing

from $2.50 / 1,000 results

Go to Apify Store
Chotot.com Scraper | Vietnam Classifieds & Property

Chotot.com Scraper | Vietnam Classifieds & Property

Cho Tot scraper & API (Vietnam classifieds): search listings by keyword and category and export title, price, description, location, seller, attributes, photos, date and URL. Vietnam marketplace and resale market data plus seller lead gen — fast, no login.

Pricing

from $2.50 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

23

Total users

0

Monthly active users

a day ago

Last modified

Features

Limited permissions

Share

Chotot.com Scraper — Vietnam Classifieds, Real Estate, Cars, Motorbikes & Electronics Data Extractor

Extract structured listings from Chotot.com (Chợ Tốt) — Vietnam's largest online classifieds and property marketplace. Scrape real estate (Bất động sản — apartments, houses, land, rooms for rent), used cars (Ô tô), motorbikes (Xe máy), trucks, smartphones, laptops, home appliances, and fashion across Ho Chi Minh City (HCMC), Hanoi, Da Nang, Hai Phong, Can Tho, Binh Duong, Dong Nai, and nationwide. Returns normalized VND prices, human-readable Vietnamese price labels (triệu / tỷ VND), GPS coordinates, property specs (m², bedrooms, legal documents Sổ đỏ/Sổ hồng), vehicle specs (make, model, year, mileage, fuel, transmission), verified seller badges, and optional seller phone numbers.

Apify Actor


⚡ At a glance

CapabilityDetails
Target PlatformChotot.com (Chợ Tốt — Vietnam's #1 peer-to-peer & dealer marketplace)
Supported CategoriesReal Estate (1000): Apartments (1010), Houses (1020), Land (1040), Rooms (1050) · Vehicles: Cars (2010), Motorbikes (2020), Trucks (2050) · Electronics & Goods: Phones (5010), Laptops (5030), TV/Audio (5020), Appliances (9000), Fashion (3000) · All Categories (all)
Geographic ScopeAll Vietnam (0), Hồ Chí Minh (12000), Hà Nội (13000), Đà Nẵng (15000), Hải Phòng (17000), Cần Thơ (19000), Bình Dương (24000), Đồng Nai (25000), Khánh Hòa (48000)
Key Extracted FieldslistingId, subject, price (VND), priceDisplay, category, type (Bán/Cho thuê), region, district, ward, latitude, longitude, sellerName, isVerified, images, date
Detail Enrichment (scrapeDetails)Adds sellerPhone, full description, complete photo gallery, and additional property/vehicle attributes
Pagination & ScaleAutomatic offset pagination (maxPages: 0 = unlimited, governed by maxRecords up to 1,000–50,000+ listings)
DeduplicationBuilt-in deduplication by listingId across pages and categories (0% duplicates)
Export FormatsJSON, JSONL, CSV, Excel (XLSX), XML, HTML Table, REST API, Webhooks

🔎 Why scrape Chotot.com (Chợ Tốt)?

Chotot.com (Chợ Tốt) is Vietnam's largest consumer and commercial classifieds ecosystem, hosting millions of active listings posted daily by property brokers, landlords, auto dealerships, motorbike traders, electronics resellers, and private individuals.

Collecting clean Chotot market data at scale requires overcoming several platform-specific hurdles:

  • Raw đồng integers & Vietnamese shorthand: Prices range from tens of thousands of đồng (50.000 VND) to tens of billions (15.500.000.000 VND = 15.5 tỷ VND). Having both the raw numeric integer (price) for math and the formatted Vietnamese label (priceDisplay) for reporting saves hours of post-processing.
  • Coded vehicle & property attributes: Chotot encodes transmission (1 = Tự động, 2 = Số sàn), fuel (1 = Xăng, 2 = Dầu diesel, 3 = Điện, 4 = Hybrid), deal type (s = Bán, u/k = Cho thuê), and colors as internal numeric codes.
  • Location vs. living area collision: In Chotot's raw data, area is an internal district code while size is the actual property square meterage (m²) — naive scrapers mix them up and corrupt vehicle rows with location codes.

This Chotot scraper handles all of those translations automatically, delivering a universal flat schema with accurate m² property areas, translated Vietnamese vehicle specs, WGS-84 GPS coordinates, ISO posting dates, and high-resolution CDN image URLs.


✨ What this Chotot data extractor does

  • 🏘️ Full Real Estate Coverage (Bất động sản): Scrape all property (1000) or target Apartments/Condos (1010), Houses (1020), Land (1040), and Rooms for Rent (1050) with area (m²), bedroomCount, bathroomCount, houseDirection, legalDocument (Sổ hồng/Sổ đỏ), furniture, and floorCount.
  • 🛵 Vietnam Automotive & Motorbike Intelligence (Xe cộ): Extract Cars (2010), Motorbikes (2020), and Trucks (2050) with make, model, year, mileage (km), transmission, fuelType, color, seats, and origin.
  • 📱 Electronics, Appliances & Consumer Goods: Monitor second-hand Phones (5010), Laptops (5030), TVs & Audio (5020), Home Appliances (9000), and Fashion (3000).
  • 🔓 Unlocked 1,000+ Deep Pagination: With maxPages: 0 by default, the actor paginates across 20-listing offsets until maxRecords is reached — scaling cleanly to 1,000+ listings per category or balanced across all categories (category: "all").
  • 📍 Ward, District & GPS Precision: Captures the full 3-tier Vietnamese administrative hierarchy (region → district → ward) plus latitude and longitude on nearly 100% of listings.
  • 📞 Optional Detail & Phone Enrichment (scrapeDetails: true): Fetches each listing's detail record to populate sellerPhone, full un-truncated description, complete images gallery, and backfilled property/vehicle specs.

🎯 High-value use cases & Vietnam market intelligence

1. Vietnam PropTech, AVM & Real Estate Analytics

Track asking prices and VND/m² across Ho Chi Minh City (Quận 1, Quận 2 / Thủ Đức, Quận 7, Bình Thạnh), Hanoi (Cầu Giấy, Đống Đa, Hà Đông, Nam Từ Liêm), and Da Nang. Compare sale (Bán) vs. rental (Cho thuê) yields.

2. Used Car & Motorbike Residual Value Benchmarking

Vietnam is one of the world's largest two-wheeler markets and a rapidly growing automotive market. Track depreciation curves for Honda (Vision, SH, Wave, Air Blade), Yamaha, VinFast EVs, Toyota, Hyundai, Kia, and Mazda by registration year and mileage.

3. B2B Seller, Broker & Dealer Lead Generation

Combine sellerName, isVerified, region, district, and sellerPhone (with scrapeDetails: true) to build targeted outreach lists of active property brokers, car dealers, and high-volume electronics merchants.

4. Recommerce & Second-Hand Electronics Arbitrage

Monitor live asking prices for used iPhones, Samsung Galaxy devices, MacBooks, and gaming laptops across HCMC and Hanoi to spot underpriced inventory and benchmark trade-in values.

5. Urban Economics, Relocation & GIS Mapping

Use latitude, longitude, ward, district, and price to generate heatmaps of housing affordability, commercial density, and EV adoption across Vietnamese provinces.


📥 Input parameters

All fields are optional. Running with empty input automatically extracts a balanced 100-listing sample across all major categories.

ParameterTypeDefault / PrefillDescription
categorystringDefault "all" (Prefill "1000")Category code from the dropdown:
• "all" — Mixed sample across Real Estate, Cars, Motorbikes, Phones, Laptops & Appliances
• "1000" — Real Estate (All) · "1010" Apartments · "1020" Houses · "1040" Land · "1050" Rooms for Rent
• "2010" — Cars (Ô tô) · "2020" — Motorbikes (Xe máy) · "2050" — Trucks (Xe tải)
• "5010" — Phones · "5030" — Laptops · "5020" — TVs & Audio · "9000" — Home Appliances · "3000" — Fashion
regionstring"12000" (HCMC)City or province filter:
• "0" — All Vietnam (Nationwide)
• "12000" — Hồ Chí Minh (HCMC) · "13000" — Hà Nội · "15000" — Đà Nẵng · "17000" — Hải Phòng
• "19000" — Cần Thơ · "24000" — Bình Dương · "25000" — Đồng Nai · "48000" — Khánh Hòa
scrapeDetailsbooleanfalseOpen each listing's detail endpoint to extract sellerPhone, full description, complete photo gallery, and extra property/vehicle specs.
maxRecordsinteger100Maximum number of listings to collect (0 = unlimited). Set to 1000+ for deep pulls. (Also accepts maxItems / maxListings).
maxPagesinteger0Optional cap on result pages per category (20 listings/page). 0 = unlimited (governed by maxRecords).
requestDelayinteger500Pause between API requests in milliseconds (200 to 5000).
proxyConfigurationobject{ "useApifyProxy": true }Apify Proxy configuration. Enabled by default for smooth, uninterrupted pagination at scale.

🛠️ Input recipes & examples

Recipe 1: Deep 1,000+ Ho Chi Minh City real estate sweep

Collect 1,500 apartments, houses, and land listings in Ho Chi Minh City:

{
"category": "1000",
"region": "12000",
"scrapeDetails": false,
"maxRecords": 1500,
"maxPages": 0,
"requestDelay": 500,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Recipe 2: Used cars (Ô tô) nationwide with seller phone numbers

Extract 500 used car listings across all of Vietnam (region: "0") with detail enrichment enabled:

{
"category": "2010",
"region": "0",
"scrapeDetails": true,
"maxRecords": 500,
"maxPages": 0,
"requestDelay": 500
}

Recipe 3: Multi-category nationwide marketplace snapshot (1,200 listings)

Pull 1,200 listings balanced evenly across Real Estate, Cars, Motorbikes, Phones, Laptops, and Home Appliances in Hanoi:

{
"category": "all",
"region": "13000",
"scrapeDetails": false,
"maxRecords": 1200,
"maxPages": 0
}

📤 Output schema & field reference

Every listing shares a unified flat JSON schema so property, automotive, and electronics records can be analyzed together.

🏷️ Core Listing, Price & Location Fields

FieldTypeCoverageDescription
listingIdstring🟢 High (100%)Unique Chotot ad ID (list_id). Primary deduplication key.
subjectstring🟢 High (100%)Listing headline in Vietnamese.
categorystring🟢 High (100%)Vietnamese category name ("Căn hộ/Chung cư", "Nhà ở", "Ô tô", "Xe máy", "Điện thoại", etc.).
typestring🟢 High (100%)Transaction type: "Bán" (For Sale) or "Cho thuê" (For Rent).
pricenumber🟢 High (~99%)Numeric price in Vietnamese đồng (VND, e.g., 6500000, 2850000000).
priceDisplaystring🟢 High (~99%)Human-readable Vietnamese price string (e.g., "7 triệu VND", "2.9 tỷ VND").
regionstring🟢 High (100%)City or province name ("Tp Hồ Chí Minh", "Hà Nội", "Đà Nẵng").
districtstring🟢 High (100%)District name ("Quận 7", "Quận Cầu Giấy", "Thành phố Thủ Đức").
wardstring🟢 High (~96%)Ward / commune name ("Phường Tân Phong", "Phường Kiến Hưng").
latitude / longitudenumber🟢 High (~99%)WGS-84 GPS coordinates for map plotting and spatial queries.
conditionstring🟡 ConditionalItem condition ("Đã sử dụng" = Used, "Mới" = New) on vehicles/electronics/goods.

🏠 Real Estate Specific Fields (1000–1050)

FieldTypeCoverage (Property)Description
areanumber🟢 High (~98% Property)Living or land area in square meters (m²). Cleanly nulled on non-property listings.
bedroomCountnumber🟢 High (~85% Apartments/Houses)Number of bedrooms (phòng ngủ).
bathroomCountnumber🟢 High (~80% Apartments/Houses)Number of bathrooms (phòng vệ sinh).
legalDocumentstring🟡 ConditionalLegal ownership status (Sổ hồng, Sổ đỏ, Hợp đồng mua bán).
houseDirectionstring🟡 ConditionalFacing direction (Đông, Tây, Nam, Bắc, Đông Nam, etc.).
furniturestring🟡 ConditionalFurnishing status (Nội thất đầy đủ, Nội thất cơ bản, Nhà trống).
floorCountnumber🟡 ConditionalTotal number of floors (for houses/buildings).

🚗 Vehicle Specific Fields (2010, 2020, 2050)

FieldTypeCoverage (Vehicles)Description
makestring🟢 High (~98% Cars/Bikes)Vehicle manufacturer ("Toyota", "Honda", "Hyundai", "VinFast", "Yamaha").
modelstring🟢 High (~95% Cars/Bikes)Vehicle model ("Vios", "Air Blade", "VF 5", "Accent").
yearnumber🟢 High (~95% Cars/Bikes)Registration / manufacture year (e.g., 2022).
mileagenumber🟢 High (~90% Used Vehicles)Odometer reading in kilometers (km).
transmissionstring🟢 High (~95% Cars)Translated transmission type ("Tự động" = Automatic, "Số sàn" = Manual).
fuelTypestring🟢 High (~95% Cars)Translated fuel type ("Xăng" = Petrol, "Dầu diesel", "Điện" = Electric, "Hybrid").
colorstring🟡 ConditionalTranslated exterior color ("Trắng", "Đen", "Đỏ", "Bạc", etc.).
seats / originnumber/string🟡 ConditionalNumber of seats and manufacturing origin ("Việt Nam", "Nhập khẩu").

👤 Seller, Media & Timestamp Fields

FieldTypeCoverageDescription
sellerNamestring🟢 High (100%)Seller or shop display name.
isVerifiedboolean🟢 High (100%)true if the seller holds Chotot's verified account/shop badge.
sellerPhonestring🟡 Conditional (scrapeDetails)Seller phone number fetched from the detail API when scrapeDetails: true.
descriptionstring🟢 High (100%)Ad description text (summary in list mode, full text in detail mode).
imagesarray<string>🟢 High (~98%)Array of direct cdn.chotot.com photo URLs.
listingUrlstring🟢 High (100%)Direct URL to the listing (https://www.chotot.com/{listingId}.htm).
datestring🟢 High (100%)Normalized ISO posting date (YYYY-MM-DD).
datePostedstring🟢 High (~98%)Relative Vietnamese timestamp string when provided.
scrapedAtstring🟢 High (100%)ISO-8601 UTC extraction timestamp.

📋 Sample JSON output

{
"listingId": "135580725",
"subject": "Cho thuê căn hộ 70m2, 2 ngủ, 1 vệ sinh đầy đủ nội thất",
"category": "Căn hộ/Chung cư",
"type": "Cho thuê",
"price": 6500000,
"priceDisplay": "7 triệu VND",
"area": 70,
"ward": "Phường Kiến Hưng",
"district": "Quận Hà Đông",
"region": "Hà Nội",
"bedroomCount": 2,
"bathroomCount": 1,
"houseDirection": null,
"legalDocument": null,
"furniture": null,
"floorCount": null,
"make": null,
"model": null,
"year": null,
"mileage": null,
"transmission": null,
"fuelType": null,
"color": null,
"seats": null,
"origin": null,
"condition": null,
"latitude": 20.952806,
"longitude": 105.785,
"isVerified": true,
"sellerName": "nguyen duc cuong",
"sellerPhone": null,
"description": "Căn hộ 2 phòng ngủ, 1 vệ sinh, nội thất cơ bản, vào ở ngay...",
"images": [
"https://cdn.chotot.com/Q3ywS2lpcMQP0Obrbwj5rd9oiCqc0K2EgLnx1vF4vVQ/preset:view/plain/0a4d0aaf.jpg"
],
"listingUrl": "https://www.chotot.com/135580725.htm",
"date": "2026-11-10",
"datePosted": "5 phút trước",
"scrapedAt": "2026-11-10T02:30:00.000Z"
}

🔁 Pagination & 1,000+ scaling

  • Offset-Based Deep Pagination: Each request fetches 20 listings (limit=20, o=0, 20, 40...). With maxPages: 0 by default, the scraper continues incrementing the offset until totalSaved reaches maxRecords (whether 100, 1,000, or 10,000+) or the category is exhausted.
  • Balanced Multi-Category Sampling (category: "all"): When category is set to "all", the actor automatically divides maxRecords across Real Estate (1000), Cars (2010), Motorbikes (2020), Phones (5010), Laptops (5030), and Appliances (9000) so your dataset is evenly balanced.
  • Fast Execution: List mode (scrapeDetails: false) collects 100 listings in ~5–10 seconds and 1,000 listings in ~40–60 seconds.

💻 API & integration examples

Python (apify-client)

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("haketa/chotot-scraper").call(run_input={
"category": "1000",
"region": "12000",
"scrapeDetails": False,
"maxRecords": 1000,
"maxPages": 0,
})
for ad in client.dataset(run["defaultDatasetId"]).iterate_items():
print(ad["listingId"], ad["subject"], ad["priceDisplay"], ad["district"], ad["area"])

Node.js (apify-client)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('haketa/chotot-scraper').call({
category: '2020',
region: '13000',
maxRecords: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Saved ${items.length} Hanoi motorbike listings`);

🗂️ Chotot category & region code reference

Category Codes (category)

CodeVietnamese NameEnglish CategoryKey Extracted Attributes
allTất cả danh mụcAll Categories (Balanced Mix)Balanced sample across Real Estate, Cars, Motorbikes, Phones, Laptops & Appliances
1000Bất động sảnReal Estate (All)area (m²), bedroomCount, bathroomCount, legalDocument, houseDirection, furniture, floorCount
1010Căn hộ/Chung cưApartments & CondosApartment area, bedroomCount, bathroomCount, furniture, legalDocument
1020Nhà ởHouses & VillasLand/living area, floorCount, bedroomCount, houseDirection, legalDocument
1040ĐấtLand LotsLand area (m²), legalDocument (Sổ đỏ/Sổ hồng), houseDirection, GPS coordinates
1050Phòng trọRooms for RentMonthly rental price (VND), area (m²), ward, district, furniture
2010Ô tôCarsmake, model, year, mileage, transmission, fuelType, color, seats, origin
2020Xe máyMotorbikes & Scootersmake, model, year, mileage, condition, price (VND)
2050Xe tải, xe benCommercial Trucksmake, model, year, mileage, fuelType, origin
5010Điện thoạiSmartphonessubject, price, condition, sellerName, isVerified, district
5030LaptopLaptops & Notebookssubject, price, condition, description, images
5020Tivi, Âm thanhTVs & Audio Equipmentsubject, price, condition, description, images
9000Đồ gia dụng, Nội thấtHome Appliances & Furnituresubject, price, condition, district, region
3000Thời trangFashion & Personal Goodssubject, price, condition, sellerName, images

Region Codes (region)

CodeVietnamese RegionEnglish NameEconomic & Market Profile
0Toàn quốcAll Vietnam (Nationwide)Complete national inventory across all 63 provinces and municipalities
12000Tp Hồ Chí MinhHo Chi Minh City (HCMC)Vietnam's largest commercial hub; highest volume of condos, houses, cars & electronics
13000Hà NộiHanoiCapital city; high-volume residential property, automotive & consumer marketplace
15000Đà NẵngDa NangCentral Vietnam coastal tech, tourism & resort real estate hub
17000Hải PhòngHai PhongMajor northern port, industrial logistics & residential market
19000Cần ThơCan ThoMekong Delta commercial center
24000Bình DươngBinh DuongIndustrial park & commuter residential hub bordering HCMC
25000Đồng NaiDong NaiFast-growing infrastructure & land market near Long Thanh International Airport
48000Khánh HòaKhanh Hoa (Nha Trang)Coastal hospitality, condo & land investment market

🔌 Workflow automation & BI integrations

  1. Vietnam Property Price-Per-m² Tracker (Google Sheets / BigQuery): Schedule daily runs for category: "1000" in region: "12000" (HCMC) and "13000" (Hanoi), compute price / area (VND/m²) by district and ward, and visualize trends in Looker Studio or Power BI.
  2. Used Vehicle Deal Alerts (Make / Zapier / n8n / Telegram): Monitor category: "2010" (Cars) or "2020" (Motorbikes) and trigger instant alerts when a specific make, model, and year appears below your target VND threshold.
  3. B2B Seller Lead Enrichment: Run with scrapeDetails: true to collect sellerName, sellerPhone, isVerified, district, and region for CRM import.

⚠️ Known limitations

  • Phone number masking on anonymous requests: When scrapeDetails: true is enabled, sellerPhone returns the phone string provided by Chotot's public detail endpoint (which Chotot may partially mask on certain listings for unauthenticated visitors).
  • Detail mode speed: Enabling scrapeDetails: true makes one additional request per listing (respecting requestDelay), so keep scrapeDetails: false when performing rapid 1,000+ listing market sweeps.

❓ Frequently Asked Questions

How do I scrape 1,000+ listings in a single run?

Set maxRecords: 1000 (or 0 for unlimited) and keep maxPages: 0. The scraper will automatically paginate through as many 20-item pages as needed to reach your target.

Does the scraper preserve Vietnamese diacritics (Tiếng Việt)?

Yes. All text fields (subject, description, region, district, ward, category, sellerName) are preserved in clean UTF-8 encoding.

Why is area only populated on Real Estate listings?

area represents square meters (m²) of living or land space (ad.size), which only applies to real estate (1000–1050). Vehicle and electronics listings cleanly output area: null.



📋 Changelog

VersionDateHighlights
v1.22026-11Unlocked 1,000+ deep pagination & native Apify Proxy integration: Standardized Actor.createProxyConfiguration() session rotation, added maxItems / maxListings input aliases alongside maxRecords, verified unlimited maxPages: 0 pagination for 1,000+ listing pulls, and added explicit completion status messages.
v1.12026-11Fixed CDN image URL double-prefixing, isolated property area (m²) from vehicle internal region codes, and converted list_time epoch timestamps into ISO YYYY-MM-DD date values.
v1.02026-05Initial release covering Chotot real estate, vehicles, electronics, and multi-category nationwide extraction.
⌂ 换网址