Skip to main content

Python wrapper for the Datamuse API

Project description


PyPI PyPI - License CodeQL

Python wrapper and scripts for the Datamuse API. Available on PyPI at You can install this library with pip3 install python-datamuse.


Version 2.0.* (2022-10-22)

  • require Python 3.7
  • add @margaret to authors
  • upgrade trove classifier "Development Status" from "3 - Alpha" to "5 - Production/Stable"
  • specify all dependency version requirements
  • rename default branch main
  • build tool changes, see
  • (2.0.1) (2022-12-29): fix CI workflows

Version 1.3.* (2019-09-20)

  • Add optional arguments to suggest method
  • Document and test suggestion method
  • (1.3.1): Update README example
  • (1.3.1): Remove WORD_PARAMS
  • (1.3.1): Document words method
  • (1.3.2) (2022-04-04): Fix test_set_max bug

Version 1.2.* (2018-10-23)

  • Raise Python version to 3.6
  • Mock the Datamuse API for tests
  • Restructure project files
  • Set README as PyPI long description
  • (1.2.1): Fix README formatting on PyPI

Version 1.1.0 (2018-02-18)

  • Changed to Python 3
  • Uploaded to PyPI, added instructions for PyPI installation
  • Changed README example to reflect PyPI packaging
  • Set up Travis CI
  • Temporarily removed pandas
  • Changed mode of scripts to executable


>>> from datamuse import Datamuse
>>> api = Datamuse()
>>> api.words(rel_rhy='ninth', max=5)  # words that rhyme with "ninth"
>>> api.words(rel_rhy='orange', max=5)  # words that rhyme with "orange"
[{'word': 'door hinge', 'score': 74, 'numSyllables': 2}]
>>> api.words(rel_jja='yellow', max=5)  # things often described as "yellow"
[{'word': 'fever', 'score': 1001}, {'word': 'color', 'score': 1000}, {'word': 'flowers', 'score': 999}, {'word': 'light', 'score': 998}, {'word': 'colour', 'score': 997}]
>>> api.suggest(s='foo', max_results=10)  # completion suggestions for "foo"
[{'word': 'food', 'score': 3888}, {'word': 'foot', 'score': 3041}, {'word': 'fool', 'score': 1836}, {'word': 'football', 'score': 1424}, {'word': 'footage', 'score': 1328}, {'word': 'footprint', 'score': 1082}, {'word': 'foolish', 'score': 967}, {'word': 'foof', 'score': 930}, {'word': 'footing', 'score': 786}, {'word': 'foolproof', 'score': 697}]

Note that the default number of results is set to 100. You can set the default max to something else using the set_max_default method, e.g. api.set_max_default(300). Datamuse only returns 1000 results max.

Project details

Download files

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

Source Distribution

python_datamuse-2.0.1.tar.gz (4.7 kB view hashes)

Uploaded source

Built Distribution

python_datamuse-2.0.1-py3-none-any.whl (4.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page