Easy to use API wrapper for osu!api v2 written in Python. Has a high-level interface while still allowing ways to do more complex things.
- Python 3.8+
- Client class that supports all endpoints
AsynchronousClient
for async requests- Supports Authorization Code Grant, Client Credentials Grant, and all scopes (except lazer)
- Builtin rate limit handling and ability to tweak it
- Storage-efficient objects
- Refresh and access tokens are automatically managed
- Quality of life functions, enums, and designs
- Extensive documentation
# Installs the latest version out on pypi
# Linux/macOS
python3 -m pip install -U osu.py
# Windows
py -3 -m pip install -U osu.py
# Installing straight from github (downloads latest code, which is not guaranteed to be stable)
py -m pip install git+https://github.com/Sheepposu/osu.py.git
# Install with asynchronous client
py -m pip install -U osu.py[async]
# Install with all features
py -m pip install -U osu.py[async,replay,notifications]
# Install from github with features
git clone https://github.com/sheppsu/osu.py
cd osu.py
py -m pip install -U .[async,replay,notifications]
from osu import Client, GameModeStr
client = Client.from_credentials(0, "*****", None)
user = client.get_user(14895608, GameModeStr.STANDARD)
print(user)