Chotot Scraper - Vietnam Marketplace Listings
Pricing
from $1.20 / 1,000 ad records
Chotot Scraper - Vietnam Marketplace Listings
Chotot scraper to extract listings and classified ads from Chotot.com, Vietnam's largest marketplace. Scrape products by keyword, category, region, and price. Get full listing data including images, seller info, and GPS coordinates. Fast, low-cost, export to JSON, CSV, or Excel
Pricing
from $1.20 / 1,000 ad records
Rating
0.0
(0)
Developer
Harish Garg
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
a day ago
Last modified
Categories
Share
What does Chotot Scraper do?
Chotot Scraper extracts marketplace ad listings from Chotot.com, Vietnam's largest online classifieds site. Give it a keyword, a category, a region, or a price range, and it returns full listing data — title, full description, price, images, GPS coordinates, seller details, and category-specific attributes — as clean, structured JSON.
It is fast and low-cost to run. On the Apify platform you also get API access, scheduling, integrations (Google Sheets, Make, Zapier, webhooks), automatic proxy rotation, and run monitoring.
It covers the 10 general marketplace categories (electronics, home & furniture, fashion, hobbies, pets, appliances, mom & baby, office & agriculture, services, and food). Property, vehicles, and jobs are served by dedicated companion Actors (see Companion Actors).
Why use Chotot Scraper?
- Market research — track prices, inventory, and demand across Vietnamese categories and provinces.
- Lead generation — collect seller names, IDs, and locations for C2C outreach.
- Price intelligence — monitor how prices for a product move over time and by region.
- Reselling & arbitrage — spot underpriced items the moment they are listed with scheduled runs.
- Data & ML — build datasets of Vietnamese product listings with images and full descriptions.
How to use Chotot Scraper
- Open the Input tab.
- Type a Search keyword (e.g.
iphone) and/or pick one or more Categories. - Optionally narrow by Region, price range, or ad type.
- Set Max items to control run size (start small to preview).
- Click Start and watch results fill the Output tab.
- Export the dataset as JSON, CSV, Excel, or HTML, or pull it via the Apify API.
Input examples
Keyword search across one category
{ "search": "iphone 15", "categoryIds": ["5000"], "maxItems": 500 }
Category + region sweep
{ "categoryIds": ["3000", "14000"], "regionId": "13000", "adType": "sell", "maxItems": 2000 }
Newest ads in one category
{ "categoryIds": ["5000"], "maxItems": 100 }
Input
| Field | Type | Default | Description |
|---|---|---|---|
search | string | — | Full-text keyword. Combinable with every filter. |
categoryIds | multi-select | all 10 general categories | The general categories to scrape (pick one or more from the dropdown). |
adType | enum | all | all, sell, buy, rent_out, or want_rent. |
regionId | enum | (any) | One of the 63 provinces (e.g. 13000 = Ho Chi Minh City, 12000 = Hanoi). |
maxItems | integer | 50 | Number of ads to fetch per category. Total ≈ maxItems × number of categories. |
enrichDetails | boolean | false | Add human-labeled category attributes (brand, condition, warranty…). Costs one extra request per ad. |
Ordering
The Actor returns the newest ads first, up to maxItems per category.
Output
Each dataset item is one ad. Simplified example:
{"adId": 177860964,"listId": 133911444,"url": "https://www.chotot.com/133911444.htm","title": "iPhone 8","price": 1550000,"priceString": "1.550.000 đ","categoryId": 5010,"categoryName": "Điện thoại","adType": "s","regionName": "Bình Dương","areaName": "Thành phố Thuận An","latitude": 10.957153,"longitude": 106.71757,"images": ["https://cdn.chotot.com/.../plain/....jpg"],"numberOfImages": 4,"listedAt": "2026-08-02T22:24:53.000Z","seller": { "id": 26144388, "oid": "17e5f73e...", "name": "Gia Huy", "avatar": "https://cdn.chotot.com/uac2/26144388" },"categoryFields": { "mobile_brand": 1, "elt_condition": 2 }}
You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
Data fields
| Field | Description |
|---|---|
adId, listId | The two Chotot identifiers. listId builds the public listing URL. |
url | Canonical public listing URL. |
title, description | Ad subject and full body text. |
price, priceString | Numeric price (VND) and the display string. |
categoryId, categoryName | Subcategory-level classification. |
adType | s sell, k buy, u rent out, h want to rent. |
regionId/Name, areaId/Name, wardId/Name | Province, district, and ward. |
latitude, longitude | GPS coordinates (present on most ads). |
images, numberOfImages | Full-size CDN image URLs. |
videos | Video attachments, if any. |
listedAt, relativeDate | ISO 8601 timestamp and the raw Vietnamese relative date. |
seller | id, oid, name, avatar, and liveAds count. |
state, status | Moderation state and activity status. |
categoryFields | Category-specific attributes (e.g. rooms, mobile_brand, elt_condition). |
attributes | Human-readable category-specific specs as a { key: value } object (e.g. mobile_brand: "Apple", mobile_capacity: "256 GB", address: "…"). Only present when enrichDetails is on. |
Pricing and cost estimation
This Actor is billed pay-per-event with no start-up fee — you pay only for what it produces:
- Ad record — charged once for every ad returned. This is the main cost.
- Detail enrichment — charged additionally, once per ad, only when you turn on "Add on: Enrich with extra ad details". A plain run never incurs this.
So a basic run costs ad-record × items, and an enriched run costs (ad-record + detail-enrichment) × items. You can cap any run's spend with the maximum cost setting in the Console — the Actor stops once the limit is reached.
Max items applies per category, so the number of ads ≈ Max items × number of categories. Lower it, or select fewer categories, to keep any run small.
Tips and advanced options
- Schedule runs to keep a fresh snapshot of the newest ads per category.
- Enable
enrichDetailsonly when you need labeled attributes — it adds one request per ad. - Raise
maxItemsto pull more ads per category; lower it or pick fewer categories to keep runs small.
Companion Actors
The same Chotot backend powers several verticals, split into focused Actors:
- Nhatot Scraper — real estate / property (category
1000). - Xe Chotot Scraper — vehicles (category
2000). - Vieclamtot Scraper — job listings (category
13010). - Chotot Phone Enricher — reveal seller phone numbers from
listIds (marketplace only). - Chotot Ad Detail Scraper — batch
listId/adId→ full detail with labeledparameters.
FAQ, disclaimers, and support
Is scraping Chotot legal? This Actor collects only publicly available listing data and does not log in or bypass access controls. You are responsible for using the data in compliance with Chotot's Terms of Service and applicable laws (including personal-data rules). Do not use scraped personal data for spam or unlawful purposes.
Are phone numbers included? No. Phone reveal is handled by the separate Chotot Phone Enricher Actor.
Why do I get few results for property, vehicles, or jobs? Those categories are served by the companion Actors listed above; this Actor targets the 10 general marketplace categories.
Known limitations. Results are returned newest-first, so the Actor returns the most recent ads per category up to your maxItems.
Support. Found a bug or need a custom field? Open an issue on the Actor's Issues tab. Custom scraping solutions are available on request.