Google News Scraper (Real Publisher URLs, Date Ranges)
Pricing
from $1.50 / 1,000 article scrapeds
Google News Scraper (Real Publisher URLs, Date Ranges)
Scrape Google News by keyword, topic or Google News URL in any country/language. Every article includes its real decoded publisher URL, source, publish date and related coverage. Date ranges get past Google's 100-result cap. Pay only for articles with a decoded URL.
Pricing
from $1.50 / 1,000 article scrapeds
Rating
0.0
(0)
Developer
Mogul Tools
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 hours ago
Last modified
Share
Google News Scraper (Real Publisher URLs, Date Ranges, Topics)
Scrape Google News by keyword, topic or Google News URL, and get the real publisher link for every article (nytimes.com/..., reuters.com/...) instead of a news.google.com/rss/articles/... redirect. URL decoding is included in the price, with no extra "URL resolved" event. Use date ranges to go past Google's ~100-results-per-search cap, pull many countries and languages at once, and optionally add the article's image, description and author. You only pay for articles with a decoded publisher URL. Failed inputs, empty searches and articles that couldn't be decoded are free.
Use cases
- Media monitoring and PR: track every mention of a brand, person or competitor, with the original source link.
- Market and investment research: news flow for tickers, companies or sectors, by day.
- AI, RAG and sentiment pipelines: clean, deduplicated headlines with real URLs, ready to fetch or summarise.
- SEO and content research: see which publishers rank in Google News for a topic and in which countries.
- Newsletters and dashboards: daily top stories or topic feeds (Business, Technology, Health...) per country.
Input
| Field | Default | Notes |
|---|---|---|
queries | – | Keywords, one per line. Google News operators work: "exact phrase", OR, -exclude, site:reuters.com, intitle:. |
topics | – | TOP (top stories), WORLD, NATION, BUSINESS, TECHNOLOGY, ENTERTAINMENT, SPORTS, SCIENCE, HEALTH. |
startUrls | – | Any Google News search, topic, publication or local-news URL (web or RSS). The edition in the URL (hl/gl/ceid) is kept. Single article URLs aren't supported. |
editions | ["US:en"] | Country:language, for example GB:en, DE:de, FR:fr, JP:ja, BR:pt-419, IN:hi. Each query or topic runs once per edition. |
timeRange | any | 1h, 12h, 1d, 7d, 30d, 1y (queries only). |
dateFrom / dateTo | – | YYYY-MM-DD. Splits each query into one search per day, newest first, so you get up to ~100 articles per day instead of ~100 in total. dateTo alone means the 7 days before it. |
maxArticlesPerQuery | 100 | Per query, topic or URL, per edition. 0 = no limit. |
decodeUrls | true | Resolves the real publisher URL. If you turn it off, every row is free and you only get Google News links. |
fetchArticleDetails | false | Opens each publisher page (first 512 KB) for imageUrl, description, author, articlePublishedAt, canonicalUrl, articleLanguage and keywords. Best effort: some sites block bots. |
includeRelated | true | Adds Google's "related coverage" cluster (other outlets on the same story) where Google provides it, mostly on top stories. |
deduplicate | true | Each article appears once per run, even if several queries or editions find it. |
includeFailedRows | true | One free row per input that failed, with the reason. |
maxChargedArticles | 0 (no limit) | Hard stop on the number of charged articles. |
maxConcurrency / requestDelayMs | 4 / 300 | Polite pacing, with automatic backoff on 429, 503 or captcha pages. |
Example:
{ "queries": ["openai", "\"electric vehicles\" -tesla"], "topics": ["BUSINESS"], "editions": ["US:en", "DE:de"], "dateFrom": "2026-10-01", "dateTo": "2026-10-07", "maxArticlesPerQuery": 500 }
Output (one row per article, abridged)
{"rowType": "article","status": "OK","query": null,"topic": "TOP","edition": "US:en","position": 1,"title": "María Corina Machado Returns to Venezuela","source": "The New York Times","sourceUrl": "https://www.nytimes.com","publishedAt": "2026-10-25T17:39:06.000Z","articleUrl": "https://www.nytimes.com/2026/10/25/world/americas/machado-venezuela-return.html","articleDomain": "nytimes.com","googleNewsUrl": "https://news.google.com/rss/articles/CBMihgFBVV9...?oc=5","urlDecoded": true,"relatedArticles": [{ "title": "Venezuelan opposition leader María Corina Machado makes surprise return home...", "source": "Fox News", "googleNewsUrl": "https://news.google.com/rss/articles/..." }],"charged": true}
Every row has the same fields: language, country, dateWindow, ampUrl, googleNewsId, inputUrl, scrapedAt, and the detail fields, which are null unless fetchArticleDetails is on.
Free rows:
URL_NOT_DECODED: Google returned no publisher URL. The row still has the title, source, date and Google News link.INVALID_INPUT: bad edition, unknown topic, a non-Google-News URL or a single-article URL.NO_RESULTS: the search returned nothing.BLOCKED,RATE_LIMITED,HTTP_xxx: Google refused the feed.
The RUN_SUMMARY key-value record holds totals, duplicates skipped, failures by reason and request stats.
Pricing (pay per event)
One article event per unique article returned with its real publisher URL. Nothing else is charged: no start fee, no extra URL-resolution fee, and no fee for details.
| Tier | Per article | Per 1,000 articles |
|---|---|---|
| FREE | $0.003 | $3.00 |
| BRONZE | $0.0025 | $2.50 |
| SILVER | $0.002 | $2.00 |
| GOLD | $0.0015 | $1.50 |
The run stops cleanly when it reaches your max total charge or maxChargedArticles and stops decoding new articles once the limit is hit. 1,000 articles take about 5–6 minutes at the default 512 MB.
Limitations
- Google News returns at most ~100 articles per search, ~70 per topic and ~38 top stories. Use
dateFrom/dateTo(about 100 per day) and several editions or narrower queries to get more. - In date mode, Google applies day boundaries in US Pacific time, and older articles often carry a day-level timestamp (07:00 UTC). Date ranges apply to
queries, not tostartUrlsor topics. - URL decoding uses the same public lookup Google News's own site uses. If Google changes it, the affected rows come back free as
URL_NOT_DECODEDrather than failing the run. - Very large runs (tens of thousands of articles) can be rate-limited by Google. The Actor backs off and retries, and anything still refused is a free row.
fetchArticleDetailsdepends on each publisher: sites behind Cloudflare or paywalls may return no details. The article is still delivered and charged once at the same price.- Only public data is collected, with no login. The Actor returns headlines, metadata and links, not full article text. Respect publishers' copyright and Google's terms when you reuse the data.