PartsHotlines Scraper — Used Auto Parts Prices & Yards
Pricing
from $2.50 / 1,000 part rows
PartsHotlines Scraper — Used Auto Parts Prices & Yards
Scrape PartsHotlines used auto parts for body shops and recyclers. Export price, grade, stock number, mileage, yard, and ZIP distance, and monitor new rows and price drops.
Pricing
from $2.50 / 1,000 part rows
Rating
0.0
(0)
Developer
Andrej Kiva
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 hours ago
Last modified
Categories
Share
Disclaimer: Unofficial tool — not affiliated with, sponsored by, or endorsed by Hotlines, Inc. or its affiliates. Data is read from publicly accessible search results only. No login. You are responsible for complying with applicable law (including GDPR where personal data appears) and the site’s terms. No warranty on accuracy or availability. Provided for informational and research use.
Contact-data controls: Yard phone numbers are omitted from the dataset by default. Enable
includePhonesonly for numbers already published on the public results page and only when you have a lawful basis. Any phone in the examples below assumes that opt-in. Otherwise the field is absent.
Scrape used auto parts from the PartsHotlines salvage-yard search. Each row is one yard offer: part name, donor year and model, asking price, grade, stock number, mileage, yard, city, state, and distance from a ZIP.
Search one year, make, model, and part. Turn on monitor mode and schedule the run to save only new offers and price drops.
Best for: body shops, recyclers, and parts buyers who want a second quote next to other used-parts inventories.
| Copart | IAAI | Row52 | Pick-n-Pull | Car-Part | PartsHotlines |
|---|---|---|---|---|---|
| Copart Scraper | IAAI Scraper | Row52 Scraper | Pick-n-Pull Scraper | Car-Part Scraper | PartsHotlines Scraper ◄── you are here |
Auto parts suite — locate the donor car, price the used part, then compare a new US or EUR catalog price.
| Actor | What it returns |
|---|---|
| Row52 Scraper | Junkyard donor cars: VIN, yard, row |
| Pick-n-Pull Scraper | Self-service yard inventory: VIN, row |
| PartsHotlines Scraper ◄── you are here | Used part price, grade, and yard |
| CarParts.com Scraper | US aftermarket price and catalog status |
| Oscaro Scraper | French catalog price in EUR |
When to use this Actor
- Price a used part — One year, make, model, and part name. Results include the asking price, grade, and how far the yard is from your ZIP.
- Watch a part — Enable
monitorModeand schedule the same input. The first run stores a baseline. Later runs save new stock and lower prices. - Narrow a trim —
interchangeMode: "match"keeps one interchange note, for example1.5Lorturbo. - Sort by price —
sortBy: "price"reads the cheapest rows first.
Key features
- Public search only. No account and no login.
- Live catalog match for make, model, and part name.
- Price, grade, stock number, mileage, OEM number when published, yard, distance, and part photos.
- Typical price band from the results page when the site shows one.
- Monitor mode for new rows and price drops, keyed by yard and stock number.
- Phone numbers stay off unless
includePhonesis true. - HTTP fetch, 256 MB, no proxy by default.
Input
| Field | Required | Default | What it does |
|---|---|---|---|
year | yes | 2018 | Donor vehicle year |
make | yes | Honda | Make, matched to the catalog |
model | yes | Civic | Model for that year and make |
part | yes | AC Compressor | Part name, matched to the catalog |
zipCode | no | 10001 | ZIP used to rank distance |
sortBy | no | distance | distance or price |
interchangeMode | no | any | any, first, or match |
interchangeQuery | when match | empty | Text to find in the interchange notes |
maxItems | no | 40 | Rows to save. In monitor mode, rows to charge |
maxPages | no | 3 | Result pages. About 20 rows each |
waitSecs | no | 18 | Seconds to wait while yards fill the search |
includePhones | no | false | Keep yard phone numbers |
monitorMode | no | false | Emit only new rows and price drops after the baseline |
monitorStoreName | no | partshotlines-monitor | Named store for that watch |
resetMonitorState | no | false | Clear the watch and start a new baseline |
proxyConfiguration | no | off | Leave off unless a run is blocked |
{"year": 2018,"make": "Honda","model": "Civic","part": "AC Compressor","zipCode": "10001","sortBy": "distance","interchangeMode": "any","maxItems": 40,"maxPages": 3,"monitorMode": true,"monitorStoreName": "civic-ac-compressor-10001"}
Output
One dataset item is one yard offer.
| Field | Meaning |
|---|---|
partName | Part as listed |
year, model | Donor vehicle |
price, priceFormatted | Asking price. price is null when the cell says Call |
partGrade | A, B, C, or empty |
stockNumber | Yard stock number |
mileage | Donor mileage |
oemNumber | OEM number when published |
description | Yard notes |
yardName, yardAlias | Salvage yard |
city, state, distanceMiles | Where the yard is, and miles from zipCode |
shippingNote | Shipping line from the row |
guarantee | Warranty text when shown |
imageUrl | First part photo |
typicalPriceLow, typicalPriceHigh | Page typical-price band, when shown |
requestedYear, requestedMake, requestedModel, requestedPart | What you searched |
monitorChange | new or price_drop on later monitor runs |
previousPrice | Prior price when monitorChange is price_drop |
yardPhone | Only when includePhones is true |
{"partName": "AC Compressor","year": 2018,"model": "CIVIC","price": 85.85,"priceFormatted": "$85.85","partGrade": "A","stockNumber": "250165","mileage": 69000,"yardName": "Example Auto Parts","yardAlias": "NE175","city": "Example City","state": "CT","distanceMiles": 80.8,"requestedMake": "HONDA","requestedModel": "CIVIC","requestedPart": "AC Compressor","zipCode": "10001"}
Use cases
- A body shop checks the asking price and grade for a compressor before calling a yard.
- A recycler watches one part and ZIP. The scheduled run returns only new stock and lower prices.
- A buyer compares this network with Car-Part Scraper for the same year, make, model, and part.
- After a salvage lot on Copart Scraper, price the donor vehicle’s engine or body panel here.
- Find the donor car with Row52 Scraper or Pick-n-Pull Scraper, then compare a new price on CarParts.com Scraper or a French EUR price on Oscaro Scraper.
Integration examples
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('crawloop/partshotlines-scraper').call({year: 2018,make: 'Honda',model: 'Civic',part: 'AC Compressor',zipCode: '10001',maxItems: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient()run = client.actor("crawloop/partshotlines-scraper").call(run_input={"year": 2018,"make": "Honda","model": "Civic","part": "AC Compressor","zipCode": "10001","maxItems": 20,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["partName"], item.get("price"), item.get("yardName"))
cURL
curl "https://api.apify.com/v2/acts/crawloop~partshotlines-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"year":2018,"make":"Honda","model":"Civic","part":"AC Compressor","zipCode":"10001","maxItems":20}'
MCP and AI assistants
Use this Actor from AI tools via Apify MCP. Connect your Apify account, then call crawloop/partshotlines-scraper.
Example prompts:
- "Run PartsHotlines Scraper for a 2018 Honda Civic AC Compressor near ZIP 10001, max 20, and return price, partGrade, yardName, and distanceMiles."
- "Turn on monitor mode for that Civic compressor and tell me which stock numbers dropped in price."
- "After PartsHotlines Scraper prices a 2018 Civic compressor, run CarParts.com Scraper for the new US price and Oscaro Scraper for the EUR price."
Suite next step
For the same part on the other large recycler network, run Car-Part Scraper. For a new catalog price, run CarParts.com Scraper or Oscaro Scraper. For the donor car's yard row, run Row52 Scraper or Pick-n-Pull Scraper. For the donor vehicle at auction, run Copart Scraper or IAAI Scraper.
FAQ
Does this log in to a yard account? No. It reads the public search.
Why is the first monitor run full of rows?
That run is the baseline. Later runs in the same monitorStoreName save new stock numbers and lower prices.
Why did a narrow interchange return nothing?
Some trims have no inventory. The run finishes with 0 rows. Use interchangeMode: "any" to search every option for that part.
Can I get phone numbers?
Set includePhones to true when you have a lawful basis. They are left out otherwise.