Here is how to scrape Google News with Python: send one request to the API and get clean JSON back with the headline, source, date, link, and hero image for every article. Want a spreadsheet instead? The same rows are one click away as CSV.
Install the requests library with pip install requests, grab a free API key from the dashboard, then call the news endpoint. There is no browser to drive and no HTML to parse on your side. Here is the whole script:
Prefer the command line to check it first? The same call as curl:
The articles come back as clean JSON, and the same rows are available as CSV. Here are the first two, so they drop straight into Sheets or a CRM:
And the same response as JSON, which is what resp.json() hands your script:
Add gl and hl for country and language, and page with num for more results.
Each item in data["news"] is a plain dictionary, so you read the fields directly, no HTML parsing and nothing that breaks when Google changes its page. Here is the top article, shown as CSV, ready for Sheets or a database:
Or the same record as JSON, exactly the shape your Python code loops over:
To move it into pandas for analysis, one line does it: pandas.DataFrame(data["news"]) gives you a table with a column for every field above.
All three return Google News as JSON you can call from Python. The difference is what each result carries and how you pay for it.
| Other News APIs | CrustAPI News | |
|---|---|---|
| Billing unit | One credit per search, even when it returns nothing | One credit per successful search; empty or failed searches cost nothing |
| What it returns | JSON | Clean JSON from the API, or the same rows as CSV |
| Article image | Small gstatic thumbnail | The real publisher hero image (og:image) |
| Python setup | requests, or a vendor SDK | requests and one header, no SDK |
| Free tier | Trial credits that expire | 3,000 credits / month, no card |
| Credits expiry | Expire monthly or in 6 months | Never expire |
| Storing the data | Varies by provider | No storage limits. Keep it, export it, build on it |
Start free with 3,000 credits a month, no card. After that, prepaid packs, and credits never expire: 25k for $49 · 100k for $149 · 500k for $549 · 2.5M for $1,999 · up to 250M, all self-serve, ex-tax. One credit per successful search, however many articles come back, and a search that returns none costs nothing.
Related: Google News API · Google Search API · Google Maps Scraper API · Docs
When a licensed news feed is the better pick: you need full article bodies with a publisher license, guaranteed historical archives going back years, or a contract that indemnifies redistribution. Google News gives you the headline, source, snippet, and link, which is what most monitoring and research scripts need, but it is not a licensed full-text archive.
3,000 free credits covers a real news feed. Paste the script above, swap in your key, and look at the JSON that comes back.
Get 3,000 free credits