A simple asynchronous wrapper for the PokeAPI.co API.


Keywords
async, pokemon, asyncio, rest, api, pokeapi, python3
License
MIT
Install
pip install async-pokepy==0.1.5a0

Documentation

Logo async_pokepy

PyPI pyversions PyPI status PyPI license Documentation Status Pipelines Status Build Status CircleCI AppYevorCI

An, in the works, asynchronous wrapper for the PokeAPI.co API.

You can check out the (failing) pipelines @ gitlab.

Documentation

The docs are available @ readthedocs.

Installing

The wrapper is available on PyPi, you can install it with:

pip install async_pokepy

Better caching

It's very recommended to install the library with lru-dict, you can do this by installing the wrapper with this command:

pip install async_pokepy[lru]

The wrapper will throw a warning if you try to use it without this extra package.

Tests and docs

If you also want to be able to run the tests/lint install it with:

pip install async_pokepy[tests]

The best way to run tests is by using tox.

For docs building:

pip install async_pokepy[docs]

Example

import asyncio

import async_pokepy


async def main(query):
    client = await async_pokepy.Client.connect()

    pokemon = await client.get_pokemon(query)

    fmt = ", ".join(map(str, pokemon.abilities))
    print("{0} has the abilities {1}".format(pokemon, fmt))

    await client.close()


loop = asyncio.get_event_loop()
loop.run_until_complete(main("Snorlax"))

This will output: "Snorlax has the abilities Gluttony, Thick Fat, Immunity".

You can check out more examples in the example folder in the github repository or in the introduction section of the docs.