FreightWaves News Scraper — Logistics & Trucking News
Pricing
from $4.31 / 1,000 article returneds
FreightWaves News Scraper — Logistics & Trucking News
Scrape FreightWaves news into JSON: headline, author, dates, section, tags, and full article text for freight and logistics news monitoring. $5.39 per 1,000.
Pricing
from $4.31 / 1,000 article returneds
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Security
Limited permissionsShare
FreightWaves News Scraper turns public FreightWaves news pages into structured article records: headline, summary (dek), author, publish and update times, section, tags, image, and the full visible article text. It is built for freight brokers, carriers, 3PLs, shippers, analysts, and AI pipelines that monitor logistics and trucking news, and costs USD 5.39 per 1,000 articles on the Apify FREE tier (USD 4.31 per 1,000 on GOLD and above).
Point it at the FreightWaves News feed, a category or tag page, or a single article URL. It follows listing pages, opens each story, and returns one clean JSON record per article through the Apify API, MCP, or a dataset export (JSON, CSV, Excel).
What does the FreightWaves News Scraper return?
Each article is one record with these fields. Values the page does not expose are null.
| Field | What it contains |
|---|---|
articleUrl, canonicalUrl | Public FreightWaves article URL and the canonical URL it declares |
articleId | Stable ID derived from the canonical URL, for deduplication across runs |
title | Headline |
dek | Short summary shown under the headline |
author | Byline, for example Noi Mahoney |
publishedAt, updatedAt | Publish and last-update times in ISO 8601 |
section | FreightWaves section, for example American Shipper or Borderlands: Mexico |
tags | Topic labels, for example Trucking, Maritime, Container Shipping |
imageUrl | Lead image |
body | Full visible article text (set includeArticleBody: false to skip it) |
sourceUrl | The listing or input URL where the article was found |
scrapedAt, warnings | Collection time and any extraction notes |
recordType | article for stories |
The last record of every run has recordType: "summary" with page and article counts and warnings. It is not billed, and the same summary is saved as RUN_SUMMARY in the key-value store. Filter on recordType = "article" when you load the data.
In the 2026-10-26 default run, all 20 articles had author, dates, section, tags, image, and body text, with bodies of 2,088 to 8,547 characters.
How do I scrape FreightWaves news by category, tag, or article URL?
Add up to 10 FreightWaves URLs to startUrls. Each one can be:
- the News feed (default):
https://www.freightwaves.com/news/category/news; - a category, for example
https://www.freightwaves.com/news/category/news/international/borderlands-mexico; - a tag page, in the form
https://www.freightwaves.com/news/tag/<tag>; - a single story, for example
https://www.freightwaves.com/news/truckload-contract-rate-increases-riding-steady-above-10.
{"startUrls": [{ "url": "https://www.freightwaves.com/news/category/news" },{ "url": "https://www.freightwaves.com/news/category/logistics-supply-chains" }],"maxResults": 50,"maxPages": 3,"includeArticleBody": true,"requestDelayMs": 750}
maxResults (1–100, default 20) caps articles across all URLs. maxPages (1–10, default 3) caps how many listing pages are followed per URL. requestDelayMs (250–5,000 ms, default 750) paces requests. URLs from other sites are rejected before any article is billed.
Call it from code
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('muhammadafzal/freightwaves-news-scraper').call({ startUrls: [{ url: 'https://www.freightwaves.com/news/category/news' }], maxResults: 25 },{ memory: 1024 },);const { items } = await client.dataset(run.defaultDatasetId).listItems();const articles = items.filter((i) => i.recordType === 'article');console.log(articles.map((a) => `${a.publishedAt} ${a.section}: ${a.title}`));
from apify_client import ApifyClientclient = ApifyClient("MY_APIFY_TOKEN")run = client.actor("muhammadafzal/freightwaves-news-scraper").call(run_input={"maxResults": 25, "includeArticleBody": False},memory_mbytes=1024,)articles = [i for i in client.dataset(run.default_dataset_id).iterate_items() if i["recordType"] == "article"]
Can I monitor freight and logistics news on a schedule?
Yes. Save an input with the categories you follow, add an Apify schedule (for example every morning), and send each finished dataset to a webhook, Slack, Google Sheets, or your database. Use articleId to skip stories you already stored.
Use it from an AI assistant
FreightWaves News Scraper works from Claude, ChatGPT, Cursor, or any MCP client through Apify's MCP server. Add https://mcp.apify.com/?tools=muhammadafzal/freightwaves-news-scraper as a server and ask in plain language, for example: "Get the 20 latest FreightWaves news stories and summarize what they say about truckload rates and cross-border trade." The assistant sees the input fields and the price per article before it runs the tool.
What does the output look like?
Two article records from the default run on 2026-10-26, with body shortened:
[{"recordType": "article","articleUrl": "https://www.freightwaves.com/news/truckload-contract-rate-increases-riding-steady-above-10","canonicalUrl": "https://www.freightwaves.com/news/truckload-contract-rate-increases-riding-steady-above-10","articleId": "14c86d7aa4a4530d","title": "Truckload contract rate increases riding steady above 10%","dek": "The new index from SONAR shows that carriers have been trying to get rate increases since before the market turned...","author": "Zach Strickland, FW Market Expert & Market Analyst","publishedAt": "2026-10-25T00:30:00.000Z","updatedAt": "2026-10-25T00:30:00.000Z","section": "Chart of the Week","imageUrl": "https://www.freightwaves.com/wp-content/uploads/2026/10/23/FW_GAL_T7-409.jpg","tags": ["Chart of the Week"],"body": "Chart of the Week: Contract Rate Change Direction Index – USA SONAR: CRCD.USA Shippers who have reset truckload contracts...","sourceUrl": "https://www.freightwaves.com/news/category/news","scrapedAt": "2026-10-26T07:57:25.211Z","warnings": [],"summary": null},{"recordType": "article","articleUrl": "https://www.freightwaves.com/news/borderlands-mexico-avocado-imports-generate-641m-for-us-trucking-warehousing","title": "Borderlands Mexico: Avocado imports generate $641M for US trucking, warehousing","author": "Noi Mahoney","publishedAt": "2026-10-25T11:00:00.000Z","section": "Borderlands: Mexico","tags": ["Borderlands: Mexico", "News", "Top Stories", "Trucking"],"body": "Borderlands Mexico is a weekly rundown of developments in the world of United States-Mexico cross-border trucking and trade..."}]
Pricing: how much do 1,000 FreightWaves articles cost?
You pay per article returned plus a start fee. The summary record is free, and platform usage is included in these prices.
| Event | FREE | BRONZE | SILVER | GOLD | PLATINUM | DIAMOND |
|---|---|---|---|---|---|---|
| Article returned (each article) | $0.005391 | $0.005256 | $0.005121 | $0.004312 | $0.004312 | $0.004312 |
| Actor start, per started GB of allocated memory | $0.006251 | $0.006094 | $0.005938 | $0.005 | $0.005 | $0.005 |
The Actor's default memory is 512 MB, so a default run pays one start event (any memory up to 1 GB also pays one). An article is charged only after its record is saved. Worked totals:
- The default 20 articles at 512 MB on FREE: $0.006251 + 20 × $0.005391 = $0.1141.
- 100 articles at 1 GB on GOLD: $0.005 + 100 × $0.004312 = $0.4362.
Set maxResults and Apify's maximum total charge per run to bound spend.
When should I use it, and when not?
Use it when you need:
- a daily feed of FreightWaves headlines and full text for a broker, carrier, or shipper team;
- trucking, maritime, air cargo, and supply chain news for dashboards, alerts, or sentiment models;
- article text for an AI summary, RAG index, or market newsletter.
Use something else when you need:
- news from many publishers on any topic: Google News Scraper & API;
- the text of articles from other sites: Smart Article Extractor;
- freight loads and shipping quotes rather than news: Shiply Freight Marketplace Scraper;
- FreightWaves SONAR market data, subscriber-only content, or more than 100 articles per run: this Actor does not provide them.
Limits and reliability
- One run returns at most 100 articles. Run several inputs for more.
- Requests run one at a time with a polite delay; the default 20-article run took about 24 seconds on 2026-10-26.
- Temporary blocks or server errors are retried with a fresh session. If every request fails, the run fails with a clear message instead of returning an empty success.
- If a story exposes metadata but no body text, the record is still returned with a warning.
FAQ
Is there a FreightWaves news API?
This Actor is a FreightWaves news API alternative: call it from apify-client, the Apify REST API, or MCP and get JSON article records without maintaining your own scraper.
Can I scrape a single FreightWaves article?
Yes. Put the article URL in startUrls and set maxResults to 1.
Does it scrape FreightWaves SONAR data?
No. SONAR dashboards and subscriber-only material are out of scope. The Actor reads public news pages only.
How do I get only new stories each day?
Schedule a daily run and keep the articleId values you have already stored; skip any record whose ID you have seen.
Why is there one extra record in my dataset?
It is the run summary (recordType: "summary"). It is not billed. Filter it out with recordType = "article".
Do I need a FreightWaves account or my own proxy?
No. The Actor reads public pages and handles data access itself.
Can an AI agent run it by itself?
Yes. Through Apify's MCP server an agent reads the input schema and the price per article, runs the Actor, and receives the dataset. Set includeArticleBody: false when the agent only needs headlines.
Related Actors
- Google News Scraper & API: headlines from any publisher by keyword.
- Smart Article Extractor: article text and metadata from any public URL.
- MarketWatch Scraper: stock quotes and market news.
- Shiply Freight Marketplace Scraper: freight listings and quotes.
- From the same jobs, events, news, and reviews collection: Jobspresso Remote Jobs Scraper, Google Events API & Scraper, Google Play Reviews Scraper, and Blind Company Reviews & Salary Scraper.
Compliance note
The Actor reads public pages only and never bypasses paywalls or logins. FreightWaves owns its articles: use the text for monitoring and analysis, link back when you quote, and do not republish full stories without permission.
Last verified: 2026-10-27