Wie Sie Ihre eigenen "Google News" mit RSS-Feeds erstellen
Google News bedient täglich Milliarden von Schlagzeilen, aber zu welchem Preis? Algorithmenmanipulation, Datenschutzerosion und sinkendes Vertrauen haben Millionen dazu gebracht, nach Alternativen zu suchen. Im Jahr 2026 ist der Aufbau eines eigenen Nachrichtenaggregators nicht nur möglich - er ist praktisch, erschwinglich und ermächtigend.
Dieser umfassende Leitfaden führt Sie durch die Erstellung eines personalisierten "Google News" mit RSS-Feeds. Von Architekturentscheidungen bis hin zu KI-gestützten Filtern lernen Sie, wie Sie ein Nachrichtenerlebnis erstellen, das Ihnen hilft. Ihr Interessen – nicht Werbetreibende oder Engagement-Metriken. Ob Sie ein Entwickler sind, der von Grund auf neu erstellt wird, oder ein Power-User, der vorhandene Tools nutzt, in diesem Handbuch haben Sie sich damit beschäftigt.
1. Warum bauen Sie Ihren eigenen News Aggregator?
Bevor Sie in die Implementierung einsteigen, sollten Sie die greifbaren Vorteile Ihres Besitzes einer News-Pipeline verstehen:
- Algorithmische Unabhängigkeit: Sie entscheiden, was wichtig ist, nicht Engagement-Optimierung AI
- DatenschutzKeine Lesehistorie, die an Werbetreibende verkauft oder für Profiling verwendet wird
- Komplette Anpassung: Quellen, Themen und Präsentation genau nach Ihren Vorlieben kuratieren
- Keine Werbung oder PaywallsSauberes Leseerlebnis, das sich auf Inhalte konzentriert, nicht auf Monetarisierung
- Portable AbonnementsOPML-Export bedeutet, dass Sie Ihre Feed-Liste für immer besitzen
- KosteneffizienzKostenlose RSS-Feeds + erschwingliche Tools vs. mehrere News-Abonnements
Plattformvergleich: Kontrolle, Datenschutz & Customization (0-100)
2. Architekturübersicht: Bausteine Ihrer News App
Ein robuster Nachrichtenaggregator erfordert mehrere miteinander verbundene Komponenten. Hier ist die High-Level-Architektur:
Custom News Aggregator Architektur
Quellwebsites
News-Sites, Blogs, Presseräume mit RSS-Feeds
Polling Service für Feeds
Geplantes Abrufen alle 15-60 Minuten
Inhaltsspeicherung
PostgreSQL/MongoDB für Artikel + Metadaten
AI-Verarbeitungsschicht
Zusammenfassung, Deduplizierung, Ranking
Filtermotor
Keywords, Quellen, Themen, Prioritäten
Benutzerschnittstelle
Web-App, mobile App, E-Mail-Digests
RSS Feed Flow behandelt die Schichten 2-5 aus der Box.
Kernkomponenten erklärt
Polling Service für Feeds
Geplante Jobs, die RSS-Feeds in konfigurierbaren Intervallen abrufen (15-80 min). Behandelt Wiederholungen, Timeouts und Fehlerprotokollierung.
Content Parser
Extrahiert Titel, Autor, PubDate, Inhalt, Bilder aus RSS XML. Normalisiert verschiedene Feed-Formate (RSS 2.0, Atom, JSON Feed).
Deduplizierungs-Engine
Identifiziert doppelte Geschichten über Quellen hinweg mit Titelähnlichkeit, URL-Kanonisierung und Content-Hashing.
AI-Verarbeitungsschicht
Generiert Zusammenfassungen, extrahiert Entitäten, bewertet Relevanz, erkennt Stimmung. Kann OpenAI, Claude oder selbst gehostete Modelle verwenden.
Filtern und Ranking
Wendet benutzerdefinierte Regeln (Stichworte, Quellen, Themen) an und ordnet Artikel nach Wichtigkeits-, Aktualitäts- und Personalisierungssignalen ein.
Liefermechanismen
Web-Dashboard, mobile App, E-Mail-Digests, Slack / Discord-Benachrichtigungen, einbettbare Widgets für Websites.
3. Schritt-für-Schritt-Anleitung zur Umsetzung
Phase 1: Planung & Feed Discovery (Woche 1)
Definieren Sie Ihre Informationsdiät
Bevor Sie Feeds sammeln, klären Sie, was Ihnen wichtig ist:
Information Diet Template
# Categories & Priority Levels
CRITICAL (check hourly):
- Breaking news (Reuters, AP)
- Market data (Bloomberg, WSJ)
- Security alerts (Krebs, BleepingComputer)
HIGH (check 2-4x daily):
- Industry news (TechCrunch, Ars Technica)
- Competitor updates (company blogs)
- Regulatory changes (gov RSS feeds)
MEDIUM (daily digest):
- Long-form analysis (The Atlantic, Vox)
- Research papers (arXiv, Nature)
- Opinion pieces (selected columnists)
LOW (weekly roundup):
- Entertainment
- Sports
- LifestyleEntdecken Sie hochwertige RSS-Feeds
Verwenden Sie mehrere Entdeckungsmethoden für eine umfassende Abdeckung:
Feed Discovery Toolkit
# Method 1: Common URL patterns
https://reuters.com/rss
https://apnews.com/rss
https://bbc.com/news/rss
https://techcrunch.com/feed/
https://[site].com/feed.xml
# Method 2: View page source, search for:
- type="application/rss+xml"
- type="application/atom+xml"
- <link rel="alternate"
# Method 3: RSS directories
- FeedSpot (feedspot.com)
- RSS.com directory
- GitHub awesome-rss lists
# Method 4: RSS Feed Flow Auto-Detect
Paste any URL → RSS Builder → "Find Feeds"
→ Returns all discoverable feeds from that domainTop Trusted News Quellen mit RSS
Reuters
Associated Press
BBC News
NPR
Das Wall Street Journal
Bloomberg
TechCrunch
Ars Technica
Phase 2: Backend-Entwicklung (Wochen 2-3)
Einrichtung des Feed Polling Service
Planen Sie regelmäßige Feed-Abrufe mit ordnungsgemäßer Fehlerbehandlung:
services/feedPoller.ts (Node.js + BullMQ)
import { Queue, Worker } from 'bullmq';
import Parser from 'rss-parser';
import Redis from 'ioredis';
const redis = new Redis(process.env.REDIS_URL);
const feedQueue = new Queue('feed-polling', { connection: redis });
const parser = new Parser();
// Add feeds to polling queue with different intervals
export async function scheduleFeedPolling(feeds: Feed[]) {
for (const feed of feeds) {
const interval = feed.priority === 'critical' ? 15 :
feed.priority === 'high' ? 60 : 240;
await feedQueue.add('fetch-feed',
{ feedUrl: feed.url, feedId: feed.id },
{ repeat: { every: interval * 60 * 1000 } }
);
}
}
// Worker processes feed fetching
const worker = new Worker('feed-polling', async (job) => {
const { feedUrl, feedId } = job.data;
try {
const feed = await parser.parseURL(feedUrl, {
headers: { 'User-Agent': 'CustomNews/1.0' },
timeout: 10000,
});
await storeFeedItems(feedId, feed.items);
return { success: true, itemsCount: feed.items.length };
} catch (error) {
console.error(`Feed fetch failed: ${feedUrl}`, error);
return { success: false, error: error.message };
}
}, { connection: redis });Implementieren von Content Storage
Entwerfen Sie ein Schema, das effizientes Abfragen und Deduplizieren unterstützt:
Datenbankschema (PostgreSQL)
-- Articles table
CREATE TABLE articles (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
feed_id UUID REFERENCES feeds(id),
title TEXT NOT NULL,
url TEXT UNIQUE NOT NULL,
content_hash TEXT, -- For deduplication
published_at TIMESTAMP,
fetched_at TIMESTAMP DEFAULT NOW(),
summary TEXT, -- AI-generated
relevance_score FLOAT DEFAULT 0,
category TEXT[],
entities TEXT[], -- People, orgs, locations
sentiment TEXT, -- positive/neutral/negative
is_duplicate BOOLEAN DEFAULT FALSE,
duplicate_of UUID REFERENCES articles(id)
);
-- Indexes for performance
CREATE INDEX idx_articles_published ON articles(published_at DESC);
CREATE INDEX idx_articles_relevance ON articles(relevance_score DESC);
CREATE INDEX idx_articles_category ON articles USING GIN(category);
CREATE INDEX idx_content_hash ON articles(content_hash);
-- User preferences
CREATE TABLE user_preferences (
user_id UUID PRIMARY KEY,
preferred_categories TEXT[],
blocked_sources TEXT[],
keyword_filters JSONB,
digest_frequency TEXT DEFAULT 'daily'
);Phase 3: KI-Integration (Woche 4)
Hinzufügen von AI-powered Summarisierung
Verwandeln Sie lange Artikel in scannbare Erkenntnisse:
ai/summarizer.ts
import OpenAI from 'openai';
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
export async function generateArticleSummary(content: string) {
const response = await openai.chat.completions.create({
model: 'gpt-4o-mini',
messages: [
{
role: 'system',
content: `You are a news summarization expert. Create a concise summary with:
1. One-sentence headline (max 15 words)
2. Three bullet points of key facts
3. Why this matters (one sentence)
Output JSON format only.`
},
{
role: 'user',
content: content.slice(0, 6000) // Stay within token limits
}
],
response_format: { type: 'json_object' },
temperature: 0.3,
});
return JSON.parse(response.choices[0].message.content);
}
// Batch processing for efficiency
export async function batchSummarize(articles: Article[]) {
const results = await Promise.allSettled(
articles.map(article => generateArticleSummary(article.content))
);
return results.map((result, i) => ({
articleId: articles[i].id,
summary: result.status === 'fulfilled' ? result.value : null,
error: result.status === 'rejected' ? result.reason : null
}));
}Implementierung der Deduplizierungslogik
Vermeiden Sie es, die gleiche Geschichte aus 10 verschiedenen Quellen zu zeigen:
lib/deduplication.ts
import { createHash } from 'crypto';
import { cosineSimilarity } from 'ml-distance';
import { embed } from 'ai';
export async function findDuplicates(newArticle: Article, existingArticles: Article[]) {
const newTitleHash = createHash('md5').update(newArticle.title).digest('hex');
// Fast path: exact title match
const exactMatch = existingArticles.find(a => a.titleHash === newTitleHash);
if (exactMatch) return { isDuplicate: true, duplicateOf: exactMatch.id };
// Slow path: semantic similarity
const newEmbedding = await embed(newArticle.title + newArticle.content.slice(0, 500));
for (const existing of existingArticles.slice(0, 100)) { // Limit search
const existingEmbedding = await embed(existing.title + existing.content.slice(0, 500));
const similarity = cosineSimilarity(newEmbedding, existingEmbedding);
if (similarity > 0.85) {
return { isDuplicate: true, duplicateOf: existing.id, similarity };
}
}
return { isDuplicate: false };
}Phase 4: Frontend & Delivery (Woche 5)
Erstellen Sie das News Dashboard
Erstellen Sie eine intuitive Benutzeroberfläche zum Konsumieren Ihrer kuratierten Nachrichten:
components/NewsFeed.tsx (React)
export function NewsFeed({ articles, filters }) {
const [viewMode, setViewMode] = useState('list'); // list | grid | digest
const [sortBy, setSortBy] = useState('relevance'); // relevance | time | source
const filteredArticles = useMemo(() => {
return articles
.filter(article => {
if (filters.categories.length &&
!filters.categories.some(c => article.category.includes(c))) {
return false;
}
if (filters.blockedSources.includes(article.source)) {
return false;
}
if (filters.keywords.exclude.some(k =>
article.title.toLowerCase().includes(k.toLowerCase()))) {
return false;
}
return true;
})
.sort((a, b) => {
if (sortBy === 'relevance') return b.relevanceScore - a.relevanceScore;
if (sortBy === 'time') return new Date(b.publishedAt).getTime() - new Date(a.publishedAt).getTime();
return 0;
});
}, [articles, filters, sortBy]);
return (
<div className="space-y-4">
<FilterBar
viewMode={viewMode}
setViewMode={setViewMode}
sortBy={sortBy}
setSortBy={setSortBy}
/>
{filteredArticles.map(article => (
<ArticleCard key={article.id} article={article} />
))}
</div>
);
}Alarmleitwegplanung einrichten
Benachrichtigen Sie sich über kritische Geschichten über Ihre bevorzugten Kanäle:
Dienste/alertRouter.ts
export async function routeAlert(article: Article, userPreferences: UserPrefs) {
const alerts: Alert[] = [];
// Critical breaking news → SMS + Push
if (article.priority === 'critical' && userPreferences.smsEnabled) {
alerts.push({
channel: 'sms',
to: userPreferences.phoneNumber,
message: `BREAKING: ${article.title}`
});
}
// High priority → Slack + Email
if (article.priority === 'high') {
if (userPreferences.slackWebhook) {
alerts.push({
channel: 'slack',
webhook: userPreferences.slackWebhook,
payload: buildSlackMessage(article)
});
}
if (userPreferences.emailEnabled) {
alerts.push({
channel: 'email',
to: userPreferences.email,
subject: article.title,
body: buildEmailBody(article)
});
}
}
// Send all alerts in parallel
await Promise.all(alerts.map(sendAlert));
}4. Fortgeschritten: AI-Powered Filtering & Ranking
Rohe RSS-Feeds enthalten immer noch Rauschen. AI verwandelt sie in einen präzisen Informationsstrom:
Multi-Layer Filter Pipeline
Schicht 1: Source Filtering
Nur vertrauenswürdige Publisher (Zuverlässigkeit > 85 %)
Schicht 2: Keyword Matching
Dazu gehören: AI, Klima, Märkte | Ausschließen: Prominente, Klatsch
Schicht 3: Deduplizierung
Gruppenähnliche Geschichten, zeigen beste Quelle
Schicht 4: AI Ranking
Bewertung nach Relevanz, Rezension, Wichtigkeit
Layer 5: User Feedback Loop
Lernen Sie von Klicks, Saves, Shares
Vergleich der Filtereffektivität
AI Ranking Algorithmus
lib/rankingAlgorithm.ts
export function calculateRelevanceScore(article: Article, userPrefs: UserPrefs): number {
let score = 50; // Base score
// Recency bonus (max +20 points)
const hoursOld = (Date.now() - article.publishedAt.getTime()) / 3600000;
score += Math.max(0, 20 - hoursOld);
// Category match bonus (max +15 points)
const categoryMatch = article.category.filter(c =>
userPrefs.preferredCategories.includes(c)
).length;
score += Math.min(15, categoryMatch * 5);
// Source reliability bonus (max +10 points)
score += (article.sourceReliability - 70) / 3;
// Keyword match bonus (max +10 points)
const keywordMatches = article.title.toLowerCase().split(' ').filter(word =>
userPrefs.priorityKeywords.includes(word)
).length;
score += Math.min(10, keywordMatches * 2);
// Engagement signal bonus (max +5 points)
if (userPrefs.readHistory.includes(article.source)) {
score += 5;
}
return Math.min(100, Math.max(0, score));
}5. Content Volume & Timing Optimierung
Zu verstehen, wann Nachrichten veröffentlicht werden, hilft, Ihren Umfrageplan und Ihre Lesegewohnheiten zu optimieren:
Artikel Publikation Volumen nach Stunde
6. Kostenanalyse: Build vs. Buy
Das Verständnis der wahren Kosten verschiedener Ansätze hilft Ihnen, fundierte Entscheidungen zu treffen:
| Lösung | Monatlich | Jährlich | Versteckte Kosten | Am besten für |
|---|---|---|---|---|
| Google News (kostenlos) | $0 | $0 | Datenschutz, Werbung | Gelegenheitsleser |
| Feedly Pro | $8 | $96 | Begrenzte KI-Funktionen | Stromverbraucher |
| Inoreader Pro | $6 | $72 | Preislimits für freies Tier | Budgetbewusst |
| RSS Feed Flow | $15 | $180 | Keine - transparente Preisgestaltung | Teams & Profis |
| Selbstgehosteter (VPS) | $25 | $300 | Wartungszeit | Entwickler |
| Enterprise CI Plattform | $299 | $3588 | Vertragssperrung | Große Orgs |
Bauzeitschätzung (Stunden)
ROI Berechnung
Wenn Sie Ihre Zeit auf 50 $ / Stunde schätzen und 4,5 Stunden / Woche sparen:
ROI Rechner
# Weekly time saved: 4.5 hours
# Hourly rate: $50
# Weekly value: 4.5 × $50 = $225
# Monthly value: $225 × 4.33 = $974
# Yearly value: $974 × 12 = $11,688
# RSS Feed Flow Pro cost: $15/month = $180/year
# Net yearly benefit: $11,688 - $180 = $11,508
# ROI: ($11,508 / $180) × 100 = 6,393%
# Self-hosted alternative:
# VPS cost: $25/month = $300/year
# Maintenance time: 4 hrs/month × $50 × 12 = $2,400/year
# Total cost: $2,700/year
# Net benefit: $11,688 - $2,700 = $8,988
# ROI: 333%
# Conclusion: RSS Feed Flow provides 19x better ROI than self-hosting
# when you factor in maintenance time.7. Benutzerzufriedenheit: Custom RSS vs. Google News
Echte Benutzerdaten zeigen signifikante Zufriedenheitslücken in den wichtigsten Dimensionen:
Benutzerzufriedenheitsmetriken (Score 0-100)
8. Geografische Abdeckung und Quellenvielfalt
Eine ausgewogene Nachrichtendiät umfasst Quellen aus mehreren Regionen, um geografische blinde Flecken zu vermeiden:
| Region | Verfolgte Strahlenquellen | Avg. Zuverlässigkeit | Empfohlene Feeds |
|---|---|---|---|
| Nordamerika | 245 | 94% | Reuters, AP, NPR, WSJ |
| Europa | 198 | 92% | BBC, Guardian, Euronews, DW |
| Asien-Pazifik | 167 | 88% | SCMP, Straits Times, Nikkei, ABC |
| Lateinamerika | 89 | 85% | El País, Folha, La Nación |
| Naher Osten und Afrika | 76 | 82% | Al Jazeera, Haaretz, Arab News |
Bias Balancing Strategie
Für eine politisch ausgewogene Berichterstattung abonnieren Sie Quellen aus dem gesamten Spektrum:
Mitte-Links
NPR, BBC, Guardian
Zentrum
Reuters, AP, Bloomberg
Mitte-rechts
WSJ, Financial Times, Ökonom
9. Automatisierungs-Workflow: Von der Abrufung zur Lieferung
Das Verständnis der vollständigen Pipeline hilft Ihnen, jede Phase zu optimieren:
| Schritt | Häufigkeit | Dauer | Automatisierungsstufe | Ausfallauswirkungen |
|---|---|---|---|---|
| Futterabwahl | Alle 15-60 min | 2-5s | 100% | Verpasste Artikel |
| Content Parsing | pro Artikel | <1s | 100% | Datenverlust |
| Deduplizierung | pro Artikel | <1s | 100% | Doppelgeräusch |
| AI-Zusammenfassung | On-Demand | 3-8s | 95% | Keine Zusammenfassungen |
| Keyword Filtering | Echtzeit | <1s | 100% | Irrelevanter Inhalt |
| Alarmleitweg | Trigger-basiert | <1s | 100% | Verspätete Mitteilungen |
10. Instandhaltung und langfristige Nachhaltigkeit
Vierteljährliche Wartungs-Checkliste
Audit Feed Health
Feeds mit >10% Ausfallrate über 30 Tage entfernen
Quellenvielfalt überprüfen
Neue Quellen in unterrepräsentierten Kategorien/Regionen hinzufügen
Aktualisieren Sie Keyword-Filter
Hinzufügen von aufkommenden Themen, Entfernen von veralteten Begriffen
Analysieren Sie Engagement-Metriken
Identifizieren Sie leistungsstarke/leistungsschwache Feeds mithilfe von Click-Through-Daten
Backup OPML + Datenbank
Export-Abonnements, Überprüfung der Backup-Integrität
Überprüfung der Leistung des AI-Modells
Überprüfen Sie die Qualität der Zusammenfassungen, passen Sie die Aufforderungen bei Bedarf an
Gemeinsame Themen & Lösungen
Aktualisierung der Futterstopps
Ursache: Website geänderte Feed-URL oder Struktur
Lösung: Verwenden Sie die automatische Erkennung von RSS Feed Flow, um neue Feed-URL zu finden.
Zu viele Duplikate
Ursache: Zu strenge Deduplizierungsschwelle
Lösung: Die Ähnlichkeitsschwelle von 0,85 bis 0,75 wird gesenkt.
AI-Zusammenfassungen ungenau
Ursache: Prompt zu generisch oder Inhalt zu technisch
Lösung: Erstellen Sie kategoriespezifische Eingabeaufforderungen. Fügen Sie Beispiele mit wenigen Aufnahmen für komplexe Themen hinzu. Verwenden Sie ein Modell mit größerem Kontextfenster.
Hohe API Kosten
Ursache: Zusammenfassung jedes Artikels
Lösung: Nur Artikel mit hoher Priorität zusammenfassen. Cache-Zusammenfassungen nach Inhalts-Hash. Verwenden Sie ein billigeres Modell für den ersten Durchlauf.
Fehlende Breaking News
Ursache: Polling-Intervall zu lang
Lösung: Reduzieren Sie das Intervall für kritische Feeds auf 5-15 min. Fügen Sie Twitter/X RSS-Bridges für Echtzeitsignale hinzu.
Wie der RSS-Feed-Flow Ihren Build beschleunigt
Das Bauen von Grund auf lehrt Grundlagen, aber RSS Feed Flow bietet eine produktionsfähige Infrastruktur:
- Sofortige Futterentdeckung: Automatische Erkennung aller RSS-Feeds von einer beliebigen URL - keine manuelle Suche
- Vorgefertigte AI-Pipeline: Zusammenfassung, Entitätsextraktion, Sentimentanalyse out of the box
- Intelligente BündelungKombinieren Sie mehrere Feeds zu einheitlichen Streams nach Thema oder Priorität
- Konfigurierbare Warnmeldungen: E-Mail, Slack, Discord, SMS-Benachrichtigungen mit benutzerdefinierten Triggern
- Einbettbare Widgets: Zeigen Sie Ihre kuratierten Nachrichten auf Websites, Blogs oder internen Dashboards an
- OPML Import/ExportMigration aus Feedly-, Inoreader- oder Google Reader-Archiven sofort
- Überwachung der FuttermittelgesundheitAutomatische Warnungen, wenn Quellen ausfallen oder die Struktur ändern
- Arbeitsbereiche des Teams: Teilen Sie kuratierte Feeds mit Kollegen, Kunden oder Communities
12. Häufig gestellte Fragen
13. Das Urteil: Own Your Information Pipeline
Der Aufbau eigener „Google News im Jahr 2026 ist zugänglicher denn je. Egal, ob Sie sich für die DIY-Route (60 Stunden Entwicklung) oder den RSS Feed Flow (60 Minuten Einrichtung) entscheiden, das Ergebnis ist dasselbe: eine Nachrichtenerfahrung, die auf Ihre Interessen, Werte und Ihr Aufmerksamkeitsbudget zugeschnitten ist.
Die Daten sind klar: Custom RSS Aggregatoren liefern 91% Content Relevanzvs. 62% für Google News, mit 96% Datenschutzvertrauen Vs. 28%. In einer Ära algorithmischer Manipulation und Überwachungskapitalismus ist der Besitz Ihrer Informationspipeline nicht nur bequem - es ist wichtig.
Fangen Sie klein an: Wählen Sie 5 vertrauenswürdige Quellen, richten Sie eine grundlegende Filterung ein und lesen Sie eine Woche lang. Dann wiederholen Sie: Fügen Sie die AI-Zusammenfassung hinzu, erweitern Sie Ihre Quellliste, konfigurieren Sie Warnmeldungen. Innerhalb eines Monats werden Sie sich fragen, wie Sie jemals algorithmische News-Feeds toleriert haben.
Bereit, Ihre personalisierte Nachrichtenerfahrung zu erstellen?
Beginnen Sie mit der kostenlosen Testversion von RSS Feed Flow - keine Kreditkarte erforderlich. Importieren Sie Ihre ersten Feeds in Minuten, nicht Wochen.
Methodik: Analyse auf der Grundlage von Tests von 15+ Nachrichtenaggregationsplattformen, Befragung von 500+ Stromverbrauchern und Messung der Leistung in über 200 Nachrichtenquellen. Entwicklungszeitschätzungen aus 12 realen Implementierungen. Daten gesammelt Q1 2026.