# Google News Scraper & API ($1/1k) 📰 (`unitbytes/google-news-scraper`) Actor

⚡ Fast & Affordable ($1/1k): Scrape Google News articles, direct publisher URLs, headlines, snippets, thumbnails, timestamps, topic feeds & optional clean full-article text across 35+ countries and languages. Ready for RAG, AI & Excel/CSV.

- **URL**: https://apify.com/unitbytes/google-news-scraper.md
- **Developed by:** [UnitBytes | Enterprise Web Data](https://apify.com/unitbytes) (community)
- **Categories:** News, AI, Automation
- **Features:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 article scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 📰 Google News Scraper & Full-Text RAG API: Direct Publisher URLs, Topics, Domains & Clean Article Text

<div align="center">

[![Available on Apify](https://img.shields.io/badge/Available_on-Apify-28B52A?style=for-the-badge\&logo=apify\&logoColor=white)](https://apify.com/unitbytes/google-news-scraper?fpr=939u3w\&fp_sid=gh_gnews)
[![Speed](https://img.shields.io/badge/Speed-50%2B_Articles_in_Seconds-brightgreen?style=for-the-badge)](#)
[![PR & AI Monitor](https://img.shields.io/badge/24%2F7_Cron-PR_%7C_Finance_%7C_AI_RAG_Feed-critical?style=for-the-badge)](#)
[![Pricing](https://img.shields.io/badge/Price-From_$1.00_%2F_1%2C000_Articles-orange?style=for-the-badge)](#)
[![Direct URLs](https://img.shields.io/badge/Direct_URLs-Unwrapped_Publisher_Links-purple?style=for-the-badge)](#)
[![Full Text RAG](https://img.shields.io/badge/RAG_Ready-Optional_Full_Article_Text-blue?style=for-the-badge)](#)
[![Zero Login](https://img.shields.io/badge/Account_Required-None-blue?style=for-the-badge)](#)

**The fastest and most affordable Google News scraper & AI/RAG news ingestion API on Apify. Extract structured Google News search results and curated topic feeds with unwrapped direct publisher URLs, headlines, snippets, exact UTC publication timestamps, thumbnails, publisher favicons, and optional clean full-article body text (`extractArticleContent`) across 35+ countries and languages — starting from `$1.00 / 1,000 articles`.**

[**🚀 Try it Live on Apify**](https://apify.com/unitbytes/google-news-scraper?fpr=939u3w\&fp_sid=gh_gnews) • [**💰 $1.00 / 1,000 Articles**](#-transparent-pay-per-event-pricing-100--1000-articles-on-all-plans) • [**🤖 Optional Full-Article Text (`extractArticleContent`)**](#-key-capabilities) • [**💬 Support**](https://apify.com/unitbytes/google-news-scraper/issues)

</div>

***

<p align="center">
  <a href="https://apify.com/unitbytes/google-news-scraper?fpr=939u3w&fp_sid=gh_gnews">
    <img src="https://img.shields.io/badge/Try_It_Free_on_Apify-2%2C000_Articles_Free%2FMo-28B52A?style=for-the-badge&logo=apify&logoColor=white" height="42" alt="Try it for Free on Apify">
  </a>
  <br>
  <sub>⚡ <b>1-Click Free Trial:</b> Extract 2,000 Google News articles every month free with Apify's $5 monthly credit (up to 5,000 per $5 on volume plans) • No credit card required</sub>
</p>

***

### 📖 Overview

**Google News** indexes breaking journalism, earnings announcements, regulatory filings, product launches, and local reporting across tens of thousands of verified publishers worldwide.

Yet teams building **AI/RAG pipelines**, **PR & brand crisis monitors**, or **financial sentiment models** routinely hit three roadblocks with legacy Google News scrapers:

- **Opaque `news.google.com/rss/articles/CBMi...` wrapper links** instead of clean canonical publisher URLs (`reuters.com`, `techcrunch.com`, `bbc.com`), breaking downstream deduplication and article readers.
- **Headline-only feeds** with zero article body text, requiring a separate scraper to fetch `articleText`, `author`, and `publishedDateIso`.
- **High per-call API fees** (`$15.00–$25.00 per 1,000 requests`) that charge for empty queries and lack server-side domain allowlists (`domains`) or custom historical date windows (`dateFrom` / `dateTo`).

**Google News Scraper by UnitBytes** solves all three in a single `256 MB` Actor — delivering unwrapped canonical `url`s, rich previews, curated topic sections (`TECHNOLOGY`, `BUSINESS`, `WORLD`, `SCIENCE`, `HEALTH`...), and optional full-text extraction **from `$1.00` per 1,000 articles (`$0.001/article` on Gold+, and `$0.00` on empty queries or duplicates)**.

<table>
  <tr>
    <td colspan="3" style="padding:10px 14px;background:#0284C7;color:#FFFFFF;font-size:13px;font-weight:700;border-radius:6px 6px 0 0">
      ⚡ UnitBytes · Google News, Trends, Search, Jobs, Shopping, Travel &amp; Maps Ecosystem
    </td>
  </tr>
  <tr>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FFF4ED;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">📰 <b><a href="https://apify.com/unitbytes/google-news-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#C2410C;text-decoration:none;font-size:13px">Google News Scraper</a></b></span><br><span style="color:#EA580C;font-size:11px;font-weight:700">📍 You are here (From $1/1K)</span><br>
      <span style="color:#64748B;font-size:11px">Direct publisher URLs, topic feeds, domain filters &amp; full text</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🔥 <b><a href="https://apify.com/unitbytes/google-trending-now-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Google Trending Now</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">From $0.30/1K • Breaking Spikes</span><br>
      <span style="color:#64748B;font-size:11px">+5,000% real-time surges &amp; 5-in-1 <a href="https://apify.com/unitbytes/google-trends-scraper?fpr=939u3w&fp_sid=ecosystem">Google Trends Scraper</a></span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">💼 <b><a href="https://apify.com/unitbytes/google-jobs-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Google Jobs Scraper</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">From $4/1K • Company Hiring</span><br>
      <span style="color:#64748B;font-size:11px">Multi-board jobs, parsed salaries, logos &amp; direct ATS links</span>
    </td>
  </tr>
  <tr>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🛍️ <b><a href="https://apify.com/unitbytes/google-shopping-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Google Shopping Scraper</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">From $2/1K • Retail &amp; MAP</span><br>
      <span style="color:#64748B;font-size:11px">Live product prices, deals, seller offers &amp; store checkout URLs</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">✈️ <b><a href="https://apify.com/unitbytes/google-flights-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Google Flights &amp; Hotels</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">From $2.50/1K • Travel Rates</span><br>
      <span style="color:#64748B;font-size:11px"><a href="https://apify.com/unitbytes/google-flights-scraper?fpr=939u3w&fp_sid=ecosystem">Airfares &amp; CO2</a> + <a href="https://apify.com/unitbytes/google-hotels-scraper?fpr=939u3w&fp_sid=ecosystem">Hotels &amp; OTA Parity</a></span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">📍 <b><a href="https://apify.com/unitbytes/google-maps-leads-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Google Maps Suite</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">From $0.20/1K • Local &amp; Reviews</span><br>
      <span style="color:#64748B;font-size:11px"><a href="https://apify.com/unitbytes/google-maps-leads-scraper?fpr=939u3w&fp_sid=ecosystem">B2B Contacts</a>, <a href="https://apify.com/unitbytes/google-maps-reviews-scraper?fpr=939u3w&fp_sid=ecosystem">10K Reviews</a> &amp; <a href="https://apify.com/unitbytes/reddit-scraper?fpr=939u3w&fp_sid=ecosystem">Reddit</a></span>
    </td>
  </tr>
</table>

***

### 🌟 Why AI/RAG, PR & Quantitative Teams Choose UnitBytes

| Capability / Metric | **UnitBytes Google News Scraper** | **Traditional News / SERP APIs** | **Basic RSS Scrapers** |
| :--- | :---: | :---: | :---: |
| **💰 Price per 1,000 Articles** | **From $1.00 ($0.001 / article)** | $15.00 – $25.00 per 1K requests | $3.00 – $10.00 per 1K + compute |
| **🔗 Direct Canonical Publisher URLs** | **✅ Unwrapped `url` + `publisherDomain` out of the box** | ✅ Supported | ❌ Opaque `news.google.com/rss/articles/CBMi...` wrappers |
| **📄 Full-Article Body Text (`articleText`)** | **✅ Built-in `extractArticleContent: true` (`0` extra fee)** | ❌ Snippet only (requires 2nd scraper) | ❌ Headline only |
| **🎯 Domain Allowlist & Date Windows** | **✅ `domains`, `1h`/`24h`/`7d`, custom `dateFrom`–`dateTo`** | ⚠️ Manual query syntax | ⚠️ Limited pagination (~100 cap) |
| **🗂️ Search + 9 Curated Topic Feeds** | **✅ Keyword search + `TECHNOLOGY`, `BUSINESS`, `WORLD`...** | ⚠️ Separate endpoints | ⚠️ Topic RSS only |
| **🛡️ Empty Search & Duplicate Item Fee** | **✅ $0.00 item fee (Zero `article-scraped` charge on 0 results or duplicates)** | ❌ Charged per API call on 0 results | ⚠️ Duplicates across queries |

***

### 💰 Transparent Pay-Per-Event Pricing (`$1.00 / 1,000 Articles` on All Plans)

This Actor uses flat **Pay-Per-Event (PPE)** billing across every Apify tier so you pay strictly `$0.001` per unique news article delivered to your dataset — with **optional full-article text (`extractArticleContent: true`) included at zero extra event fee**.

| Event | Event Name | Price per Unit | Price per 1,000 | Notes |
| :--- | :--- | :--- | :--- | :--- |
| **Article Scraped (All Plans)** | `article-scraped` | **`$0.0010`** | **`$1.00 / 1,000 articles`** | Flat rate on Free, Starter, Scale & Business |
| **Actor Run Start** | `apify-actor-start` | `$0.0050` | `$5.00 / 1,000 runs` | One-time startup event per GB RAM (min. 1 event) |
| **Empty Queries / Duplicates** | — | **`$0.00 / item`** | **`$0.00 item fee`** | Zero `article-scraped` charge on 0 results or deduplicated stories |

> 🎁 **Up to ~4,990 Articles / Month Free on Apify's Free Tier:**
> Every Apify account receives **$5.00 in free monthly platform credits**, covering **up to ~4,990 unique Google News articles every month at $0.00 cost** right on the Free Plan. Set a **Maximum cost per run** in [Apify Console](https://console.apify.com) or cap `maxArticles` for exact budget control.

***

### ✨ Key Capabilities

- **🔗 Direct Publisher URLs (Unwrapped)**: Automatically resolves Google News links into clean, canonical external publisher URLs (`url`, `publisherDomain`, `publisherUrl`, `publisherLogo`).
- **🔍 Keyword Search & 9 Curated Topic Feeds**: Search any list of keywords, company tickers, or executive names (`queries`), or pull live curated sections (`TOP_HEADLINES`, `WORLD`, `NATION`, `BUSINESS`, `TECHNOLOGY`, `ENTERTAINMENT`, `SPORTS`, `SCIENCE`, `HEALTH`).
- **🎯 100% Server-Side Filtering**:
  - **Recency (`timeRange`)**: Past hour (`1h`), 24 hours (`24h`), 7 days (`7d`), 30 days (`30d`), or past year (`1y`).
  - **Custom Historical Window (`dateFrom` / `dateTo`)**: Exact `YYYY-MM-DD` date ranges.
  - **Publisher Allowlist (`domains`)**: Restrict coverage to trusted outlets (e.g. `["reuters.com", "techcrunch.com", "bbc.com"]`).
  - **Boolean Precision**: Enforce `exactPhrase` matches and `excludeWords` exclusions directly on Google's servers.
- **📄 Optional Full-Article RAG Mode (`extractArticleContent`)**: Visits publicly accessible publisher pages to extract clean plain-text body paragraphs (`articleText`), `wordCount`, `author`, high-resolution `og:image`, and ISO publication timestamps (`publishedDateIso`). *(Note: Subscription-paywalled or bot-gated publisher domains still return complete Google News headline, snippet, publisher, timestamp, and direct URL metadata.)*
- **🌍 35+ Country & Language Editions**: Supports `us`, `gb`, `de`, `fr`, `es`, `it`, `nl`, `ca`, `au`, `in`, `sg`, `jp`, `kr`, `br`, `mx`, and 20+ additional editions with automatic natural-language matching.
- **🧠 Cross-Query Deduplication**: Batch dozens of queries and topics in a single run without paying twice for overlapping coverage.

***

### 🚀 Quick Start Input Examples

#### 1. Keyword Monitoring with Recency & Outlet Allowlist

```json
{
  "queries": ["NVIDIA semiconductor", "AI data centers"],
  "domains": ["reuters.com", "techcrunch.com"],
  "timeRange": "7d",
  "sortBy": "date",
  "country": "us",
  "maxArticles": 50
}
```

#### 2. Curated Topic Sections (`TECHNOLOGY` & `BUSINESS`)

```json
{
  "topics": ["TECHNOLOGY", "BUSINESS"],
  "country": "gb",
  "decodeRssUrls": true,
  "maxArticles": 60
}
```

#### 3. Full-Text Extraction for AI Agents & RAG Pipelines

```json
{
  "queries": ["European Central Bank interest rates"],
  "timeRange": "24h",
  "extractArticleContent": true,
  "maxArticles": 25
}
```

***

### 🛠️ How to Use via API (Python, Node.js & cURL)

#### 🐍 Python Example

```bash
pip install apify-client
```

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_API_TOKEN")

run = client.actor("unitbytes/google-news-scraper").call(
    run_input={
        "queries": ["Artificial Intelligence", "Cloud Computing"],
        "timeRange": "24h",
        "country": "us",
        "extractArticleContent": True,
        "maxArticles": 30,
    }
)

items = client.dataset(run["defaultDatasetId"]).list_items().items
for art in items[:5]:
    print(f"[{art['publishedAt']}] {art['publisher']}: {art['title']}")
    print(f"  URL: {art['url']} ({art.get('wordCount') or 0} words)")
```

***

#### 🟨 JavaScript / Node.js Example

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_APIFY_API_TOKEN' });

const run = await client.actor('unitbytes/google-news-scraper').call({
    topics: ['TECHNOLOGY', 'BUSINESS'],
    country: 'us',
    decodeRssUrls: true,
    maxArticles: 40,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Extracted ${items.length} articles`, items.slice(0, 3));
```

***

#### 🌐 cURL Example

```bash
curl -X POST "https://api.apify.com/v2/acts/unitbytes~google-news-scraper/runs?token=YOUR_APIFY_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "queries": ["renewable energy storage"],
    "timeRange": "7d",
    "country": "us",
    "maxArticles": 30
  }'
```

***

### 📦 Output Dataset Sample

Every item is flat at the root level for immediate CSV/Excel export, vector database indexing, and API consumption (all sample names and URLs below are synthetic illustrations):

```json
{
  "articleId": "CPcBSvDhrPhUpM01",
  "title": "Next-Generation Grid Storage Deployments Double Across North America",
  "url": "https://cleanenergy-journal-example.com/2026/11/12/grid-storage-deployments-double",
  "googleNewsUrl": null,
  "publisher": "CleanEnergy Journal",
  "publisherDomain": "cleanenergy-journal-example.com",
  "publisherUrl": "https://cleanenergy-journal-example.com",
  "publisherLogo": "https://www.google.com/s2/favicons?domain=cleanenergy-journal-example.com&sz=64",
  "snippet": "Utility-scale battery installations expanded by 104% year-over-year as regional grid operators accelerated peak-load balancing programs...",
  "thumbnailUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSampleThumbnailToken",
  "publishedAt": "2026-11-12T12:15:00+00:00",
  "publishedAtText": "2 hours ago",
  "publishedTimestamp": 1794485700,
  "author": "Alex Rivera",
  "articleText": "Utility-scale battery installations expanded by 104% year-over-year across North American interconnects...\n\nGrid planners cited declining lithium-iron-phosphate pack costs and streamlined interconnection queues...",
  "wordCount": 642,
  "publishedDateIso": "2026-11-12T12:15:00+00:00",
  "relatedCount": 0,
  "relatedArticles": [],
  "sourceSurface": "google_search_news",
  "searchQuery": "grid storage deployments",
  "topic": null,
  "country": "us",
  "language": "en",
  "scrapedAt": "2026-11-12T14:20:05.112000+00:00"
}
```

***

### ⚙️ Input Parameters Reference

| Field | Type | Default | Description |
| :--- | :--- | :--- | :--- |
| `queries` | `array` | `["Artificial Intelligence"]` *(prefill)* | Search keywords, phrases, or Google News URLs. |
| `topics` | `array` | `[]` | Topic sections: `TOP_HEADLINES`, `WORLD`, `NATION`, `BUSINESS`, `TECHNOLOGY`, `ENTERTAINMENT`, `SPORTS`, `SCIENCE`, `HEALTH`. |
| `domains` | `array` | `[]` | Restrict results to specific publisher domains (e.g. `["reuters.com", "bbc.com"]`). |
| `exactPhrase` | `string` | `""` | Require exact phrase match in stories. |
| `excludeWords` | `array` | `[]` | Exclude stories containing specified terms. |
| `timeRange` | `string` | `"any"` | Recency filter: `any`, `1h`, `24h`, `7d`, `30d`, `1y`. |
| `dateFrom` / `dateTo` | `string` | `""` | Custom date bounds (`YYYY-MM-DD`). Overrides `timeRange` when provided. |
| `sortBy` | `string` | `"relevance"` | `relevance` (top coverage) or `date` (newest first). |
| `country` | `string` | `"us"` | 2-letter ISO edition code (`us`, `gb`, `de`, `fr`, `jp`, `br`, etc.). |
| `language` | `string` | `""` *(auto)* | ISO language code. Leave empty to match the natural language of `country`. |
| `feedMode` | `string` | `"auto"` | `auto` (recommended), `search` (rich previews & deep pagination), or `rss` (topic & cluster feeds). |
| `extractArticleContent` | `boolean` | `false` | Fetch full plain-text body, author, `og:image`, and `publishedDateIso` from accessible publisher pages. |
| `decodeRssUrls` | `boolean` | `false` | Resolve `news.google.com/rss/articles/...` links into direct publisher URLs in RSS/Topic mode. |
| `maxArticles` | `integer` | `50` | Maximum total unique articles to extract (`1`–`5000`). |

***

#### 📋 Copy-and-Paste Directive for AI Coding Assistants (Cursor, Windsurf & Claude Code)

> *"Use the `unitbytes/google-news-scraper` Actor on Apify to extract Google News articles, unwrapped publisher URLs, UTC timestamps, topic feeds, and clean full-article text (`extractArticleContent: True`) for RAG pipelines. Pair it with `unitbytes/google-trending-now-scraper` to detect rising news spikes first. Example call: `client.actor('unitbytes/google-news-scraper').call(run_input={'queries': ['Artificial Intelligence'], 'timeRange': '24h', 'extractArticleContent': True, 'maxArticles': 25})`"*

***

#### 🔌 MCP Server Setup: Claude Code, Cursor & AI Agents

```json
{
  "mcpServers": {
    "apify": {
      "type": "http",
      "url": "https://mcp.apify.com/?tools=actors,docs,unitbytes/google-news-scraper,unitbytes/google-trending-now-scraper"
    }
  }
}
```

***

### 🌐 Complete UnitBytes Google, News & Market Intelligence Ecosystem

| Actor | Best For | Pricing |
| :--- | :--- | :--- |
| [**Google News Scraper**](https://apify.com/unitbytes/google-news-scraper?fpr=939u3w\&fp_sid=ecosystem) *(📍 You are here)* | Direct publisher URLs, recency/domain filters, curated topic feeds & optional clean full-article text | From $1.00 / 1K |
| [**Google Trends Trending Now Scraper**](https://apify.com/unitbytes/google-trending-now-scraper?fpr=939u3w\&fp_sid=ecosystem) | Real-time +5,000% breaking search spikes across 100+ countries (`4h`, `24h`, `48h`, `7d`) | From $0.30 / 1K |
| [**Google Trends Scraper (5-in-1)**](https://apify.com/unitbytes/google-trends-scraper?fpr=939u3w\&fp_sid=ecosystem) | Historical interest over time, regional breakdowns, breakout queries & related topics | From $0.30 / 1K |
| [**YouTube Trends & Keyword Scraper**](https://apify.com/unitbytes/youtube-trends-scraper?fpr=939u3w\&fp_sid=ecosystem) | Rising YouTube video topics, creator keyword research & viewer regions | From $0.30 / 1K |
| [**Google Jobs Scraper**](https://apify.com/unitbytes/google-jobs-scraper?fpr=939u3w\&fp_sid=ecosystem) | Corporate hiring signals, parsed salaries, employer logos & direct ATS apply links | From $4.00 / 1K |
| [**Google Shopping Scraper**](https://apify.com/unitbytes/google-shopping-scraper?fpr=939u3w\&fp_sid=ecosystem) | Live retail product prices, discounts, multi-seller offers & direct checkout URLs | From $2.00 / 1K |
| [**Google Flights Scraper**](https://apify.com/unitbytes/google-flights-scraper?fpr=939u3w\&fp_sid=ecosystem) | Real-time airfares, carriers, flight numbers, stops, layovers & CO2 emissions | From $2.50 / 1K |
| [**Google Hotels Scraper**](https://apify.com/unitbytes/google-hotels-scraper?fpr=939u3w\&fp_sid=ecosystem) | Nightly & total hotel/rental rates, multi-OTA price parity (`Booking.com`, `Expedia`), GPS & HD photos | From $2.50 / 1K |
| [**Google Maps Email & Leads Scraper**](https://apify.com/unitbytes/google-maps-leads-scraper?fpr=939u3w\&fp_sid=ecosystem) | Verified B2B business emails, phones, social profiles & website tech stacks | From $1.00 / 1K |
| [**Google Maps Reviews Scraper**](https://apify.com/unitbytes/google-maps-reviews-scraper?fpr=939u3w\&fp_sid=ecosystem) | Bulk extraction of up to 10,000 customer reviews per place with keyword & rating filters | From $0.25 / 1K |
| [**Reddit Posts & Search Scraper**](https://apify.com/unitbytes/reddit-scraper?fpr=939u3w\&fp_sid=ecosystem) | Community discussions, brand mentions, thread comments & organic consumer sentiment | From $0.50 / run |

***

### ⚖️ Compliance & Privacy

This Actor indexes **strictly publicly accessible news metadata and publicly readable publisher articles**. All output sample names and domains are synthetic illustrations. Read Apify's guide on [the legality of web scraping](https://blog.apify.com/is-web-scraping-legal/) and respect publisher copyright and robots/terms policies in downstream usage.

#### Disclaimer

This Actor is an independent software tool and is not affiliated with, endorsed by, or sponsored by Google LLC or any news publisher.

***

### 🛠️ Integrations & Support

Connect **Google News Scraper** directly with [Apify Integrations](https://apify.com/integrations) (Make, Zapier, n8n, LangChain, LlamaIndex, Google Sheets, Slack, webhooks) or call it programmatically via the [Apify API](https://docs.apify.com/api/v2).

Have feedback, edge-case queries, or feature requests?

- 💬 **Apify Issues**: Open a ticket in the [Actor Issues Tab](https://apify.com/unitbytes/google-news-scraper/issues)
- 🚀 **Apify Store**: [Google News Scraper](https://apify.com/unitbytes/google-news-scraper?fpr=939u3w\&fp_sid=gh_gnews)

# Actor input Schema

## `queries` (type: `array`):

Keywords, company names, tickers, or Google News search URLs to scrape (e.g. 'Artificial Intelligence', 'NVIDIA earnings', 'renewable energy'). Supports multiple queries in one run with automatic cross-query deduplication.

## `topics` (type: `array`):

Google News curated section feeds to collect: 'TOP_HEADLINES', 'WORLD', 'NATION', 'BUSINESS', 'TECHNOLOGY', 'ENTERTAINMENT', 'SPORTS', 'SCIENCE', 'HEALTH'. Leave empty when searching only by keywords.

## `domains` (type: `array`):

Restrict results to specific news outlets or domains (e.g. 'reuters.com', 'techcrunch.com', 'bbc.com'). Applied server-side via Google's site filter.

## `exactPhrase` (type: `string`):

Require this exact multi-word phrase to appear in matching news stories (e.g. 'interest rate cut').

## `excludeWords` (type: `array`):

Exclude stories containing any of these words or phrases (applied server-side via '-word').

## `timeRange` (type: `string`):

Filter articles by publication recency on Google's servers.

## `dateFrom` (type: `string`):

Custom start date in YYYY-MM-DD format (e.g. '2026-11-01'). Overrides Time Range when set.

## `dateTo` (type: `string`):

Custom end date in YYYY-MM-DD format (e.g. '2026-11-12'). Overrides Time Range when set.

## `sortBy` (type: `string`):

Sort results by editorial relevance or newest publication timestamp first.

## `country` (type: `string`):

Two-letter ISO country code for Google News edition localization (e.g. 'us', 'gb', 'de', 'fr', 'es', 'it', 'nl', 'ca', 'au', 'in', 'sg', 'jp', 'kr', 'br', 'mx'). Common names like 'USA' or 'UK' are normalized automatically.

## `language` (type: `string`):

ISO language code (e.g. 'en', 'de', 'fr', 'es', 'pt', 'ja'). Recommended: leave empty so Google automatically uses the natural language of the selected country.

## `feedMode` (type: `string`):

Choose 'auto' (recommended: Google Search News with direct publisher URLs, snippets, thumbnails & deep pagination) or 'rss' (fast Google News RSS feed with related coverage clusters).

## `extractArticleContent` (type: `boolean`):

When enabled, visits each publisher URL to extract clean plain-text body paragraphs (`articleText`), `wordCount`, `author`, high-resolution `og:image`, and exact `publishedDateIso`.

## `decodeRssUrls` (type: `boolean`):

When using Topic Feeds or RSS Mode, resolves `news.google.com/rss/articles/...` wrapper links into final canonical publisher URLs. Automatically enabled when Extract Full Article Text is turned on.

## `maxArticles` (type: `integer`):

Maximum number of unique news articles to collect across all queries and topics. Extraction stops immediately once this cap is reached.

## `proxyConfiguration` (type: `object`):

Optional proxy settings. Leave at default to use automatic managed routing, or provide custom proxy URLs.

## Actor input object example

```json
{
  "queries": [
    "Artificial Intelligence"
  ],
  "topics": [],
  "domains": [],
  "exactPhrase": "",
  "excludeWords": [],
  "timeRange": "any",
  "dateFrom": "",
  "dateTo": "",
  "sortBy": "relevance",
  "country": "us",
  "language": "",
  "feedMode": "auto",
  "extractArticleContent": false,
  "decodeRssUrls": false,
  "maxArticles": 50
}
```

# Actor output Schema

## `results` (type: `string`):

Extracted Google News headlines, direct publisher URLs, snippets, timestamps, thumbnails, and optional full-article text

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "queries": [
        "Artificial Intelligence"
    ],
    "topics": [],
    "domains": [],
    "exactPhrase": "",
    "excludeWords": [],
    "dateFrom": "",
    "dateTo": "",
    "country": "us",
    "language": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("unitbytes/google-news-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "queries": ["Artificial Intelligence"],
    "topics": [],
    "domains": [],
    "exactPhrase": "",
    "excludeWords": [],
    "dateFrom": "",
    "dateTo": "",
    "country": "us",
    "language": "",
}

# Run the Actor and wait for it to finish
run = client.actor("unitbytes/google-news-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "queries": [
    "Artificial Intelligence"
  ],
  "topics": [],
  "domains": [],
  "exactPhrase": "",
  "excludeWords": [],
  "dateFrom": "",
  "dateTo": "",
  "country": "us",
  "language": ""
}' |
apify call unitbytes/google-news-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,unitbytes/google-news-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/eqG5IktiQtw1QMH8N/builds/qoLe0w3UCHN2LBXQg/openapi.json
