Seamless Integration
Built for easy integration into your existing systems, so you can streamline your news data flow.
Get title, source, URL, and more real-time Google news data in bulk. The API handles proxies & all other corner cases so you get blockage-free data at scale.
"news_results": [
{
"title": "Premier League: Five things we learned this weekend",
"snippet": "A look back at the standout moments and talking points from the latest round of Premier League fixtures.",
"source": "BBC Sport",
"lastUpdated": "2 hours ago",
"url": "https://www.bbc.com/sport/football/articles/...",
"imgSrc": "https://news.google.com/api/attachments/..."
},
{
"title": "Champions League draw: Who plays who in the group stage",
"snippet": "The full breakdown of every group and the key fixtures to watch this season.",
"source": "Sky Sports",
"lastUpdated": "5 hours ago",
"url": "https://www.skysports.com/football/news/...",
"imgSrc": "https://news.google.com/api/attachments/..."
}
]import requests
api_key = "5eaa61a6e562fc52fe763tr516e4653"
url = "https://api.scrapingdog.com/google_news"
params = {
"api_key": api_key,
"query": "football",
"results": "10",
"country": "us"
}
response = requests.get(url, params=params)
if response.status_code == 200:
data = response.json()
print(data)
else:
print(f"Request failed with status code: {response.status_code}")import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
try {
// Set the API key and request parameters
String apiKey = "5eaa61a6e562fc52fe763tr516e4653";
String query = "football";
String results = "10";
String country = "us";
// Construct the API endpoint URL
String apiUrl = "https://api.scrapingdog.com/google_news?api_key=" + apiKey
+ "&query=" + query
+ "&results=" + results
+ "&country=" + country;
URL url = new URL(apiUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
int responseCode = connection.getResponseCode();
if (responseCode == 200) {
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = reader.readLine()) != null) {
response.append(inputLine);
}
reader.close();
System.out.println(response.toString());
} else {
System.out.println("HTTP request failed with response code: " + responseCode);
}
connection.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}<?php
// Set the API key and request parameters
$api_key = '5eaa61a6e562fc52fe763tr516e4653';
$query = 'football';
$results = '10';
$country = 'us';
// Set the API endpoint
$url = 'https://api.scrapingdog.com/google_news?api_key=' . $api_key . '&query=' . $query . '&results=' . $results . '&country=' . $country;
// Initialize cURL session
$ch = curl_init($url);
// Set cURL options
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Execute the cURL request
$response = curl_exec($ch);
// Check if the request was successful
if ($response === false) {
echo 'cURL error: ' . curl_error($ch);
} else {
echo $response;
}
// Close the cURL session
curl_close($ch);require 'net/http'
require 'uri'
# Set the API key and request parameters
api_key = '5eaa61a6e562fc52fe763tr516e4653'
query = 'football'
results = '10'
country = 'us'
# Construct the API endpoint URL
url = URI.parse("https://api.scrapingdog.com/google_news?api_key=#{api_key}&query=#{query}&results=#{results}&country=#{country}")
# Create an HTTP GET request
request = Net::HTTP::Get.new(url)
# Create an HTTP client
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true # Enable SSL (https)
# Send the request and get the response
response = http.request(request)
# Check if the request was successful
if response.is_a?(Net::HTTPSuccess)
puts response.body
else
puts "HTTP request failed with code: #{response.code}, message: #{response.message}"
endconst axios = require('axios');
const api_key = '5eaa61a6e562fc52fe763tr516e4653';
const url = 'https://api.scrapingdog.com/google_news';
const params = {
api_key: api_key,
query: 'football',
results: '10',
country: 'us',
};
axios
.get(url, { params: params })
.then(function (response) {
if (response.status === 200) {
const data = response.data;
console.log(data);
} else {
console.log('Request failed with status code: ' + response.status);
}
})
.catch(function (error) {
console.error('Error making the request: ' + error.message);
});titlesnippetsourceimgSrcurllastUpdatedquerycountryresultsMonitoring Google News by hand means polling fast-moving headlines, untangling Google redirect links, and missing the breaking stories that matter most.
News reshuffles by the minute. Manual polling lags the cycle, so you learn about a story hours after it has spread.
Article links are wrapped in encoded news.google.com redirect URLs you must decode just to reach the real publisher.
Recency shows as relative text like "2 hours ago," not clean dates, so deduping wire copies or sorting a feed is hard.
A single locale view misses how a story is framed across markets, and managing geo-targeted requests by hand is brittle.
With Scrapingdog, one API call handles proxies, CAPTCHA, parsing, and scaling, so you focus on your data.
Access a vast array of news sources globally, ensuring you can monitor news developments from every corner of the world in real time.
Use the latest news data to drive your content strategy, providing fresh and relevant articles that attract and engage your audience.
Stay ahead of market trends by receiving immediate updates on significant news events that could influence your business sector.
React swiftly to global events with real-time news alerts, allowing your team to manage and mitigate potential impacts with timely, informed decisions.
Built for easy integration into your existing systems, so you can streamline your news data flow.
Fast data delivery for real-time news updates and immediate access to global news sources.
Scale your operations smoothly with our Google News API, built to handle growing demands.
Pass a country code to see how a story is reported in each market you operate in.
Every result returns the real article url and source, so you land straight on the publisher.
Built-in proxy rotation and anti-bot handling keep the news_results feed flowing without blocks.
Build a news aggregator that pulls diverse sources into a single feed of the latest headlines.
Track news mentions of your competitors and use real-time updates to gauge their market moves.
Run sentiment analysis on news content to gauge public opinion toward topics and shape your communication.
Measure how major events affect regions by analyzing the volume and tone of news coverage.
Track regulatory changes and compliance news affecting your industry, from legislation to governmental updates.
Integrate up-to-date news sources into academic projects, giving researchers current information for case studies.
Sign up and get free credits to start testing the News API.
Access your unique API key from the dashboard and use it to scrape the data.
Pass a query, a country code, and how many results you want.
Get a clean news_results array with title, snippet, source, url, and imgSrc.
Start your web scraping journey with 200 free credits. Test our service and upgrade to one of the plans below. Cancel anytime.

I got the free trial and in less than a minute I already integrated with their API to scrape Google, matter of fact they had all the plug-and-play codes ready for me, It was seamless. I am about to upgrade as I have used up my trial credits
United States
I love how you can use it to scrape data from Google.
Oslo, Norway
Scrapingdog is an awesome service. I use it with my Local Leads Sniper system and thanks to it I have been able to land a few clients since it gave me all the info that my client's Google Business Profile was missing. Great service!
Mexico
Their API success rate is 100% on the tests that I have done. The service seems very reliable.
New York, USA
Yes, the API has a rate limit depending on your chosen subscription plan.
Yes, other than the data from Google News, we have dedicated APIs for Google Search, Google Trends, Google Shopping etc.
Each API request consumes a certain number of credits based on the dedicated API you're using.
No, Google doesn't offer an official API to extract data from their News results.
Get 200 free credits to spin the API. No credit card required!