pypi / ddgs
ddgs
What changed in ddgs 9, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-21.
7 breaking10 new APIs and options2 performance3 behavior and defaults10 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initddgs 932 changes
Breaking changes 7
The dht feature was removed.
The Yandex engine was disabled.
The Google engine was disabled.
Bing search was disabled due to irrelevant results.
The MullvadLetaBrave engine was dropped, so developers can no longer select it.
The MullvadLetaGoogle engine was dropped, so developers can no longer select it.
Python 3.9 is no longer supported; developers need to use a supported Python version.
New APIs and options 10
Adds Startpage as a supported search engine.
The api extra provides REST API endpoints.
Adds a beta distributed cache network for search results, with automatic peer discovery and bootstrap.
Bing was added as an images backend.
Adds the BingImages engine for searching Bing Images.
Adds an extract() method for URL content extraction.
Adds an MCP endpoint over STDIO.
Adds Grokipedia as an engine.
Add an option to disable color output in the CLI.
DDGS(verify=) now allows a custom CA path.
Performance 2
Extract performance was improved.
DDGS is now lazy-loaded.
Behavior and default changes 3
The cache evicts entries based on TTL.
Search domain selection is randomized.
The DuckDuckGo HTTP client now adds a fake user agent and request headers.
Fixes and other changes 10
Google is updated and enabled as a search engine.
The DuckDuckGo search engine is updated.
Per-element strip was removed from extract_results.
The CLI now handles the deprecated -k flag.
Google requests use Android user agents.
Google now uses GSA user agents.
Fixes and enables the Google engine.
Expose the typed DDGS alias to fix lookup errors for type checkers.
Brave search XPath expressions were updated.
DuckDuckGo search now filters ads.