Carsensor Used Cars Scraper (new listing & price-drop alert)
Pricing
from $2.10 / 1,000 car listing scrapeds
Carsensor Used Cars Scraper (new listing & price-drop alert)
Search Carsensor (カーセンサー), Japan's largest used-car site, by keyword or list URL: one row per car with total and base price in yen, year, mileage, inspection, repair history, dealer and location - labelled new, price_drop, price_rise or unchanged since your last run.
Pricing
from $2.10 / 1,000 car listing scrapeds
Rating
0.0
(0)
Developer
Superslow Sloth
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 days ago
Last modified
Categories
Share
Search Carsensor (カーセンサー) - Japan's largest used-car marketplace, run by Recruit, with over half a million cars from dealers across the country - and get one flat row per car: the all-in total price (支払総額) and base price in yen, model year, mileage, statutory inspection (車検), repair history, warranty, displacement, transmission, body type, colour, where the car is, the dealer and the dealer's review score.
Built as an alert for dealers, exporters and buyers: schedule the same search every hour or every morning, sorted newest first, and each row tells you whether that car is new since the last run, had a price drop or a price rise, or is unchanged. Turn on Only changes and you get - and pay for - just the new cars and the price moves.
Input
| field | meaning |
|---|---|
keywords | Free-word searches, as typed into Carsensor's search box, e.g. プリウス, ランドクルーザー 70, GT-R. Each becomes https://www.carsensor.net/usedcar/freeword/<keyword>/index.html |
searchUrls | Optional. Result-list URLs copied from your browser - a maker (/usedcar/bTO/index.html is every Toyota), a model (/usedcar/bTO/s004/index.html), a region or any filtered search. Must be a /usedcar/.../index.html list page; a page number (index3.html) is kept and the run starts there. Detail pages and other sites are skipped and logged |
sort | Order cars are read in. Newest listings first by default - the right order for an alert. Also: oldest, total price low/high, base price low/high, model year new/old, mileage low/high, or Carsensor's own order. A search URL that already carries a SORT parameter keeps its own |
maxItems | Stop after reading this many cars in total, shared by every keyword and URL, in order. Carsensor shows 30 cars per page. For an alert this is the window watched: "the newest 100" |
changesOnly | Output only cars that are new or whose total price moved since the previous run of the same search. Off by default |
proxyConfiguration | Apify datacenter proxy by default - see Proxy below |
Paging walks index.html, index2.html, ... and stops on the pager's own
"last page" (its 次へ button is disabled), when maxItems is reached, or when
a page brings no car not already seen. Carsensor does not 404 past the
end - asking for page 999 of a 370-page search returns page 370 - so the actor
also stops when the page served is not the page it asked for.
Output
| field | meaning |
|---|---|
change | new, price_drop, price_rise or unchanged against the previous run of this search - see Change tracking |
car_id | Carsensor's listing id (AU7216716998), as in /usedcar/detail/<id>/index.html |
url | The car's detail page |
maker, model, grade | e.g. トヨタ / プリウス / 2.0 Z |
catch_copy | The dealer's catch line that follows the grade in the title |
title | The full title: model, grade and catch line |
description | The dealer's short description under the title |
total_price_yen | 支払総額 - the all-in price to drive it away (car plus taxes, registration and dealer fees). "319.9万円" is 3199000 |
base_price_yen | 車両本体価格 - the car's own price before fees |
price_on_request | true when the card says 応談 (ask the dealer) instead of a price |
monthly_payment_yen, loan_type | The advertised loan's monthly payment and which loan it is (通常ローン価格 standard, 残価ローン価格 residual-value) |
year, year_jp | Model year, Western and Japanese era (2017, H29) |
mileage_km | Odometer in km ("2.9万km" is 29000) |
inspection, inspection_expires | 車検 as printed (an expiry such as 2027(R09)年05月, or 車検整備付 / 車検整備無), and that expiry as 2027-05 when it is a date |
repair_history | 修復歴: true (あり, has been repaired after an accident) or false (なし) |
warranty, warranty_type | 保証付 / 保証無, and who gives it: 販売店保証 (the dealer) or ディーラー保証 (a franchised maker dealer) |
maintenance | 法定整備付 (statutory service included) / 法定整備無 |
displacement_cc, transmission | e.g. 2000, フロアCVT |
body_type, color | e.g. ハッチバック, 白 |
badges | The card's other labels, e.g. 360°画像付, オンライン相談可, 車両品質評価書付 (third-party condition report) |
prefecture, city | Where the car is |
shop_name, shop_id, shop_url | The selling dealer |
shop_review_score, shop_review_count | The dealer's クチコミ評価 (out of 5) and how many reviews it rests on |
image_url | Main photo |
query | The keyword or search URL this row came from |
Everything is read off the search results page - no detail page is opened - which is what keeps a row cheap. Sponsored lease cars and the "similar cars" box that Carsensor mixes into its result pages are not search results and are left out.
null is not zero
Every column except change, car_id, url, title, price_on_request,
badges and query can be null, and is null whenever the card simply
does not print that value - never 0 or an empty string, because a 0 reads
as a measurement. Measured over 258 cards on twelve real pages (2026-10-05):
total_price_yenandbase_price_yenare null on price-on-request (応談) cars - 21 of 258, all of them high-end imports - withprice_on_request: true;monthly_payment_yenandloan_typeare null when no loan is advertised - 122 of 258;shop_review_scoreandshop_review_countare null when the dealer has no reviews yet (printed "-") - 41 of 258;inspection_expiresis null unless 車検 is printed as a date (車検整備付 means a fresh inspection is done at delivery);description(55) andcatch_copy(30) are blank on some cards.
Change tracking
Each run remembers what it saw - car id and total price - in a named
key-value store on your account, carsensor-used-cars-watch, one record
per search (the exact URLs fetched, so a different sort or keyword set is a
different search). The next run of the same search labels each car:
new- not seen by the previous run of this search;price_drop/price_rise- seen before, and the total price (支払総額) moved;unchanged- seen before at the same price. A price unknown on either side (応談) is never a change.
The first run of a search has nothing to compare with, so every car is
new - the run log says "change tracking: first run". From the second run
on, the labels mean what they say. A car that drops off your window for a run
and comes back is not reported as new again.
With changesOnly on, unchanged cars are skipped: not in the dataset and
not charged. maxItems still bounds how many cars are read, so a run where
nothing changed reads your window and stops.
Proxy
Apify datacenter proxy is the default. Measured 2026-10-05: carsensor.net answered an Apify datacenter exit with HTTP 200 and the full results page, the same as from a residential connection. No refusal has been seen. If one does come back - a 403, 429 or 5xx, or a 200 that is neither a results page nor Carsensor's "0台" page - the actor switches to a new exit address and retries. A page still refused after the retries is logged as a failure and nothing is charged for it.
Billing
Pay per event: $0.0021 per car row, plus a fixed $0.002 actor-start
fee per run. Platform usage - compute and proxy - is included. A car is
charged at most once per run, even when two of your searches both return it.
With changesOnly, unchanged cars are not charged. A run that fails on its
own input is not charged at all.
Limits
- Carsensor's refusal page has never been observed, so its classification is by elimination: anything that is neither results nor the zero-hit page is treated as a refusal and retried.
- The change label compares the total price only. A base-price change with
the same total, or a new photo, is
unchanged. - A keyword search is Carsensor's own free-word search, so which cars it matches is Carsensor's decision; a maker/model list URL is the exact way to name one model.