gnews
Provide an API to search for articles on Google News and returns a usable JSON response.
What it is and what it does
GNews is a lightweight Python wrapper around Google News RSS feeds that returns article metadata (title, description, publisher, URL, publication date) as JSON. It lets you search for news by keyword, topic (WORLD, BUSINESS, TECHNOLOGY, SPORTS, etc.), geographic location, or specific news site, with filtering options for language, country, date range, and result count. The package also supports fetching full article text and resolving Google News redirect URLs through optional dependencies.
The core use case is building news aggregation tools, monitoring systems, or analysis pipelines without writing custom RSS parsers or web scrapers. It handles the boilerplate of querying Google News, parsing feeds, and normalizing the response format. The package is actively maintained, has no known vulnerabilities, and depends only on standard HTTP and HTML parsing libraries.
Use it for:
- Monitor news headlines on a specific topic or keyword and trigger alerts when articles match certain criteria.
- Build a news dashboard that aggregates articles from multiple countries or languages into a single feed.
- Collect news data for sentiment analysis, topic modeling, or other NLP research on recent headlines.
- Track coverage of a specific company or person across different news sources and regions.
- Export filtered news results to CSV or JSON for downstream analysis or archival.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
GNews searches Google News RSS feeds and returns article metadata as JSON, with optional full-text extraction and support for filtering by keyword, topic, location, site, date range, and language across 141+ countries.
Yes. GNews is actively maintained, has no security vulnerabilities, low install friction, and solves a real problem—querying Google News without writing custom scrapers. The permissive MIT license removes legal friction. Install it if you need to aggregate news programmatically; skip it only if you require a commercial news API with SLA guarantees or need to handle Google's rate-limiting at scale.
Install
gnews on PyPI
pip
pip install gnewsuv
uv add gnewspoetry
poetry add gnewsInstalling gnews
Before you install
Low install friction with a pure-Python wheel and four common dependencies (feedparser, beautifulsoup4, dnspython, requests). Actively maintained with a recent release and 1003 repository stars.
License in practice
Licensed under MIT (permissive), allowing free use, modification, and distribution with minimal restrictions.
Quickstart
pip install gnews
from gnews import GNews
google_news = GNews()
articles = google_news.get_news('Pakistan')
print(articles[0])
Optional extras (gnews[fulltext] for article text, gnews[playwright] for URL resolution) require additional setup; base install works without them.
Verify before relying
- Whether Google News actively blocks or rate-limits programmatic access and how often the package maintainer updates to handle such changes.
- Actual success rate and latency of RSS feed queries under typical usage patterns.
- Whether the package handles Google News feed schema changes automatically or requires manual updates.
Package facts
| License | not declared (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — feedparser, beautifulsoup4, dnspython, requests |
| Maintenance | actively maintained — 50 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 124,377/month — #11,870 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: gnews-0.8.2-py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
googlenewsdecoderDecodes Google News redirect URLs to their…
permissive · top 15,000 on PyPI
newspaper4kExtracts article text, metadata, and images…
permissive · top 15,000 on PyPI
newsapi-pythonA Python client library that wraps the News…
permissive · top 15,000 on PyPI
eventregistryQuery news articles and events from Event…
permissive · top 15,000 on PyPI
duckduckgo-searchRetrieves search results from DuckDuckGo for…
permissive · top 5,000 on PyPI
trendspyFetch and analyze Google Trends data including…
permissive · top 15,000 on PyPI
asknewsPython SDK for the AskNews API that retrieves…
permissive · top 15,000 on PyPI
mkdocs-rss-pluginGenerates RSS 2.0 and JSON Feed 1.1 feeds for…
permissive · top 15,000 on PyPI
ddgsAggregates web search results from multiple…
permissive · top 5,000 on PyPI
feedfinder2Feedfinder2 detects and returns feed URLs (RSS,…
permissive · top 15,000 on PyPI