Google News Scraper: by query, topic or country headlines
Pricing
from $2.28 / 1,000 article listeds
Google News Scraper: by query, topic or country headlines
News articles from Google News by search query, by topic or as country headlines: title, source, publication date, link and snippet, up to 200 queries per run. Language and country control, no start fee, and only delivered articles are charged.
Pricing
from $2.28 / 1,000 article listeds
Rating
0.0
(0)
Developer
Steadydata Team
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Google News Articles by Keyword and Country, in bulk
Google News articles by keyword, topic or country headlines: title, source, publication date, link and snippet, up to 200 queries per run. Only delivered articles are charged. publication date, link and snippet. Works on search terms, on topic sections, and on a country's front page. You only pay for articles that are actually delivered.
Why this scraper
- Three kinds of input, one table. A search term like
electric vehicles, a topic liketechnology, or the wordheadlinesfor the country's front page. Mix them in one run and every row tells you which query it came from. - Properly region aware. Google News is strongly region bound. Set
countryandlanguageand you get what a reader in that country sees, not a US default. A Dutch run returns NU, NRC and Volkskrant, not CNN. - Clean dates. The publication date comes back as ISO 8601 so it sorts and filters straight away, with the original text alongside it.
- Only delivered articles are charged. A term without results comes back as a clear error record at no cost.
- A hard cost ceiling you control.
maxArticlesPerQueryis the cap: one delivered article is one charged event.
Who this is for
Media and brand monitoring, topic tracking, competitor watching, and news feeds for dashboards or AI pipelines. Run the same list of terms on a schedule and you have a timeline of what was written about them, by whom and when.
Who this is not for
Read this before you buy. The url is a news.google.com link, not the publisher's
own address. Google encrypts the target inside that link, so this actor cannot hand you
nrc.nl/article/... directly. The link opens the correct article in a browser, and the
publisher is returned separately in the source field.
That makes this actor a strong fit for monitoring, alerting and analysis, and a poor fit if you need to fetch the full article text automatically. If that is your use case, you need a scraper that visits each publisher, and this is not it. Better to know that now than after you have paid.
Input fields
| Field | Type | Required or default | What it does |
|---|---|---|---|
queries | list of text | required | A search term like 'artificial intelligence', a topic name (world, nation, business, technology, entertainment, sports, science, health), or the word 'headlines' for the country's front page. Up to 200 per run. |
maxArticlesPerQuery | number | 50 | Stop after this many articles per query. This is your cost ceiling: one delivered article is one charged event. Google returns at most about 100 per feed. |
country | text | US | ISO country code, e.g. US, NL, DE. Google News is strongly region bound, so this decides which outlets you get. |
language | text | en | Language code, e.g. en, nl, de. Match it to the country for the best results. |
Input example
{"queries": ["artificial intelligence","technology","headlines"],"maxArticlesPerQuery": 50,"country": "US","language": "en"}
Topic names that work: world, nation, business, technology, entertainment,
sports, science, health. Anything else is treated as a search term.
Output example
| Field | Type | What it holds | Example |
|---|---|---|---|
query | text | The search term this row was found with, so rows from several inputs can be told apart. | technology |
country | text | The country the request was made from; the answer differs per country. | US |
language | text | The language the news was read in. | en |
position | number | The place in the source's own order, counting from 1. | 1 |
title | text | The title as the source shows it. | You Can 'Get Ready' for iPhone Duo Pre-Orders on October 12 |
source | text | The publication the article comes from. | MacRumors |
publishedAt | text | The publication moment as a date, so you can sort on it. | 2026-09-29T20:10:19+00:00 |
publishedText | text | That same moment as Google writes it, for example "4 hours ago". | Tue, 29 Sep 2026 20:10:19 GMT |
url | text | The page of this item on the source itself. | https://news.google.com/rss/articles/CBMic0FVX3lxTE95cHo5... |
snippet | text | The opening lines Google shows under the headline. | You Can 'Get Ready' for iPhone Duo Pre-Orders on October... |
{"query": "artificial intelligence","country": "US","language": "en","position": 1,"title": "AI could kill all humans in next decade, warn experts","source": "The Guardian","publishedAt": "2026-09-10T01:31:00+00:00","publishedText": "Thu, 10 Sep 2026 01:31:00 GMT","url": "https://news.google.com/rss/articles/CBMirgFBVV95cUxNNUNtV20wYXJ","snippet": "AI could kill all humans in next decade, warn experts","status": "ok"}
A term that cannot be delivered produces an error record instead, and is not charged:
{"input": "qzxwv nonsense 99999","status": "error","errorCode": "NO_RESULTS","error": "No articles for 'qzxwv nonsense 99999' in US"}
Error codes: INVALID_QUERY, NO_RESULTS, BLOCKED. INPUT_TRUNCATED appears once when your input is longer than this actor accepts.
Related actors from steadydata
- rss-feed-reader: the publishers' own feeds, for sources Google News omits
- google-trends-batch: whether interest in the topic is rising or falling
Pricing
Pay per event: one article-listed event per delivered article. No charge for terms
that fail or return nothing, no separate platform-usage surcharge.
Free Apify plan: this actor delivers up to 25 rows per run for accounts on the Apify free plan, and then stops with a message. That limit is set by us, not by Apify. It exists so the actor keeps paying for itself for the people who do pay. Any paid Apify plan runs it at full size, billed per delivered row, with failed rows never charged.
Reviews: if this actor saves you time, a short review on this page is the one thing that helps most. Ratings are what other buyers look at first, and we have no other way to ask.
FAQ
How many articles do I get per term? Google returns up to about a hundred per feed, and fewer for narrow terms. You are only charged for what actually arrives.
How far back does it go? Google News is a moving window, weighted towards recent coverage. For older material a narrower search term helps, but there is no date filter in the feed itself.
Can I track a topic over time?
Yes, and that is the main use: run the same term list daily and keep the rows with a
timestamp. The publishedAt field makes deduplication across runs straightforward.
Why is the snippet almost the same as the title? Because that is what Google supplies in the feed. It is returned as given rather than padded out with invented text.
Is personal data collected? No. Public article metadata only: headline, outlet, date and link.
What happens when Google changes something? Feeds change from time to time; that is the nature of this work. The actor is monitored daily and fixed fast, and while it is broken you are not charged, because only delivered articles cost anything.
Can I call it from my own code, like an API? Yes. Every run is available through the Apify API: start it with one HTTP request, then read the results as JSON, CSV or Excel from the dataset endpoint, or use the official Python and JavaScript clients. The input is the same JSON as in the input example above, so a scheduled script, a Make or Zapier step or an AI agent can call it without any changes.