RSS Feed Scraper — $1/1K · Articles, Dates & Feed Updates
Pricing
from $1.00 / 1,000 feed item extracteds
RSS Feed Scraper — $1/1K · Articles, Dates & Feed Updates
Collect RSS, Atom and JSON Feed entries; normalize dates and filter delivered feed items. Bulk export: JSON, CSV, Excel and API. PPE: $1/1K feed items; start fee, usage extra.
Pricing
from $1.00 / 1,000 feed item extracteds
Rating
0.0
(0)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
15
Total users
2
Monthly active users
10 days ago
Last modified
Categories
Share
RSS Feed Scraper & Reader — RSS, Atom, RDF, JSON Feed & Sitemap to Clean JSON
The universal RSS feed parser for AI agents and no-code automation. Parse available RSS 2.0, Atom, RDF, JSON Feed or XML sitemap into clean, structured JSON — with title, link, author, date, content, categories, media and full article text. Built for LLM/RAG pipelines, news aggregation, podcast monitoring and n8n / Make / Zapier workflows.
Suitable for supported public feeds from blogs, news sites, podcasts and publishing platforms. No external API key is required for basic feed parsing; source coverage varies.
Why this RSS scraper
- 5 feed formats, one actor — RSS 2.0, Atom, RDF (RSS 1.0), JSON Feed and XML sitemaps, auto-detected.
- Full article text for AI — feeds usually give only a short excerpt. Enable
fullTextto fetch clean, LLM-ready markdown of the whole article (ads and boilerplate removed). - Feed auto-discovery — give a plain site URL (e.g.
https://example.com) and it finds the RSS/Atom/JSON feed for you. - Bulk multi-feed — fetch hundreds of feeds in parallel, then deduplicate and merge them into one chronological stream.
- Change monitoring (delta) — return only items that are new since the last run. Perfect for scheduled monitoring.
- Keyword & date filters — keep only items matching your keywords or published in the last N days.
- OPML import — migrate hundreds of feeds from Feedly / Inoreader in one field.
- Podcast-aware — extracts iTunes tags (duration, episode, season, explicit) and enclosures (audio/MP3, images, attachments).
- Datacenter proxy by default — feed requests can use the configured Apify Proxy; source restrictions still apply.
Supported formats
| Format | Example source |
|---|---|
| RSS 2.0 | https://techcrunch.com/feed/ |
| Atom | https://xkcd.com/atom.xml |
| RDF / RSS 1.0 | https://rss.slashdot.org/Slashdot/slashdotMain |
| JSON Feed | https://daringfireball.net/feeds/json |
| XML Sitemap | https://example.com/sitemap.xml |
| Site URL (auto-discover) | https://techcrunch.com |
Quick start
Single feed
{ "feedUrls": ["https://hnrss.org/frontpage"] }
Bulk news aggregator (dedup + newest first)
{"feedUrls": ["https://techcrunch.com/feed/","https://www.theverge.com/rss/index.xml","https://feeds.arstechnica.com/arstechnica/index"],"maxItems": 50,"deduplicate": true,"sortByDate": true}
Full article text for AI / LLM
{"feedUrls": ["https://techcrunch.com/feed/"],"maxItems": 25,"fullText": true}
Keyword monitoring on a schedule
{"feedUrls": ["https://hnrss.org/frontpage"],"keywords": ["AI", "python", "startup"],"maxAgeDays": 7,"onlyNew": true}
Import your Feedly / Inoreader OPML
{ "opmlUrl": "https://example.com/feedly-export.opml" }
Input parameters
| Field | Type | Description |
|---|---|---|
feedUrls | string[] | RSS/Atom/RDF/JSON Feed/sitemap URLs, or plain site URLs (feed auto-discovered) |
maxItems | int | Limit candidate items per feed (0 = no per-feed cap). Default: 1,000 |
stripHtml | bool | Return plain text (true) or original HTML (false). Default: true |
extractFeedMetadata | bool | Include feed title/description/language on each item. Default: true |
deduplicate | bool | Remove duplicate items across feeds. Default: true |
sortByDate | bool | Merge all feeds into one newest-first stream. Default: false |
onlyNew | bool | Return only items not seen in previous runs (delta monitoring). Default: false |
keywords | string[] | Keep only items containing any of these keywords |
maxAgeDays | int | Keep only items from the last N days (0 = no limit) |
fullText | bool | Fetch clean full article text (ads/boilerplate removed). Default: false |
fullTextApiKey | string | Optional API key for the full-text reader — improves reliability at high volume |
opmlUrl | string | URL of an OPML file to import (Feedly/Inoreader export) |
maxConcurrency | int | Parallel fetches. Default: 5 |
timeout | int | HTTP timeout per feed in seconds. Default: 20 |
proxyConfiguration | object | Apify Proxy settings (datacenter by default) |
Output
One dataset row per item:
{"feedUrl": "https://techcrunch.com/feed/","feedTitle": "TechCrunch","title": "Example article title","link": "https://techcrunch.com/2026/...","guid": "https://techcrunch.com/?p=123","pubDate": "Mon, 13 Jul 2026 18:22:10 +0000","datePublished": "2026-07-13T18:22:10+00:00","author": "Jane Doe","description": "Short summary...","content": "Article content from the feed...","categories": "AI, Startups","enclosures": [{ "url": "https://.../audio.mp3", "type": "audio/mpeg", "length": "12345" }],"fullText": "Full clean article text (when fullText is enabled)..."}
Items with parseable source dates get an ISO-8601 datePublished so dates from RSS (RFC-822) and Atom/JSON (ISO) are consistent — ideal for sorting and feeding LLMs.
Use cases
- AI agents / LLM & RAG pipelines — clean full-text JSON to summarize, embed or monitor industry news.
- News aggregation — build a niche news site or a Slack/Discord digest bot from dozens of sources.
- Content monitoring — track keywords across feeds and get only new matches on a schedule (
onlyNew). - Podcast pipelines — pull episodes with audio enclosures and iTunes metadata.
- Medium / Substack / YouTube tracking — follow newsletters and channels via their RSS feeds.
- SEO & competitive research — analyze competitor publishing frequency and topics.
Full-text extraction notes
fullText fetches each article and returns clean, LLM-ready text with ads and boilerplate removed.
- Works out of the box for a small initial sample; no fixed keyless volume is guaranteed; beyond that some items may return a
fullTextErrorinstead offullText(the item is still returned with its feed excerpt). - Requests are spread across rotating datacenter proxy IPs to maximize throughput.
- For reader-authenticated full-text requests, set the optional
fullTextApiKey; service quotas and access limits still apply.
Pricing
- $0.001 per item ($1 per 1,000 items).
- Broken or unreachable feeds are skipped cleanly.
How it works
- Use the configured connection route; public sources may still deny a request.
- Fetch the URL and auto-detect the format (RSS / Atom / RDF / JSON Feed / sitemap), or discover a feed from an HTML page.
- Parse items with namespace-aware stdlib XML / JSON — no heavy dependencies, fast cold starts.
- Deduplicate, filter (keywords / age), apply delta, and optionally sort by date.
- Optionally fetch clean full article text (ads/boilerplate removed).
- Push structured JSON to the dataset.
Tips
- YouTube as RSS:
https://www.youtube.com/feeds/videos.xml?channel_id=<id>(free, no API quota). - Substack: append
/feedto any Substack URL. - Medium:
https://medium.com/feed/@userormedium.com/feed/publication-name. - Scheduling: Apify Scheduler +
onlyNew: truesupports periodic new-item checks with bounded shared history; review delivery and source failures.
Choose an RSS-to-JSON workflow
Use this RSS feed reader when you already know which publications or feeds to follow and need structured items for a digest, editorial review or an AI pipeline. Begin with feed excerpts. Optional full-text requests add a separate source dependency and should be requested only when the excerpt is insufficient.
| Goal | Starting settings | Check before using the output |
|---|---|---|
| Small news digest | One feed and a small maxItems | Title, canonical link and available date |
| Multi-source research | Feed list, deduplication and sorting | Per-feed limits and duplicate identity |
| Topic monitoring | Keywords and an age window | Substring relevance and undated items |
| AI article processing | Small batch with fullText | fullTextError and source access/reader coverage |
Read two public feed entries
{"feedUrls": ["https://hnrss.org/frontpage"],"maxItems": 2,"fullText": false,"onlyNew": false,"maxConcurrency": 1}
A two-item sample is enough to inspect the record shape before increasing collection. maxItems is applied per feed, not as a global Dataset ceiling.
Merge two feed samples
{"feedUrls": ["https://hnrss.org/frontpage","https://xkcd.com/atom.xml"],"maxItems": 2,"deduplicate": true,"sortByDate": true,"fullText": false}
Two sources can produce up to four items before deduplication and other filters. Different links or GUIDs can still describe the same story; this is identity deduplication rather than semantic news clustering.
Review a bounded topic window
{"feedUrls": ["https://hnrss.org/frontpage"],"maxItems": 10,"keywords": ["python","open source"],"maxAgeDays": 7,"onlyNew": false,"fullText": false}
Keyword matching is case-insensitive substring matching over available text fields. Undated or unparseable-date items are retained by the age filter. A small candidate slice may produce zero matching results.
Keep a small feed excerpt for downstream text processing
{"feedUrls": ["https://xkcd.com/atom.xml"],"maxItems": 2,"stripHtml": true,"extractFeedMetadata": true,"autoDiscover": false,"fullText": false}
This parses an explicit feed without searching an HTML page for a feed link. Plain text can lose inline formatting; it is still the supplied feed content, not a guarantee of the complete linked article.
Monitoring state, completeness and cost
onlyNew uses persistent named history in the running Apify account. History is
shared across this Actor's monitoring jobs rather than isolated per watchlist;
there is no input for a separate monitor name. The history retains at most
20,000 seen IDs. A first run emits currently unseen matching items, not a
historical baseline of everything the publisher has ever posted. History is
saved before final output delivery, so an interrupted or budget-stopped run
needs careful reconciliation with the Dataset before relying on a later delta.
The runtime does not write SUMMARY or ERRORS records. Inspect run logs and the Dataset; unavailable feeds are logged and skipped. A successful run with zero items can mean filtering, seen items, an empty feed or a source failure. These outcomes must not all be reported as 'nothing new'. Sitemap entries may contain only link/date context, and a sitemap index is not an unlimited recursive crawl. Feed auto-discovery follows an available alternate feed link, not every feed published anywhere on the site.
The current item event is $0.001, or $1 per 1,000 delivered rows. Startup is $0.00005 per allocated GB with a minimum of one event; platform usage is additional. Two delivered items are $0.002 in item events before startup and resources. More feeds, OPML imports and full-text enrichment increase work; maxItems does not cap the total bill. Use an Apify run spending limit and begin with an explicit small per-feed limit. The runtime and schema default is1,000.
Full-text extraction is best effort through an external reader. A supplied reader key can have its own quota or service charges; it is not a promise of unlimited access. Do not treat an excerpt plus fullTextError as a complete article. Preserve feedUrl, link/GUID and available dates when exporting JSON, CSV or a digest. Podcasts expose enclosure metadata and URLs; media files are not automatically downloaded or transcribed.
Does sorting reconstruct a complete publication history? No. It sorts the available selected items by parsed date. Feed retention, per-feed caps and unknown dates limit that stream.
Can a schedule guarantee instant, duplicate-free monitoring? No. Publisher updates, collection intervals, shared bounded state and source failures still matter. Keep your own delivery ledger for an important downstream workflow.
n8n and developer integrations
Use this Actor in your automation or application with the existing community integrations below. An Apify account and API token are required; Actor and platform charges follow the current pricing.
- n8n community node: n8n-nodes-apivault-rss. Install package name
n8n-nodes-apivault-rssin a self-hosted n8n instance that permits community packages. - Python client and examples: GitHub.
- n8n source and usage: GitHub.
These are community packages. Publication on npm does not establish n8n verification or availability in n8n Cloud. Review the linked package README for supported inputs and setup.