Rock & Dirt Scraper – Heavy Equipment Listings
Pricing
from $7.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 $7.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
7 days ago
Last modified
Categories
Share
Rock & Dirt Heavy Equipment Scraper
Free plan limit: Free-plan users can receive up to 5 result records per run. Paid-plan and local/unknown runs retain the Actor's existing limits.
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. |
Search with detail enrichment
{"startUrls": [{"url": "https://www.rockanddirt.com/search/excavators?category=Excavators"}],"maxResults": 25,"maxPages": 3,"includeDetails": true,"includeSellerContact": false,"maxConcurrency": 2}
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.005 | Once when a run starts |
| Listing extracted | $0.01 | After one valid listing is saved to the dataset |
Examples:
- One listing costs up to $0.0105 in Actor events.
- 25 listings cost up to $0.255.
- 100 listings cost up to $1.005.
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. Requests use the Actor's configured DataImpulse proxy; provider transfer charges are separate from Apify platform and event usage.
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.
Pricing
This Actor uses pay-per-event pricing. These are the current Apify Store event prices:
| Event | Price (USD) | When it is charged |
|---|---|---|
listing-extracted | FREE: $0.01; BRONZE: $0.009; SILVER: $0.008; GOLD: $0.007; PLATINUM: $0.007; DIAMOND: $0.007 | Rock & Dirt listing extracted — One schema-valid public Rock & Dirt listing written to the default dataset. |
apify-actor-start | $0.005 | Actor Start — Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). — Charged once per run. |
Apify platform usage for this Actor run is included alongside the event prices above; no separate per-run platform-usage fee is passed to users.
This covers Apify platform usage for this Actor run. Other Apify products or usage outside this Actor run may still follow your account plan.