
Emma Foster
Machine Learning Engineer

Platform otomotif yang ditenagai AI membutuhkan data daftar kendaraan real-time — harga, odometer, fitur, informasi dealer, dan tren pasar — dari situs iklan, inventaris dealer, dan platform lelang. Situs-situs ini menerapkan perlindungan CAPTCHA agresif yang menghalangi pengumpulan data otomatis. Panduan ini membahas pembuatan pipa data daftar kendaraan untuk agen AI menggunakan CapSolver untuk mempertahankan akses terus-menerus ke platform seperti AutoTrader, Cars.com, CarGurus, dan sistem inventaris dealer.
Pasaran mobil bekas memproses lebih dari $800 miliar transaksi tahunan di AS saja. Harga sangat dinamis — model kendaraan yang sama bisa berbeda hingga 20-30% di antara dealer dalam wilayah yang sama. Agen otomotif AI yang memberikan penilaian akurat, mengidentifikasi inventaris yang dihargai terlalu rendah, atau merekomendasikan waktu pembelian optimal membutuhkan akses terus-menerus ke data daftar di berbagai platform.
Situs iklan otomotif melindungi data mereka secara agresif karena itu adalah bisnis inti mereka. Data pasar Cox Automotive menunjukkan bahwa harga kendaraan berubah setiap hari berdasarkan pasokan, permintaan, dan pola musiman. Ketika agen AI mencoba mengumpulkan data ini secara skala, hal ini memicu tantangan verifikasi yang menghentikan pipa.
Penggunaan CAPTCHA umum mencakup reCAPTCHA v2 pada halaman hasil pencarian, Cloudflare Turnstile pada platform modern, dan tantangan khusus pada sistem manajemen dealer. Tanpa penyelesaian otomatis, agen AI tidak dapat mempertahankan segar data yang dibutuhkan untuk intelijen pasar yang akurat.
pip install git+https://github.com/capsolver-ai/capsolver-core.git
pip install aiohttp beautifulsoup4 pandas
export CAPSOLVER_API_KEY="your-capsolver-api-key"
Kebutuhan tambahan:
AUTOMOTIVE_PLATFORMS = {
"autotrader": {
"name": "AutoTrader",
"captcha_type": "ReCaptchaV2TaskProxyLess",
"trigger": "after_50_searches",
"data": ["year", "make", "model", "price", "mileage", "dealer", "vin", "features"]
},
"cargurus": {
"name": "CarGurus",
"captcha_type": "AntiTurnstileTaskProxyLess",
"trigger": "rate_limit_80_per_hour",
"data": ["price", "deal_rating", "mileage", "dealer_rating", "days_on_market"]
},
"cars_com": {
"name": "Cars.com",
"captcha_type": "ReCaptchaV2TaskProxyLess",
"trigger": "after_40_listing_views",
"data": ["price", "mileage", "features", "dealer", "history_report", "photos"]
},
"facebook_marketplace": {
"name": "Facebook Marketplace",
"captcha_type": "ReCaptchaV2TaskProxyLess",
"trigger": "behavioral_and_rate",
"data": ["price", "mileage", "location", "seller_type", "description"]
}
}
import asyncio
from capsolver_core import create_capsolver, CaptchaType, CaptchaInfo
from dataclasses import dataclass
from typing import Optional
@dataclass
class VehicleListing:
vin: Optional[str]
year: int
make: str
model: str
price: float
mileage: int
dealer: str
location: str
days_on_market: int
platform: str
url: str
class VehicleDataCollector:
"""Kumpulkan data daftar kendaraan dengan penanganan CAPTCHA."""
def __init__(self, api_key: str, proxies: list):
self.cap = create_capsolver(api_key=api_key)
self.proxies = proxies
self.proxy_idx = 0
async def search_vehicles(self, make: str, model: str, year_range: tuple,
location: str, platform: str = "autotrader") -> list:
"""Cari daftar kendaraan dengan penanganan CAPTCHA."""
proxy = self.proxies[self.proxy_idx % len(self.proxies)]
self.proxy_idx += 1
html = await self._fetch_search(platform, make, model, year_range, location, proxy)
if self._is_captcha(html):
token = await self._solve(platform)
html = await self._retry(platform, make, model, year_range, location, proxy, token)
return self._parse_listings(html)
async def _solve(self, platform_key: str) -> str:
config = AUTOMOTIVE_PLATFORMS[platform_key]
type_map = {
"ReCaptchaV2TaskProxyLess": CaptchaType.RECAPTCHA_V2,
"AntiTurnstileTaskProxyLess": CaptchaType.CLOUDFLARE
}
info = CaptchaInfo(
type=type_map[config["captcha_type"]],
website_url=f"https://www.{platform_key.replace('_', '')}.com",
website_key=config.get("site_key", "")
)
solution = await self.cap.solve(info)
return solution.token
async def monitor_market(self, make: str, model: str, region: str) -> dict:
"""Pantau harga pasar untuk kendaraan tertentu."""
all_listings = []
for platform in ["autotrader", "cargurus", "cars_com"]:
listings = await self.search_vehicles(make, model, (2020, 2024), region, platform)
all_listings.extend(listings)
await asyncio.sleep(5)
prices = [l.price for l in all_listings if l.price > 0]
return {
"make_model": f"{make} {model}",
"total_listings": len(all_listings),
"avg_price": sum(prices) / len(prices) if prices else 0,
"min_price": min(prices) if prices else 0,
"max_price": max(prices) if prices else 0,
"platforms_checked": 3
}
async def close(self):
await self.cap.aclose()
| Kasus Penggunaan | Data yang Diperlukan | Frekuensi Pembaruan | Nilai |
|---|---|---|---|
| Penilaian kendaraan | Daftar serupa, odometer, kondisi | Harian | Harga beli/jual yang akurat |
| Penilaian kesepakatan | Harga vs rata-rata pasar, hari di pasar | Real-time | Mengidentifikasi kendaraan yang dihargai terlalu rendah |
| Penentuan waktu pasar | Tren harga selama 30-90 hari | Mingguan | Waktu pembelian optimal |
| Pemberitahuan inventaris | Daftar baru yang sesuai kriteria | Setiap 2-4 jam | Keuntungan awal |
| Pemodelan depresiasi | Harga historis berdasarkan usia/odometer | Bulanan | Analisis investasi |
| Ruang Pemantauan | Pencarian Harian | CAPTCHA Bulanan | Biaya Bulanan |
|---|---|---|---|
| 5 model, 1 wilayah | ~45 | ~135 | $0,27-0,41 |
| 20 model, 3 wilayah | ~360 | ~1.080 | $2,16-3,24 |
| 100 model, 5 wilayah | ~3.000 | ~9.000 | $18-27 |
Dapatkan Kode Bonus Anda: Gunakan kode WEBS di Dasbor CapSolver untuk mendapatkan bonus tambahan 5% pada setiap recharge.
Panduan pengambilan data web CapSolver menutupi pola infrastruktur untuk pengumpulan volume tinggi. Untuk platform yang dilindungi Cloudflare, dokumentasi Turnstile menyediakan detail implementasi. FAQ CapSolver menjawab pertanyaan umum tentang pengumpulan data.
Pengumpulan data daftar kendaraan untuk agen AI membutuhkan penanganan sistem CAPTCHA yang beragam di berbagai platform otomotif. CapSolver menyediakan infrastruktur penyelesaian yang terpadu yang membersihkan reCAPTCHA dan Cloudflare Turnstile dalam 3-12 detik, memungkinkan pemantauan pasar skala besar. Data yang dikumpulkan menggerakkan agen AI yang memberikan penilaian akurat, mengidentifikasi kesepakatan, dan memberikan rekomendasi waktu pasar.
Semua platform utama yang menggunakan sistem CAPTCHA standar: AutoTrader, CarGurus, Cars.com, Edmunds, KBB, dan situs inventaris dealer. Setiap platform memerlukan identifikasi parameter CAPTCHA khusus.
Ya. Data daftar lintas platform dengan faktor odometer, kondisi, dan lokasi memungkinkan agen AI menghasilkan penilaian dalam 5-10% dari nilai pasar aktual. Kuncinya adalah mengumpulkan daftar serupa yang cukup (20+).
Dengan 20 model di 3 platform dengan tingkat CAPTCHA 30%, sekitar 1.080 CAPTCHA per bulan pada $2-3 per 1.000 sama dengan $2,16-3,24 per bulan untuk penyelesaian. Infrastruktur total di bawah $25/bulan termasuk proxy.
Pelajari arsitektur pengambilan data web Rust yang dapat diskalakan dengan reqwest, scraper, pengambilan data asinkron, pengambilan data browser tanpa tampilan, rotasi proxy, dan penanganan CAPTCHA yang sesuai aturan.

Mengotomasi penyelesaian CAPTCHA dengan Nanobot dan CapSolver. Gunakan Playwright untuk menyelesaikan reCAPTCHA dan Cloudflare secara otomatis.
