Skip to main content

DuckDuckGo zero-click api for your command-line

Project description

Duck Duck Go zero-click api for your command-line


$ pip install ddg

or from the source:

$ python install


ddg [-h] [-b] [-d] [-j] [-l] [-s] [-u] [query [query ...]] zero-click api for your command-line

positional arguments:
query the search query
optional arguments:
-h, --help show this help message and exit
-b, --bang open the !bang redirect url in a new browser tab
-d, --define return the definition result
-j, --json return the zero-click info api json response
-l, --lucky open the result url in a new browser tab
-s, --search launch a DuckDuckGo search in a new browser tab
-u, --url return the result url


Call ddg from your command line to access the Duck Duck Go Zero-Click Info API

$ddg red-black tree
A red–black tree is a type of self-balancing binary search tree, a data structure
used in computer science, typically used to implement associative arrays.

Get the url of the answer source

$ ddg red-black tree -u

Combinining flags behaves as expected

$ ddg schnauzer -d -u

Launch a !Bang redirect in your web browser with the -b flag

Launch a query on Wolfram Alpha

$ ddg wa integral of sin x / x from negative inf to inf -b

Launch a search on Stack Overflow

$ ddg so [c++11] lambda return values -b

Launch a search on Duck Duck Go with -s

$ ddg Lord of the Rings -s

Launch the result url directly with -l

$ ddg python webbrowser -l

ddg plays nice with other utilities in your shell

$ echo "shark" | ddg -dl
$ ddg welsh corgi -u | pbcopy
$ ls | ddg -du

Use -j to output the json response from the API

$ ddg simpsons characters -j >> file.txt


The duckduckgo module is a modification from
Original duckduckgo module source from (outdated)

Release history

0.2.1 (2012-12-18)

  • When an exception is raised in the duckduckgo module, report the error and then return None. This allows to continue to the next query rather than performing a sys.exit(1).
  • Updated README
  • Fixed formatting in LICENSE file
  • Changed CHANGES to an rst file
  • Updated the file
  • Updated the help for all the input arguments

0.2.0 (2012-12-17)

  • Changed the behavior of the -d flag. Rather than prefixing the query with define, now just prioritize the definition result when searching for an answer to the query.
  • Updated README with more examples.

0.1.7 (2012-12-16)

  • Added a new trove classifier and made code more PEP8 compliant

0.1.6 (2012-12-16)

  • Fixed an issue with the -b prefix, please upgrade to the latest version with pip install –upgrade ddg

0.1.5 (2012-12-15)

  • Updated license to MIT

0.1.4 (2012-12-15)

  • Using webbrowser rather than os dependent Popen commands

0.1.1 (2012-12-15)

  • First working version, initial release

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for ddg, version 0.2.1
Filename, size File type Python version Upload date Hashes
Filename, size ddg-0.2.1.tar.gz (6.1 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page