ParseForge Scrapers

Machinery Trader Scraper

parseforge/machinerytrader-scraper

AutomationE-commerce

Scrapes Machinery Trader equipment listings by search URL or filters. Returns each listing as a flat row with price, hours, year, serial number, location, and other details.

Run this scraper See the API call
Total users
38
Monthly active
8
Total runs
1.1K
Bookmarked
0
Rating
5.0 (2)
Last modified
12 days ago

Overview

ParseForge

Machinery Trader Scraper

Scrape Machinery Trader listings for any equipment category, manufacturer, or URL, up to a million per run. Every listing comes with its price, hours, year, serial number, and location. No login or API key. Export to CSV, JSON, Excel, or XML.

Machinery Trader's public search pages hold the asking price, hours, and specs for nearly every piece of heavy equipment for sale in North America, but the site has no official API and manual copying is slow. This Actor reads those listing pages directly, filters by category, manufacturer, year, price, hours, horsepower, ROPS, drive type, condition, state, or certification, and returns each match in one fixed schema.

Who uses it What they scrape Machinery Trader for
Equipment dealers Monitor competitor asking prices for the same make and model in their region
Market researchers Track supply and pricing trends for specific equipment categories over time
Fleet managers Build a shortlist of available machines that meet their spec and budget
Data analysts Feed structured equipment listings into pricing models or dashboards

What it does

This Actor collects Machinery Trader equipment listings by search URL or filter criteria, and returns each one as a flat row with its price, hours, year, serial number, location, and other listing details.

  • ๐Ÿ” Search by URL or filters: paste a Machinery Trader search or detail URL, or set category, manufacturer, year, price, hours, horsepower, ROPS, drive type, condition, state, and certified filters.
  • ๐Ÿ“Š Flat row per listing: every result includes the listing title, price, hours, year, serial number, location, and other fields in one consistent schema.
  • โš™๏ธ Deep filtering: narrow results by equipment category, manufacturer, year range, price range, hours, horsepower, ROPS, drive type, condition, state, and certified status.
  • ๐Ÿ“ฆ Bulk export: collect up to 1,000,000 listings per run and export to CSV, JSON, Excel, or XML.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Machinery Trader data

๐Ÿ“ˆ Track competitor pricing.

A dealer runs the Actor weekly for a manufacturer and state, then compares asking prices against their own inventory to adjust listings.

๐Ÿ”Ž Find machines that meet a spec.

A fleet manager sets category, year range, horsepower, and ROPS filters to get a shortlist of available excavators or dozers in their region.

๐Ÿ“Š Build a market dataset.

A market researcher pulls all listings for a category over several months to analyze price trends and supply volume.

๐Ÿงน Clean data for analysis.

A data analyst exports listings to CSV and joins them with internal records to spot pricing anomalies or inventory gaps.

Why choose this scraper

What you get
No API key Reads public Machinery Trader pages directly, no registration or rate limits
One fixed schema Every listing returns the same fields, so you can merge runs without cleaning
Filter before you pay Category, manufacturer, year, price, hours, horsepower, ROPS, drive type, condition, state, and certified filters cut noise before storage
Scale to a million Paid users can pull up to 1,000,000 listings in a single run

How it compares

No other Store actor targets Machinery Trader the same way, so the honest comparison is with the alternatives teams actually weigh.

Machinery Trader Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When Machinery Trader changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor from a Machinery Trader search or detail URL, or set category, manufacturer, year, price, hours, horsepower, ROPS, drive type, condition, state, and certified filters. Filters run as each listing is read, so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
  "startUrl": "https://www.machinerytrader.com/listings/search?ListingType=For%20Retail",
  "maxItems": 10
}

A larger pull:

{
  "startUrl": "https://www.machinerytrader.com/listings/search?ListingType=For%20Retail",
  "maxItems": 200
}

Pricing

