Skip to main content

A small async api wrapper for the bungie api

Project description

aiobungie open Issue aiobungie Python Version Support aiobungie PyPI last Version aiobungie LICENSE CodeFactor

aiobungie

An Asynchronous statically typed API wrapper for the bungie API written in Python.

Features

  • Fully Asynchronous.
  • Easy to use.
  • Statically typings and annotations.
  • All endpoints will be implemented.

Installing

Official release.

$ pip install aiobungie

Development

$ pip install git+https://github.com/nxtlo/aiobungie

Quick Example

See Examples for more.

import aiobungie

client = aiobungie.Client(key='YOUR_API_KEY')

async def main() -> None:

    # fetch a clan from its id.
    clan = await client.fetch_clan_from_id(1234)
    # or fetch the clan by its name
    clan = await client.fetch_clan("Fast")
    print(f'{clan.id}, {clan.name}, {clan.owner}, {clan.created_at}, {clan.about}')

    # fetch a destiny 2 player.
    player = await client.fetch_player('Fate怒')
    print(f'{player.name}, {player.id[0]}, {player.icon}, {player.type}')

    # fetch a specific character.
    char = await client.fetch_character(player.id[0], aiobungie.MembershipType.STEAM, aiobungie.Class.WARLOCK)
    print(f'{char.emblem}, {char.light}, {char.id}, {char.race}, {char.gender}, {char._class}')

    # fetch activities.
    activ = await client.fetch_activity(player.id[0], char.id, aiobungie.MembershipType.STEAM, aiobungie.GameMode.RAID)
    print(
        f'''{activ.mode}, {activ.kills}, {activ.player_count}, 
        {activ.duration}, {activ.when}, {activ.kd}, {activ.deaths},
        {activ.assists}, {activ.hash} -> raids only {activ.raw_hash} -> Any
        ''')

    # Raw search
    endpoint = await client.from_path('User/.../.../')
    print(endpoint)

client.loop.run_until_complete(main())

Requirements

  • Python >=3.8 -> Required.
  • aiohttp -> Required for http.
  • aredis -> Optional for cache.
  • aiosqlite -> Optional for Manifest db.

Getting Help

  • Discord: Fate 怒#0008 | 350750086357057537
  • Docs: Here.

Project details


Download files

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

Source Distribution

aiobungie-0.2.5b1.tar.gz (25.4 kB view hashes)

Uploaded Source

Built Distribution

aiobungie-0.2.5b1-py3-none-any.whl (51.5 kB view hashes)

Uploaded Python 3

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