Rock & Dirt Scraper – Heavy Equipment Listings
Pricing
from $5.00 / 1,000 rock & dirt listing extracteds
Rock & Dirt Scraper – Heavy Equipment Listings
Extract Rock & Dirt heavy equipment listings with prices, specs, hours, sellers, locations, images, and price history for sourcing and market research.
Pricing
from $5.00 / 1,000 rock & dirt listing extracteds
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Rock & Dirt Heavy Equipment Scraper
Extract structured public listings from Rock & Dirt for equipment sourcing, price research, dealer inventory analysis, and market monitoring. The Actor accepts filtered Rock & Dirt search pages or individual listing pages and returns one stable, schema-validated dataset item per listing.
It covers public equipment, cranes, trucks, trailers, attachments, parts, dismantled machinery, and auction listings that use Rock & Dirt's /search/ and /listings/ routes. It does not sign in, contact sellers, submit forms, bypass access controls, or scrape authenticated account pages.
What the scraper extracts
| Field group | Examples |
|---|---|
| Identity | listingId, title, listingUrl, sourceUrl |
| Equipment | type, category, equipmentClass, year, make, model |
| Price | price, currency, priceDisclaimer, priceHistory |
| Usage and identifiers | condition, hoursUsed, mileage, stockNumber, serialNumber, vin |
| Listing content | description, category-specific specifications, imageUrls, thumbnailUrl, youtubeUrl |
| Location | city, region, country, postalCode, location, latitude, longitude |
| Seller | sellerName, sellerType, sellerWebsite, sellerUrl; optional public sellerPhone and sellerEmail |
| Auction and dates | isAuction, auctionUrl, createdAt, updatedAt, scrapedAt |
Optional fields are always present as null or an empty array when Rock & Dirt does not publish them. This keeps exports predictable for spreadsheets, databases, and AI agents.
When to use it
Use this Actor when you need to:
- compare asking prices, hours, years, makes, and models;
- monitor a filtered category, manufacturer, region, or dealer inventory;
- collect image URLs and descriptions for sourcing analysis;
- enrich known Rock & Dirt listing URLs with public specifications and price history;
- export public marketplace listings to JSON, CSV, Excel, or an API workflow.
Do not use it to contact sellers without an appropriate lawful basis, build unsolicited outreach lists, reproduce copyrighted images or descriptions, access private pages, or circumvent a CAPTCHA, paywall, login, or other access control.
Input
| Field | Type | Default | Purpose |
|---|---|---|---|
startUrls | request list | Excavators search | One to 20 public rockanddirt.com/search/... or rockanddirt.com/listings/... URLs. Copying a filtered search URL preserves its filters. |
maxResults | integer | 20 | Maximum unique listings written, from 1 to 1,000. |
maxPages | integer | 3 | Maximum pages read for each search URL, from 1 to 100. Direct listing URLs are unaffected. |
includeDetails | boolean | true | Visit each detail page for full images, specifications, description, seller profile, price history, and precise location. |
includeSellerContact | boolean | false | Include public business phone/email fields. Leave disabled unless your lawful use case requires them. |
maxConcurrency | integer | 2 | Simultaneous public requests, from 1 to 5. |
proxyConfiguration | object | disabled | Optional Apify Proxy configuration for run environments where direct access is blocked. |
Search with detail enrichment
{"startUrls": [{"url": "https://www.rockanddirt.com/search/excavators?category=Excavators"}],"maxResults": 25,"maxPages": 3,"includeDetails": true,"includeSellerContact": false,"maxConcurrency": 2,"proxyConfiguration": { "useApifyProxy": false }}
Enrich one known listing
{"startUrls": [{"url": "https://www.rockanddirt.com/listings/2019-john-deere-210g-lc-29404245"}],"maxResults": 1,"includeDetails": true}
Run through the Apify API
curl -X POST \"https://api.apify.com/v2/acts/muhammadafzal~rock-and-dirt-scraper/runs" \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"startUrls":[{"url":"https://www.rockanddirt.com/search/excavators?category=Excavators"}],"maxResults":10}'
Keep API tokens in authorization-aware tooling or environment variables. Do not commit them to source control or expose them in logs.
Output example
{"listingId": "29404245","title": "2019 John Deere 210G LC Excavators EARTHMOVING","listingUrl": "https://www.rockanddirt.com/listings/2019-john-deere-210g-lc-29404245","sourceUrl": "https://www.rockanddirt.com/search/excavators?category=Excavators","type": "Equipment","category": "Excavators","equipmentClass": "EARTHMOVING","year": 2019,"make": "John Deere","model": "210G LC","price": 86900,"currency": "USD","condition": "used","hoursUsed": 4200,"location": "Van Buren Charter Township, Michigan, United States","sellerName": "Construction Station","sellerPhone": null,"imageUrls": ["https://cdn1.boatline.com/v1/media/6a98f8e2b22dff4e24142ee1.jpg"],"isAuction": false,"updatedAt": "2026-09-03T04:35:25.000Z","scrapedAt": "2026-09-06T08:00:00.000Z"}
The default dataset contains only listing records. SUMMARY and OUTPUT in the default key-value store report the outcome (SUCCEEDED, PARTIAL, EMPTY, BLOCKED, or REJECTED), page counts, delivered results, charged events, estimated event cost, and warnings.
Pay-per-event pricing
| Event | Price | Trigger |
|---|---|---|
| Actor start | $0.00005 | Once when a run starts |
| Listing extracted | $0.005 | After one valid listing is saved to the dataset |
Examples:
- One listing costs up to $0.00505 in Actor events.
- 25 listings cost up to $0.12505.
- 100 listings cost up to $0.50005.
The Actor states the maximum event cost at startup, respects maxResults and the run's maximum charge, deduplicates by listing ID, saves each result before charging it, and stops when the platform reports that the event-charge limit has been reached. Optional Apify platform usage pass-through is not part of this pricing contract.
Reliability and limits
Rock & Dirt currently serves search and detail data in server-rendered page JSON, so the Actor uses lightweight HTTP requests rather than a browser. It sends coherent browser-style headers, persists sessions, retries transient failures with bounded attempts, and paginates the same public search route. Direct access is the default because it is the lowest-cost measured path; Apify Proxy is available as an explicit fallback.
The Actor never fabricates results. A valid no-match search produces an EMPTY summary with zero result events. Invalid domains or routes produce an actionable REJECTED outcome. Repeated challenges produce BLOCKED; partial valid results are preserved and reported as PARTIAL. Target-site changes, removed listings, geographic variation, and temporary rate limits can affect availability.
Search pages currently expose about 20 listings per page. With detail enrichment enabled, each returned listing normally adds one detail request. maxResults, maxPages, concurrency, retries, and platform charge limits bound run size and cost.
Legal and data responsibility
This Actor extracts information displayed on public Rock & Dirt pages. Rock & Dirt and all equipment brands are trademarks of their respective owners; this Actor is independent and is not endorsed by Rock & Dirt. Review the website's terms, robots rules, copyright restrictions, database rights, privacy law, and your intended use before running at scale.
Seller contact extraction is disabled by default. If enabled, handle business phone and email data lawfully, minimize retention, secure exports, honor deletion or objection rights where applicable, and do not use the data for spam, harassment, discrimination, or prohibited profiling. Image URLs point to third-party content and do not grant reuse rights.
For support, include the Actor run ID, a redacted input, the affected public URL, expected outcome, and actual SUMMARY status. Never include tokens, proxy credentials, or private personal data in a support request.