News Aggregator by Topic
Pricing
$0.50 / 1,000 article returneds
News Aggregator by Topic
Aggregate news for any topic from Google News, deduplicate near-duplicates, and tag basic sentiment.
Pricing
$0.50 / 1,000 article returneds
Rating
0.0
(0)
Developer
Ken Agland
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Share
Aggregate recent news for any topic from Google News RSS, deduplicate near-identical stories, and tag basic sentiment. No API key needed.
What it does
- Queries Google News RSS for each topic you provide.
- Cleans each headline and splits the source name out of the title.
- Deduplicates near-identical stories by a normalized title.
- Tags each article with a simple positive, negative, or neutral sentiment.
- Optionally keeps only articles from the last N hours.
- Writes an aggregate summary (per-topic counts and sentiment breakdown) to OUTPUT.
Example input
{"topics": ["openai","electric vehicles"],"maxPerTopic": 25,"language": "en-US","country": "US","sinceHours": 48,"sentiment": true}
Input
| Field | Type | Description |
|---|---|---|
topics | array | One or more topics or search queries. Each is queried separately. |
maxPerTopic | integer | Max articles to keep per topic after dedup. Default 25. |
language | string | Google News language code (hl), for example en-US. Default en-US. |
country | string | Google News country code (gl), for example US. Default US. |
sinceHours | integer | Keep only articles from the last N hours. 0 disables the filter. Default 0. |
sentiment | boolean | Tag positive, negative, or neutral sentiment. Default true. |
Output
Each dataset item is one article:
{"topic": "openai","title": "OpenAI launches new model","source": "TechCrunch","url": "https://news.google.com/rss/articles/...","publishedAt": "2026-07-04T09:30:00.000Z","ageHours": 5.2,"sentiment": "positive","sentimentScore": 1}
The run's default key-value store record OUTPUT holds an aggregate:
{"topics": ["openai","electric vehicles"],"totalArticles": 42,"perTopicCounts": {"openai": 25,"electric vehicles": 17},"sentimentBreakdown": {"positive": 18,"negative": 9,"neutral": 15},"query": {"language": "en-US","country": "US","maxPerTopic": 25,"sinceHours": 48,"sentiment": true},"generatedFrom": "https://news.google.com/rss/search"}
How it works
For each topic the Actor calls the public Google News RSS search endpoint, parses the XML with fast-xml-parser, and reads rss.channel.item. Google News titles usually end with - SourceName, so the Actor splits that off into the source field. It deduplicates stories by a normalized lowercase title across all topics, applies the optional time filter, and scores sentiment from the headline using a small built-in word list (no extra service or key). Requests retry on rate limits and server errors with backoff. It needs no Apify token.
MIT licensed.