Skip to main content

A synchronous, object oritented API wrapper for thecatapi

Project description

cats.py

A synchronous, object oritented API wrapper for thecatapi

Table Of Content

Installation

Clone this repository and install it. You need git installed for this

git clone https://github.com/MarzaElise/cats.py.git
cd cats.py
pip install .

Usage

If you don't already have an API key, get one here

from cats import Client

client = Client(api_key="YOUR API KEY HERE")

breed = client.search_breed("beng")

print(breed)

The above code should print something similar to this

screenshot

Contributing

This module/repository is new and might break at any moment. Which is why all pull requests that bring good changes are welcome.

If you are new to github and wondering how to contribute, click here

If you are confused on what would be a good contribution, take a look at the open issues

FAQ

  1. Are all endpoints supported?

    • All of the endpoints except for images/upload works perfectly as I tested them locally before publishing
    • All breeds/ endpoints might break since the API is constantly adding new properties
  2. Why is utils/_dataclasses.py such a code-gore?

    • Data returned by the API is inconsistent. For example, some properties are sometimes given and sometimes not. To manage that I set them all to None by default
  3. How is this wrapper object oriented?

    • All values returned by each method has its own class (Breed, Vote, Favourite etc)
    • This entire wrapper revolves around dataclasses and subclassing
  4. I found a bug, how do I report?

    • You can contact me on discord at Marcus | Bot Dev#4438
    • If you are not on discord, open a new issue
    • If you also have a fix for it, create a new pull request and I'll merge it if its good. (See Contributing)
  5. Will there be an aync version of this?

    • I currently have no plans to do it in the near future. If you really want an asynchronous wrapper, take a look at catapi.py

License

GNU AGPLv3

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

cats.py-0.0.1-py3.10.egg (17.3 kB view hashes)

Uploaded Source

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