Google News Scraper (Search, Topics, Top Stories) avatar

Google News Scraper (Search, Topics, Top Stories)

Pricing

$0.70 / 1,000 news articles

Go to Apify Store
Google News Scraper (Search, Topics, Top Stories)

Google News Scraper (Search, Topics, Top Stories)

Google News articles by keyword, topic or top stories in any of 80+ editions: title, source, publisher URL, date, related coverage. Date ranges past 100 results. No proxy needed. $0.70 per 1,000.

Pricing

$0.70 / 1,000 news articles

Rating

0.0

(0)

Developer

Prague Data Lab

Prague Data Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Google News Scraper

Get Google News articles for any search query, for a topic, or for the top stories of 80+ country editions, one row per article: headline, publisher, link, publication date and related coverage. Media monitoring teams, analysts and researchers use it to follow a subject over time. $0.70 per 1,000 articles.

Why this one

Price per 1,000 results
This Actor$0.70
Popular alternatives (top 5 on the Store by users)$2.00 – $5.00

The top five Actors for "google news scraper" list between $2 and $5 per 1,000 articles.

Quick start

Run the Actor with this input. Every other field has a default.

{
"queries": [
"electric vehicles"
],
"timeframe": "1d",
"maxItems": 50
}

Compatible with the input of the leading Google News Actors, so you can switch by changing only the Actor ID:

LeaderFields accepted as they are
data_xplorer/google-news-scraper-fastkeyword, maxArticles, timeframe (1h, 1d, 1w, 1m, 1y), region_language (US:en…), proxyConfiguration
lhotanova/google-news-scraperquery, topics, topicsHashed, language, maxItems, dateFrom, dateTo, openEndedDateRange (12h, 7d…), fetchArticleDetails (→ decodeUrls)
easyapi/google-news-scraperquery, maxItems, gl, hl, time_period (last_hour … last_year)

Output keeps their main field names too: title, source, sourceUrl, link, url, rssLink, guid, publishedAt, publishedTimestamp.

Output example

One row, trimmed. The full field list is further down this page.

{
"title": "UK Taxman to Tackle Rogue Advice From Artificial Intelligence",
"source": "Bloomberg.com",
"link": "https://www.bloomberg.com/news/articles/2026-10-22/uk-taxman-to-tackle-rogue-advice-from-artificial-intelligence",
"publishedAt": "2026-10-22T04:00:00.000Z",
"query": "artificial intelligence",
"position": 2,
"isDecoded": true
}

Use it from your code

The Actor id is praguedatalab/google-news-scraper. Replace YOUR_APIFY_TOKEN with your Apify API token.

Python (pip install apify-client)

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("praguedatalab/google-news-scraper").call(run_input={"queries":["electric vehicles"],"timeframe":"1d","maxItems":50})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript (npm install apify-client)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('praguedatalab/google-news-scraper').call({"queries":["electric vehicles"],"timeframe":"1d","maxItems":50});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

curl (returns the rows as JSON; the endpoint waits for the run, up to 5 minutes, so keep the limits small)

curl -X POST "https://api.apify.com/v2/acts/praguedatalab~google-news-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries":["electric vehicles"],"timeframe":"1d","maxItems":50}'

Use it with AI agents

AI assistants can call praguedatalab/google-news-scraper through the Apify MCP server to get the latest articles for a query as JSON rows.

FAQ

The Actor reads the public Google News feeds and the links in them. It does not download article text. The articles belong to their publishers, so check the reuse rules before you republish headlines.

How much do 10,000 results cost?

$7.00. The price is $0.70 per 1,000 articles. Duplicates are not saved and not charged.

Do I need a proxy?

No. The default input does not use a proxy. Publisher link decoding is best effort: if Google shows a captcha, the rest of the run keeps the news.google.com link (isDecoded is false). The Actor never solves captchas.

How fresh is the data?

Each run reads the feeds when it runs. Use timeframe, or dateFrom and dateTo, to choose the period. A feed holds at most 100 articles per query.

Can I export to Excel, CSV or Google Sheets?

Yes. Each run saves a dataset that you can download as JSON, CSV or Excel. For Google Sheets, import the CSV, or connect Apify to Google Sheets with an integration.

Can I schedule it daily?

Yes. In the Apify Console, open the Actor, go to Schedules, and add a daily schedule with the same input. Each run is billed per result, as usual.

Input

FieldTypeDescription
queriesarray of stringsGoogle News searches. Operators work: "exact phrase", OR, -exclude, site:reuters.com, intitle:. Aliases: keyword, query.
topicsarray of stringsWORLD, NATION, BUSINESS, TECHNOLOGY, ENTERTAINMENT, SPORTS, SCIENCE, HEALTH, or a hashed topic id from a news.google.com/topics/<id> URL.
topStoriesbooleanAlso read the edition's top stories (automatic when no query and no topic is given).
languagestringEdition as COUNTRY:lang, e.g. US:en, GB:en, FR:fr, DE:de, CZ:cs. Default US:en. Aliases: region_language, gl + hl.
timeframestring1h, 1d, 7d, 30d, 1y (also 1w, 1m, 12h, 3d, last_week…). Ignored when dateFrom/dateTo is set.
dateFrom, dateTostringPublication days, YYYY-MM-DD. dateTo defaults to today.
maxItemsintegerMaximum articles saved per run, all feeds together (queries first, then topics, then top stories). Default 100. Alias: maxArticles.
splitByDaybooleanGoogle returns at most 100 articles per search. When maxItems is above 100 and the range covers several days, each day is searched separately. Default on.
decodeUrlsbooleanReplace the news.google.com link with the publisher article URL (two extra requests per article, about 1 s each). Default off.
deduplicatebooleanSave each article once across queries, days and topics. Default on.
proxyConfigurationobjectNot needed. Use it only if Google rate-limits your runs.

Output fields

FieldDescription
titleHeadline without the " - Source" suffix Google adds.
sourcePublisher name.
sourceUrlPublisher home page.
linkPublisher article URL when decodeUrls worked, otherwise the news.google.com link (it opens the article in a browser).
urlSame as link.
rssLinkThe news.google.com/rss/articles/… link from the feed.
isDecodedtrue when link is the publisher URL.
guidGoogle News article id, used for deduplication.
publishedAtPublication time, ISO 8601 UTC.
publishedTimestampPublication time in milliseconds since 1970.
positionPosition in its feed, 1 = first.
querySearch query that returned the article (null for topics and top stories).
topicTopic name or id, TOP_STORIES, or null for searches.
feedsearch, topic or top.
languageEdition used.
relatedArticlesOther coverage of the same story: title, source, link.
scrapedAtWhen the row was saved, ISO 8601 UTC.

Pricing

Pay per event: $0.0007 per article saved ($0.70 per 1,000), the same with or without decodeUrls. Duplicates are not saved and not charged. Set maxItems (or a maximum cost per run) to control the total. No platform usage is added on top.

Limits

  • Google News returns at most 100 articles per feed. Long ranges are split into days automatically. A single very busy day still caps at 100 per query, so split the query into narrower ones (site:, extra keywords) if you need more.
  • Decoding publisher URLs is best effort. If Google answers with a captcha page, decoding stops for the rest of the run and those rows keep the news.google.com link (isDecoded: false). The Actor never solves captchas.
  • Article bodies are not downloaded. Use the link with a page scraper if you need the text.
  • Headlines and links come from Google News feeds; the articles belong to their publishers.