Pay-per-result: $0.032 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $3.20
1,000 results $32.00
10,000 results $320.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Machinery Trader Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Machinery Trader through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/machinerytrader-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that your filters are not too restrictive. Try removing one filter at a time, or use a broader category or manufacturer. Also confirm the startUrl is a valid Machinery Trader search or detail page.

Why did the run stop at 10 listings?

Free Apify users are limited to 10 listings per run. Upgrade to a paid plan and set maxItems higher to collect more.

Why are some listings missing fields?

Machinery Trader listings do not always include every field. If a seller did not provide hours or serial number, that field will be empty in the output.

Can I scrape a detail page instead of a search page?

Yes. Paste the detail page URL into startUrl, and the Actor will return that single listing as one row.

Why did I get an error about startUrl and filters?

Use either startUrl OR the filter options, not both. If you provide a startUrl, the filter fields are ignored.

FAQ

Question Answer
Do I need a Machinery Trader account or API key? No. The Actor reads public listing pages directly, so no login or API key is required.
Can I scrape a specific search URL? Yes. Paste any Machinery Trader search or detail URL into the startUrl field, and the Actor will collect the listings from that page.
What filters can I use? You can filter by category, manufacturer, year range, price range, hours, horsepower, ROPS, drive type, condition, state, and certified status.
How many listings can I get in one run? Free users are limited to 10 listings. Paid users can set maxItems up to 1,000,000.
What data does each listing include? Each row includes the listing title, price, hours, year, serial number, location, and other fields shown in the sample output.
Can I export the results? Yes. You can export to CSV, JSON, Excel, or XML from the Apify dataset.
Does this work for all equipment categories? Yes. The category filter covers everything from excavators and dozers to trailers, cranes, and forestry equipment.
Can I filter by manufacturer? Yes. The manufacturer filter includes thousands of brands, from Caterpillar and John Deere to smaller niche makers.
Is the data live? The Actor reads the current public listing pages at the time of the run, so you get the latest asking prices and availability.
Can I schedule this to run automatically? Yes. You can set up a schedule in Apify to run the Actor daily, weekly, or at any interval you need.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Sandhills Global, Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
startUrl string Direct URL to scrape from MachineryTrader. Can be either a search/listing page URL (e.g., https://www.machinerytrader.com/listings/search?ListingType=For%20Retail) or a detail page URL (e.g., https://www.machinerytrader.com/listing/for-sale/239377131/...). Use this OR the filter options below, but not both. https://www.machinerytrader.com/listings
maxItems integer Maximum number of equipment listings to collect. Free users: Limited to 100. Paid users: Optional, max 1,000,000 10
category string (294 options) Filter by equipment category (optional). In case of not selected, all categories will be scraped. not set
manufacturer string (4253 options) Filter by equipment manufacturer/brand (optional). Examples: 'Caterpillar', 'John Deere', 'Komatsu', 'Bobcat'. not set
yearMin integer Minimum equipment year (optional). Example: 2015 not set
yearMax integer Maximum equipment year (optional). Example: 2024 not set
serialNumber string Filter by equipment serial number (optional). not set
priceMin integer Minimum asking price in USD (optional). not set
priceMax integer Maximum asking price in USD (optional). not set
Hours string Filter by hours (optional). not set
horsePowerMin integer Filter by horse power (optional). not set
horsePowerMax integer Filter by horse power (optional). not set
rops string (3 options) Filter by ROPS (optional). not set
driveType string (26 options) Filter by drive type (optional). not set
condition string (4 options) Filter by condition (optional). not set
state string (63 options) Filter by state (optional). not set
certified boolean Filter by certified (optional). not set

Pricing

from $24.00 per 1,000 results

Charged forWhat it isPrice each
Actor Start Charged once when the run starts. $0.005
Result Item Charged once per result collected. $0.024 to $0.032

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~machinerytrader-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

Rated 5.0 out of 5 across 2 reviews. Read them on Apify.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run Machinery Trader Scraper on Apify All scrapers