random-word
random-word copied to clipboard
This is a simple python package to generate random english words
random-word
This is a simple python package to generate random english words. If you need help after reading the below, please find me at @vaibhavsingh97 on Twitter.
If you love the package, please :star2: the repo.
Installation
You should be able to install using easy_install
or pip
in the usual ways:
$ easy_install random-word
$ pip install random-word
Or just clone this repository and run:
$ python3 setup.py install
Or place the random-word
folder that you downloaded somewhere where it can be accessed by your scripts.
Basic Usage
# ⚠️ This will be soon deprecated in future versions of this package
from random_word import RandomWords
r = RandomWords()
# Return a single random word
r.get_random_word()
# Return list of Random words
r.get_random_words()
# Return Word of the day
r.word_of_the_day()
User can specify their own api key
r = RandomWords(api_key="<your api key>")
In a future version, we will have different services similar to Wordnik that will provide random words.
from random_word import Wordnik
wordnik_service = Wordnik()
# Return a single random word
wordnik_service.get_random_word()
# Return list of Random words
wordnik_service.get_random_words()
# Return Word of the day
wordnik_service.word_of_the_day()
Advance Usage
-
To generate single random word we can use these optional parameters
-
hasDictionaryDef (string)
- Only return words with dictionary definitions (optional) -
includePartOfSpeech (string)
- CSV part-of-speech values to include (optional) -
excludePartOfSpeech (string)
- CSV part-of-speech values to exclude (optional) -
minCorpusCount (integer)
- Minimum corpus frequency for terms (optional) -
maxCorpusCount (integer)
- Maximum corpus frequency for terms (optional) -
minDictionaryCount (integer)
- Minimum dictionary count (optional) -
maxDictionaryCount (integer)
- Maximum dictionary count (optional) -
minLength (integer)
- Minimum word length (optional) -
maxLength (integer)
- Maximum word length (optional)
r.get_random_word(hasDictionaryDef="true", includePartOfSpeech="noun,verb", minCorpusCount=1, maxCorpusCount=10, minDictionaryCount=1, maxDictionaryCount=10, minLength=5, maxLength=10) # Output: pediophobia
-
-
To generate list of random word we can use these optional parameters
-
hasDictionaryDef (string)
- Only return words with dictionary definitions (optional) -
includePartOfSpeech (string)
- CSV part-of-speech values to include (optional) -
excludePartOfSpeech (string)
- CSV part-of-speech values to exclude (optional) -
minCorpusCount (integer)
- Minimum corpus frequency for terms (optional) -
maxCorpusCount (integer)
- Maximum corpus frequency for terms (optional) -
minDictionaryCount (integer)
- Minimum dictionary count (optional) -
maxDictionaryCount (integer)
- Maximum dictionary count (optional) -
minLength (integer)
- Minimum word length (optional) -
maxLength (integer)
- Maximum word length (optional) -
sortBy (string)
- Attribute to sort byalpha
orcount
(optional) -
sortOrder (string)
- Sort direction byasc
ordesc
(optional) -
limit (integer)
- Maximum number of results to return (optional)
r.get_random_words(hasDictionaryDef="true", includePartOfSpeech="noun,verb", minCorpusCount=1, maxCorpusCount=10, minDictionaryCount=1, maxDictionaryCount=10, minLength=5, maxLength=10, sortBy="alpha", sortOrder="asc", limit=15) # Output: ['ambivert', 'calcspar', 'deaness', 'entrete', 'gades', 'monkeydom', 'outclimbed', 'outdared', 'pistoleers', 'redbugs', 'snake-line', 'subrules', 'subtrends', 'torenia', 'unhides']
-
-
To get word of the day we can use these optional parameters
-
date (string)
- Fetches by date in yyyy-MM-dd (optional)
r.word_of_the_day(date="2018-01-01") # Output: {"word": "qualtagh", "definations": [{"text": "The first person one encounters, either after leaving one\'s home or (sometimes) outside one\'s home, especially on New Year\'s Day.", "source": "wiktionary", "partOfSpeech": "noun"}, {"text": "A Christmas or New Year\'s ceremony, in the Isle of Man; one who takes part in the ceremony. See the first extract.", "source": "century", "partOfSpeech": "noun"}]}
-
Development
Assuming that you have Python
and pipenv
installed, set up your environment and install the required dependencies like this instead of the pip install random-word
defined above:
$ git clone https://github.com/vaibhavsingh97/random-word.git
$ cd random-word
$ make init
Add API Key in random_word
directory defining API Key in config.yml
. If you don't have an API key than request your API key here
API_KEY = "<API KEY>"
To check your desired changes you can install your package locally
$ pip install -e .
Issues
You can report the bugs at the issue tracker
License
Built with ♥ by Vaibhav Singh(@vaibhavsingh97) under MIT License
You can find a copy of the License at https://vaibhavsingh97.mit-license.org/