====
joke
.. image:: https://img.shields.io/pypi/v/axju-jokes
:alt: PyPI
:target: https://pypi.org/project/axju-jokes/
.. image:: https://img.shields.io/pypi/pyversions/axju-jokes
:alt: Python Version
:target: https://pypi.org/project/axju-jokes/
.. image:: https://img.shields.io/pypi/wheel/axju-jokes
:alt: Wheel
:target: https://pypi.org/project/axju-jokes/
.. image:: https://img.shields.io/pypi/implementation/axju-jokes
:alt: Implementation
:target: https://pypi.org/project/axju-jokes/
.. image:: https://img.shields.io/pypi/dm/axju-jokes
:alt: Downloads
:target: https://pypi.org/project/axju-jokes/
.. image:: https://img.shields.io/pypi/l/axju-jokes
:alt: License
:target: https://pypi.org/project/axju-jokes/
Jokes for python.
I was really sad, no package called joke. So I decided to create one, really
fast. This package have some functions, that return some jokes, quotes or facts.
If you are sad, use the joke packages. :)
Install
::
pip install axju-jokes
Command line
You can exit the function from the command line. There are two entry points:
.. code-block:: shell
$ joke
$ python -m joke
With no arguments, it will return a random joke, quote or fact. You can set one
specifically API. For example some cat facts:
.. code-block:: shell
$ joke cat
Use help to see the possible API's:
.. code-block:: shell
$ joke --help
Examples
Some jokes examples
.. code:: python
from joke.jokes import *
This will import all joke-functions (geek, icanhazdad, chucknorris, icndb)
Now you can use them to get some jokes.
For example you can display 10 Chuck Norris jokes.
for i in range(10):
print(chucknorris())
Or get a random joke-function.
from random import choice
print(choice([geek, icanhazdad, chucknorris, icndb])())
Some quotes examples
.. code:: python
from joke.quotes import *
get a quote from quotesondesign.com
print(quotesondesign())
you can get more then one with one request
for quote in quotesondesign(5):
print(quote)
and you can get the data
data = quotesondesign(format='data')
print(data['quote'])
print(data['author'])
get quote from stormconsultancy.co.uk
print(stormconsultancy())
You can set the ID to get a specific quote
print(stormconsultancy(id=2))
the stormconsultancy-function give you also the data
data =stormconsultancy(id=2, format='data')
print(data['quote'])
print(data['author'])
Check also the example folder.
Import Easter Egg
::
import joke.eggs
Chuck Norris has to register every part of his body as a separate lethal weapon.
His spleen is considered a concealed weapon in over 50 states.
API's
To get the jokes, I use some open API's. If you know some missing API's, please
contact me. Until now, the following API's are used.
Development
Clone repo::
git clone https://github.com/axju/joke.git
Create virtual environment for Linux::
python3 -m venv venv
source venv/bin/activate
Create virtual environment for Windows::
python -m venv venv
.\venv\Scripts\activate
Update dev-tools::
python -m pip install --upgrade wheel pip setuptools twine tox flake8
Install local::
python setup.py develop
Run some tests::
tox
python -m unittest discover
python setup.py test
Publish the packages::
git tag -a 1.0.3 -m '1.0.3'
git push origin 1.0.3
python setup.py --version
python setup.py check
python setup.py sdist bdist_wheel
twine upload dist/*