Thailand Used Car Market Scraper
Pricing
Pay per usage
Thailand Used Car Market Scraper
Scrapes and normalizes used car listings from One2car, Carsome Thailand, Taladrod, and Kaidee Auto.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
wiseld_squid
Actor stats
1
Bookmarked
5
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Scrape and normalize Thailand used car listings from four high-value sources:
- One2car
- Carsome Thailand
- Taladrod
- Kaidee Auto
The Actor outputs one clean dataset schema across all sources, so you can compare prices, models, years, mileage, fuel type, transmission, location, and listing URLs without writing a separate scraper for each website.
What it extracts
- Source website
- Listing ID
- Title
- Make and model
- Year
- Price in THB
- Mileage
- Transmission
- Fuel type
- Location
- Image URL
- Listing URL
- Source page URL
- Scrape timestamp
Sources
Carsome Thailand
Carsome is the easiest source to scrape reliably because listing data is rendered in public HTML/SSR pages.
Taladrod
Taladrod has a large Thai used car marketplace and public listing pages. This Actor extracts listing links and visible card data from the search/listing pages.
Kaidee Auto
Kaidee Auto provides broad Thai classifieds coverage. This Actor supports the public auto category pages and falls back to parsing embedded Next.js data when available.
One2car
One2car is protected by Cloudflare. Normal Playwright plus residential proxy can still receive a challenge page, so One2car is disabled by default.
For reliable One2car runs, enable Include One2car and choose a one2carStrategy. The cheapest option in the May 4, 2026 test run was unblocker, because it finished in about 43 seconds with the main Actor at 1024 MB and the unblocker charged one result. Direct camoufox is useful when you want to avoid third-party Actor dependency, but it can cost more because it needs a browser, residential proxy traffic, and longer challenge waits.
Direct One2car browser-session mode uses Camoufox with Crawlee's PlaywrightCrawler, following Apify's Crawlee + Playwright + Camoufox template for anti-bot-heavy websites. You can switch one2carStrategy to playwright-extra to use playwright-extra with puppeteer-extra-plugin-stealth instead. Direct modes warm up One2car briefly, persist Crawlee sessions in a named key-value store, keep concurrency at one, block heavy assets by default, and wait for the JavaScript-rendered page to fully load before parsing JSON-LD. The Actor specifically waits until document.title no longer contains รอสักครู่, document.readyState is complete, and JSON-LD exists before extraction.
For lower-level testing, one2carDirectMode: "manual-browser" bypasses Crawlee's browser crawler and controls Playwright directly. It uses stable proxy session IDs, restores cookies per session, and retries a small number of browser sessions manually.
Input tips
- Use
sourcesto select websites. - Use
searchQueryfor a make/model keyword such astoyota,honda,fortuner,civic, or Thai keywords. - Use
maxItemsto cap total results across all selected sources. - Use
maxPagesPerSourceto limit pagination per generated source URL. - Use
startUrlswhen you want to scrape specific listing/search URLs. - Use
one2carStrategy: "unblocker"for lowest observed cost in the benchmark. - Use
one2carStrategy: "camoufox"when you want the official-style Crawlee + Playwright + Camoufox direct browser approach. - Use
one2carStrategy: "auto"to try Camoufox first and call the unblocker only if direct mode saves no items.
Example input
{"sources": ["carsome", "taladrod", "kaidee"],"searchQuery": "toyota","maxItems": 50,"maxPagesPerSource": 2,"includeOne2car": false,"proxyConfiguration": {"useApifyProxy": true}}
For One2car:
{"sources": ["one2car"],"searchQuery": "toyota","maxItems": 20,"maxPagesPerSource": 1,"includeOne2car": true,"one2carStrategy": "unblocker","one2carUnblockerActor": "scrapeunblocker/scrapeunblocker","proxyConfiguration": {"useApifyProxy": false}}
Experimental direct One2car browser mode:
{"sources": ["one2car"],"searchQuery": "toyota","maxItems": 20,"maxPagesPerSource": 1,"includeOne2car": true,"one2carStrategy": "camoufox","one2carDirectMode": "browser-session","one2carChallengeWaitSecs": 30,"one2carWarmupWaitSecs": 4,"one2carNavigationTimeoutSecs": 60,"one2carBlockAssets": true,"one2carUseSessionStore": true,"one2carDirectAttempts": 3,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "TH"}}