Google News Scraper (Real Article URLs)
Pricing
from $0.70 / 1,000 article scrapeds
Google News Scraper (Real Article URLs)
Scrape Google News results for any keyword, in any country and language: headline, publisher, publish date and the real article URL (decoded from Google's redirect). Filter by last hour, day, week or year. Export to Excel, CSV or JSON.
Pricing
from $0.70 / 1,000 article scrapeds
Rating
0.0
(0)
Developer
Julio Barcellos Rangel
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Share
This Google News scraper collects Google News results for any keyword, in any country and language, and returns the headline, publisher, publish date and the real article URL decoded from Google's redirect link. It is made for PR and communications teams, analysts, investors, researchers and anyone who builds news alerts or news datasets. Use it to export Google News to Excel or CSV, or as a news monitoring feed filtered by the last hour, day, week or year.
What does Google News Scraper do?
For each search term, the robot reads the Google News search results for the language and country you choose and keeps up to Max articles per search term. For every article it returns:
- the headline, without the " - Publisher" ending Google adds;
- the publisher name and its website;
- the publish date, converted to UTC;
- the Google News link;
- the real article URL on the publisher's site. Google News links are redirects, so the robot asks Google News' own decoder for the final address. This is on by default and can be turned off.
You can search for keywords, company or brand names, people in the news or topics. Google News operators work inside a search term, for example "tesla" site:reuters.com. The Published within filter limits results to the last hour, 24 hours, 7 days or year; the robot adds Google's when: operator to the query for you.
Language and country pick the Google News edition, for example en-US with US, pt-BR with BR, or de with DE. Each run uses one edition, and every row records the language and country, so you can combine runs for several countries in one spreadsheet.
What comes out is one row per article: search term, position, title, source, source URL, article URL, publish date, Google News URL, language, country and collection time.
What data can you extract?
| Field | What it means | Example |
|---|---|---|
query | Search term as you entered it (without the time filter) | artificial intelligence |
position | Position of the article in the results for that term, starting at 1 | 2 |
title | Headline, without the publisher suffix | Georgia Tech Announces New Online Master’s Degree in Artificial Intelligence |
source | Publisher name | Georgia Tech News Center |
sourceUrl | Publisher website | https://news.gatech.edu |
articleUrl | Real URL of the article on the publisher's site (null if decoding is off or failed) | https://news.gatech.edu/news/2026/10/06/georgia-tech-announces-new-online-masters-degree-artificial-intelligence |
publishedAt | Publish date and time in UTC | 2026-10-06T19:32:43.000Z |
googleNewsUrl | Google News link to the article | https://news.google.com/rss/articles/CBMi…?oc=5 |
language | Language used for the search | en-US |
country | Country used for the search | US |
scrapedAt | When the row was collected (UTC) | 2026-10-09T20:09:33.974Z |
error | Only on error rows: what went wrong | No articles found |
How to use Google News Scraper
- Open the robot in Apify Console and go to the Input tab.
- Add one or more Search terms, one per line, for example a brand, a competitor, a stock name or a topic.
- Choose Published within: any time, last hour, last 24 hours, last 7 days or last year.
- Set Language (for example
en-US,pt-BR,es-419) and Country (for exampleUS,BR,GB). - Set Max articles per search term (1 to 100) and keep Get real article URLs on if you need publisher links.
- Click Start and wait for the run to finish.
- Open the Output tab to see the Articles table, then export the data as JSON, CSV, Excel or HTML.
- Optional: save the input as a task and schedule it every hour or every morning for news alerts.
Input
| Field | Type | Default | What it does |
|---|---|---|---|
queries | array of strings | ["artificial intelligence"] | Keywords, company names or topics. Google News operators work. |
timeRange | string | 7d | any, 1h, 1d, 7d or 1y: only articles from that period. |
language | string | en-US | Interface language code, e.g. en-US, pt-BR, es-419, de, fr. |
country | string | US | Two-letter country code, e.g. US, BR, GB, IN, DE. |
maxArticlesPerQuery | integer | 30 | Articles per search term, from 1 to 100. |
decodeUrls | boolean | true | Decode Google's redirect links into the publisher's real article URL. |
proxy | object | {"useApifyProxy": true} | Apify Proxy settings. The default works for most runs. |
Example input:
{"queries": ["artificial intelligence", "\"tesla\" site:reuters.com"],"timeRange": "1d","language": "en-US","country": "US","maxArticlesPerQuery": 50,"decodeUrls": true,"proxy": { "useApifyProxy": true }}
Example for Brazilian news in Portuguese:
{"queries": ["petrobras"],"timeRange": "7d","language": "pt-BR","country": "BR","maxArticlesPerQuery": 10}
Output example
One real row from the latest run (search term artificial intelligence, en-US, US). The Google News URL is shortened.
{"query": "artificial intelligence","position": 2,"title": "Georgia Tech Announces New Online Master’s Degree in Artificial Intelligence","source": "Georgia Tech News Center","sourceUrl": "https://news.gatech.edu","articleUrl": "https://news.gatech.edu/news/2026/10/06/georgia-tech-announces-new-online-masters-degree-artificial-intelligence","publishedAt": "2026-10-06T19:32:43.000Z","googleNewsUrl": "https://news.google.com/rss/articles/CBMisgFBVV95cUxPcXRtclE5eHgxeG55N2gxTDlGbzI0d1EzTXVEOWRNSUxZRzdwb28wd1BaemhwY0JkRTBW…?oc=5","language": "en-US","country": "US","scrapedAt": "2026-10-09T20:09:33.974Z"}
When a search term returns nothing, you get an error row such as {"query": "your search term", "error": "No articles found"}.
How much does it cost?
The robot uses pay per event pricing: you pay $1.00 per 1,000 articles ($0.001 per article returned) on the Free plan. Platform usage is included in the price, so there is no separate charge for compute or proxy.
| Apify plan | Price per 1,000 articles |
|---|---|
| Free | $1.00 |
| Bronze (10% off) | $0.90 |
| Silver (20% off) | $0.80 |
| Gold and higher (30% off) | $0.70 |
Worked examples on the Free plan:
- One search term with the default 30 articles: $0.03.
- 20 brand names at 100 articles each: up to 2,000 articles = up to $2.00.
- 10,000 articles collected over a month of scheduled runs: $10.00 (or $7.00 on Gold).
What is not charged: error rows (Could not load Google News and No articles found). Articles whose real URL could not be decoded are still returned and charged, with articleUrl set to null and googleNewsUrl filled. Turning decodeUrls off does not change the price.
Use cases
- Brand monitoring: follow every mention of your company, products or executives in the news.
- Competitor tracking: schedule daily searches for competitor names and send new rows to Slack or email.
- PR coverage reports: list the articles and publishers that covered a launch or announcement.
- Market and investment alerts: watch news about a stock, a sector or a commodity every hour.
- Media lists: find which publishers write about a topic, using
sourceandsourceUrl. - AI datasets: collect headlines and article URLs for summaries, topic clustering or sentiment analysis.
- International news: compare how the same topic is covered in different countries and languages.
Tips and limits
- About 100 articles per search term. That is the most Google News returns for one search, and the maximum of
maxArticlesPerQuery. For more coverage, split a topic into several narrower search terms. - Headlines, not full text. The robot returns titles, publishers, dates and links. It does not download the article text, images or snippets. To get the text, run the article URLs through a web page to Markdown crawler.
articleUrlcan benull. If Google's decoder does not answer for an article, the row keepsgoogleNewsUrl, which still opens the article in a browser.- Turn off decoding for speed. With
decodeUrlsoff, the robot skips the extra requests andarticleUrlis alwaysnull. - Order of results. Articles keep the order of the Google News results. Sort by
publishedAtif you need the newest first. - No duplicate filter. An article that matches two search terms appears once for each and is charged each time.
- Retries: each request is tried up to 4 times. If the search itself cannot be loaded, you get the error row
Could not load Google News.
Use it from the API, Python or JavaScript
JavaScript (Node.js) with the official apify-client package:
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: 'YOUR_TOKEN' });const input = { queries: ['openai', 'anthropic'], timeRange: '1d', maxArticlesPerQuery: 50 };const run = await client.actor('juliob.rangel/google-news-scraper-fast').call(input);const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python with the official apify-client package:
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')input = {'queries': ['petrobras'], 'timeRange': '7d', 'language': 'pt-BR', 'country': 'BR'}run = client.actor('juliob.rangel/google-news-scraper-fast').call(run_input=input)items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
You can also connect the robot to Make, Zapier or n8n, export results to Google Sheets, send them to a webhook when a run finishes, or let AI agents call it through the Apify MCP server.
FAQ
Do I need a Google account, cookies or an API key? No. The robot reads public Google News results. You only need an Apify account.
Can I export the articles to Excel or CSV? Yes. Download the dataset as JSON, CSV, Excel or HTML from the Output tab, or read it through the API.
How many articles can I get? Up to about 100 per search term, and you can add as many search terms as you like in one run.
Why is articleUrl empty for some rows?
Either decodeUrls is off, or Google's decoder did not return the final URL for that article. The googleNewsUrl link still works.
Can I get news from the last hour only?
Yes. Set timeRange to 1h and schedule the robot to run every hour.
Why did I get an error row?
No articles found means Google News had no results for that term and period. Could not load Google News means the search did not load after several tries. Error rows are free.
Is scraping Google News legal? The robot only collects publicly available data: headlines, publisher names, dates and links. You are responsible for complying with Google's terms, publishers' rights and privacy laws such as GDPR and LGPD. If you process personal data, for example names of people in the news, you need a legitimate reason to do so.
Related scrapers
- Website to Markdown Crawler to turn the article URLs into clean text.
- Substack Scraper (Posts, Likes, Comments, Full Text) for newsletters on the same topics.
- Telegram Channel Scraper (Posts, Views, Reactions) to follow news channels on Telegram.
- YouTube Search Scraper (Fast & Cheap) for video coverage of a topic.
- Threads Scraper (Profiles, Posts, Search) to see what people post about the news.
Google News Scraper (PT-BR)
Busca no Google Notícias por qualquer termo, em qualquer país e idioma: título, veículo, data e o link real da matéria. Filtro por última hora, 24 horas, 7 dias ou ano. Você paga só por notícia retornada.