# Splash247 Shipping News Scraper (`acquistion-automation/splash247-shipping-news-scraper`) Actor

Scrapes Splash247 maritime and shipping news articles from the public RSS feed. Returns each article as a flat row with title, date, author, and full body text.

- **URL**: https://apify.com/acquistion-automation/splash247-shipping-news-scraper.md
- **Developed by:** [Acquisition Automation Co.](https://apify.com/acquistion-automation) (community)
- **Categories:** Automation, Integrations, News
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.50 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

![Acquisition Automation Co. Search less. Close more.](https://api.apify.com/v2/key-value-stores/AOdPHdOpeDpzEPS5f/records/banner.jpg)

## ⚓ Splash247 Shipping News Scraper

> **Turn the Splash247 maritime news feed into flat rows: headline, link, publication date, author, section tags and the feed summary.** No account, no API key, no login.

Splash247 covers shipping: tankers, dry cargo, containers, shipyards, ports, finance. Its public RSS feed is the fastest way to see what moved today, and RSS is not something a spreadsheet reads. This Actor pulls the feed, applies a title filter if you give it one, and writes one row per article into a dataset you can open, schedule and diff.

| Who uses it | What they use the feed for |
|---|---|
| 💼 Buyers of marine and logistics businesses | Watching yard, fleet and operator news for the names on a target list |
| 📈 Shipping finance and chartering desks | Keeping a dated, searchable record of sector news instead of an inbox |
| 🔍 Diligence analysts | Building a timeline of what was published about a counterparty and when |
| 🤖 Newsroom and agent workflows | Feeding a summariser or an alert rule with structured rows rather than HTML |

### 📋 What it does

> 💡 **Why it matters:** a name that appears three times in a sector feed in one month is a signal. That is only visible once the feed is a table you can sort.

- 📰 **Reads the public Splash247 RSS feed** and returns one row per article.
- 🔎 **Filters by title substring** with `query`, so a run can track a single vessel type, yard or company name.
- 🏷 **Section tags come through as a list**, for example `Containers`, `Tankers`, `Shipyards`, `Japan`.
- 🖊 **Author and publication date** on every row, so the dataset sorts and dedupes cleanly.
- 🔗 **A direct link** to each article.
- 🔁 **Point it at another feed.** `feedUrl` defaults to the main feed and accepts a category feed instead.
- 💾 **Exports to CSV, Excel, JSON or XML**, from the run page or the API.

### 📊 Output

Every article is one flat row with 8 fields.

| Field | Type | Description |
|---|---|---|
| 📰 `title` | string | Article headline as published |
| 🔗 `link` | string | Direct link to the article on splash247.com |
| 📅 `pubDate` | string | Publication date in RFC 822 form, for example `Mon, 14 Sep 2026 11:00:00 +0000` |
| 🖊 `author` | string | Byline, for example `Adis Ajdin`. `Splash` on staff pieces |
| 🏷 `categories` | array | Section and region tags on the article |
| 📄 `summary` | string | The excerpt the feed publishes, not the full article. It ends where the feed truncates it, and carries the feed's own HTML entities such as `&#8230;` |
| 🕒 `scrapedAt` | string | ISO timestamp of collection |
| ⚠️ `error` | string | `null` on a normal row |

`summary` is the RSS excerpt. Follow `link` if you need the whole piece.

#### Example rows

```json
{
  "title": "Shipping’s crystal ball cracks in the 2020s",
  "link": "https://splash247.com/shippings-crystal-ball-cracks-in-the-2020s/",
  "pubDate": "Mon, 14 Sep 2026 14:53:07 +0000",
  "author": "Splash",
  "categories": [
    "Containers",
    "Contributions",
    "Dry Cargo",
    "Gas",
    "Tankers"
  ],
  "summary": "Shipping has long been treated as an early warning system for the world economy. In an era of wars, rerouting, services and AI, the relationship is becoming far harder to read. Splash investigates whether this old adage rings true still, or even if it ever did. For decades, shipping has enjoyed a reputation as one &#8230;",
  "scrapedAt": "2026-09-14T16:25:16.400Z",
  "error": null
}
```

```json
{
  "title": "Tokyo adds $635m to shipyard revival push",
  "link": "https://splash247.com/tokyo-adds-635m-to-shipyard-revival-push/",
  "pubDate": "Mon, 14 Sep 2026 11:00:00 +0000",
  "author": "Adis Ajdin",
  "categories": [
    "Asia",
    "Shipyards",
    "Japan"
  ],
  "summary": "Japan has approved a second wave of investment plans under its shipbuilding revival fund, allocating up to another ¥98bn ($635m) in state support across five yard groups. The transport ministry has cleared projects from Oshima Shipbuilding, Kawasaki Heavy Industries, the Shin Kurushima group, Naikai Zosen and Mitsubishi Shipbuilding. Maximum subsidies stand at about ¥6.1bn ($40m) &#8230;",
  "scrapedAt": "2026-09-14T16:25:16.513Z",
  "error": null
}
```

CSV and Excel exports flatten `categories` into columns. Export JSON if you want the list intact.

### ✨ Why choose this Actor

| | What you get |
|---|---|
| **A table, not an inbox** | Dated rows with author and tags sort, filter and dedupe. A newsletter does none of that. |
| **No credentials** | The feed is public. No account, no key, no quota. |
| **Filter at the source** | `query` matches a title substring during the run, so you pay for the articles you asked for. |
| **Your own archive** | Schedule the run and you keep the history, rather than depending on how far back the feed reaches. |
| **You pay per row** | No subscription. A filter that matches nothing costs nothing. |

### 🚀 How to use it

1. [Create a free Apify account](https://console.apify.com/sign-up). New accounts start with $5 of credit.
2. Open the Actor and select **Try for free**.
3. Leave `feedUrl` on the default feed, or point it at a category feed.
4. Add a `query` to filter headlines, and set `maxItems` to cap the run.
5. Select **Start**, then export from the **Dataset** tab as CSV, Excel, JSON or XML.

A first run:

```json
{
  "maxItems": 10,
  "feedUrl": "https://splash247.com/feed/"
}
```

Track one topic:

```json
{
  "maxItems": 100,
  "feedUrl": "https://splash247.com/feed/",
  "query": "shipyard"
}
```

### ⚙️ Input

| Field | Required | Description |
|---|---|---|
| `maxItems` | No | How many articles to collect per run. Default 10 |
| `feedUrl` | No | RSS feed to read. Defaults to `https://splash247.com/feed/` |
| `query` | No | Title substring filter. Blank means every article in the feed |

### 💰 Pricing

Pay per result. No subscription, and no Apify platform usage on top.

| Apify plan | Free | Bronze | Silver | Gold | Platinum | Diamond |
|---|---|---|---|---|---|---|
| Per article row | $0.0085 | $0.0082 | $0.0078 | $0.0075 | $0.0075 | $0.0075 |

| Rows collected | Cost on the Free plan |
|---|---|
| 100 | $0.85 |
| 1,000 | $8.50 |
| 10,000 | $85.00 |

**Free plan runs** return up to 10 rows as a preview. Any paid Apify plan lifts that to 1,000,000 per run.

### 🔌 Integrate with any app

The dataset is available through the Apify API as soon as the run finishes. Use `run-sync-get-dataset-items` for a one-shot call, webhooks to post new articles into Slack or a database, or the Make, Zapier, Airbyte and LangChain integrations listed on the Actor page. Schedule it hourly and each run writes its own dataset.

### 🤖 Use with an AI agent

Give an agent live access to the feed over the Model Context Protocol:

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=acquistion-automation/splash247-shipping-news-scraper"
```

Then ask it in plain language what shipping published today and have it read the headlines back.

### ❓ Frequently asked questions

**Does this return the full article text?**
No. It returns the feed's own excerpt in `summary`, which ends where the feed truncates it. Follow `link` for the whole article.

**Why does `summary` contain `&#8230;`?**
That is the HTML entity for an ellipsis, published by the feed itself. The Actor passes the text through rather than rewriting it.

**How far back does the feed go?**
As far as Splash247 publishes in RSS, which is a recent window rather than the whole archive. Schedule runs if you want a longer history.

**Can I read a category feed instead?**
Yes. Put the category's RSS URL in `feedUrl`.

**Is `query` a full-text search?**
No. It matches a substring of the headline. Filter `summary` afterwards in a spreadsheet if you need more.

**Do I need a proxy?**
No. Requests and retries are handled inside the Actor and included in the price.

### 🔗 More from Acquisition Automation Co.

- [USCG PSIX Vessel Registry Scraper](https://apify.com/acquistion-automation/uscg-psix-vessel-incidents-scraper)
- [AirLive Aviation News RSS Scraper](https://apify.com/acquistion-automation/airlive-aviation-news-rss-scraper)
- [404 Media Articles Scraper](https://apify.com/acquistion-automation/404media-articles-scraper)
- [SAM.gov Contract Opportunities Scraper](https://apify.com/acquistion-automation/sam-gov-contracts-scraper)
- [BizBuySell Scraper](https://apify.com/acquistion-automation/bizbuysell-scraper)

### About Acquisition Automation Co.

We build automation for people buying businesses. The repetitive part of an acquisition search, checking listings, pulling public records, tracking owners and assets, is work a machine should do, so the buyer's time goes into judging deals instead of collecting them.

We add new Actors regularly. If there is a source you need and do not see here, tell us.

### 🆘 Support

Open an issue in the **Issues** tab of this Actor with your run ID, the input you used, and what you expected to get back.

### ⚠️ Disclaimer

This Actor is independent and is not affiliated with, endorsed by, or sponsored by Splash247 or Asia Shipping Media. It collects only publicly available data from a public RSS feed. Article text remains the property of its publisher. You are responsible for using that data in compliance with the source's terms of service and applicable law, including copyright.

# Actor input Schema

## `maxItems` (type: `integer`):

How many articles to collect per run.

## `feedUrl` (type: `string`):

RSS feed URL to scrape.

## `query` (type: `string`):

Optional title substring filter.

## Actor input object example

```json
{
  "maxItems": 10,
  "feedUrl": "https://splash247.com/feed/"
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "maxItems": 10,
    "feedUrl": "https://splash247.com/feed/"
};

// Run the Actor and wait for it to finish
const run = await client.actor("acquistion-automation/splash247-shipping-news-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "maxItems": 10,
    "feedUrl": "https://splash247.com/feed/",
}

# Run the Actor and wait for it to finish
run = client.actor("acquistion-automation/splash247-shipping-news-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "maxItems": 10,
  "feedUrl": "https://splash247.com/feed/"
}' |
apify call acquistion-automation/splash247-shipping-news-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,acquistion-automation/splash247-shipping-news-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/vINelzOZfcmqSJTtL/builds/GA5Cb2M3PeP71p4tw/openapi.json
