Python 3 interface library for the Mhanndalorianbot authenticated endpoints API
Project description
Mhanndalorian_Bot
Mhanndalorian_Bot is a Python library for interacting with the SWGOH Mhanndalorian Bot authenticated API and Player Registry endpoints.
See https://mhanndalorianbot.work/api.html for more details
Installation
Use the Python package manager pip to install Mhanndalorian_Bot.
pip install mhanndalorian-bot
Usage
Before accessing the Mhanndalorian Bot APIs you must first register for an apikey. Instructions for generating an apikey can be found here.
Basic Usage
Authenticated API Endpoint Interaction
from mhanndalorian_bot import API, EndPoint
mbot = API(api_key=<YOUR APIKEY>, allycode=<YOUR ALLYCODE>)
resp = mbot.fetch_data(endpoint=EndPoint.INVENTORY)
Player Registry Interaction
from mhanndalorian_bot import Registry
mbot = Registry(api_key=<YOUR APIKEY>, allycode=<YOUR ALLYCODE>, discord_id=<YOUR DISCORD USER ID>)
resp = mbot.fetch_player(allycode=<PLAYER ALLYCODE>)
Advanced Usage
mhanndalorian_bot includes async methods in both the API and Registry modules. These are provided to facilitate
usage within
Python scripts that may primarily make use of the asyncio (or equivalent) module, such as Discord bots. Since the
Mhanndalorian
web services/APIs deal with SWGOH player registration and data access, it is likely that the primary consumers of those
services
will be bots.
Authenticated API Endpoint Interaction
import asyncio
from mhanndalorian_bot import API, EndPoint
async def main():
mbot = API(api_key="super_secret_test_key", allycode="123456789")
fetch_data_resp = await mbot.fetch_data_async(EndPoint.INVENTORY)
if isinstance(fetch_data_resp, dict):
if 'msg' in fetch_data_resp:
# An unexpected error occurred
print(f"An unexpected error occurred: {fetch_data_resp}")
elif 'inventory' in fetch_data_resp:
material: list = fetch_data_resp['inventory']['material']
currency: list = fetch_data_resp['inventory']['currencyItem']
equipment: list = fetch_data_resp['inventory']['equipment']
unequipped_mods: list = fetch_data_resp['inventory']['unequippedMod']
else:
raise RuntimeError("Not sure what happened.")
if __name__ == '__main__':
asyncio.run(main())
Player Registry Interaction
import asyncio
from mhanndalorian_bot import Registry
async def main():
reg = Registry(api_key=<YOUR API KEY>, allycode=<YOUR ALLYCODE>, discord_id=<YOUR DISCORD USER ID>)
# Returns 'None' if player does not exist in the registry
fetch_resp = await reg.fetch_player_async(allycode)
if isinstance(fetch_resp, dict):
if 'msg' in fetch_resp:
# An unexpected error occurred
print(f"An unexpected error occurred: {fetch_resp}")
else:
player_allycode = fetch_resp['allyCode']
player_discord_id = fetch_resp['discordId']
if __name__ == '__main__':
asyncio.run(main())
More information can be found on GitHub
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mhanndalorian_bot-0.4.0.tar.gz.
File metadata
- Download URL: mhanndalorian_bot-0.4.0.tar.gz
- Upload date:
- Size: 2.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07f24a5e216c237281e7647d22dfd63cba95ef6fa5ff828d778f30a8ee467c0e
|
|
| MD5 |
a911178563166d831e37c2de1f4d0a9e
|
|
| BLAKE2b-256 |
f74ad528071b2634fc365dedefd55b266890ec65812dd10f58adae7c1413f2fe
|
File details
Details for the file mhanndalorian_bot-0.4.0-py3-none-any.whl.
File metadata
- Download URL: mhanndalorian_bot-0.4.0-py3-none-any.whl
- Upload date:
- Size: 3.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
256d1f8e39cb8a212eb7d5aeb6ec9ed8e916521babe9ecdac127776f5aee5f10
|
|
| MD5 |
9475b59f28a56c31f9256585efdccbc3
|
|
| BLAKE2b-256 |
ee2bb52a8c8ed89beff30941d350dab491848aec52da674c67c5c7f5a9234157
|