Python Library for Blizzard's Community Platform API
- Pythonic
- Unicode normalization
- Lazyloading and eagerloading
- Support locales (en, fr, de, ...)
Global connection settings can be setup so that objects can make connections implicitly.
from battlenet import Connection Connection.setup(public_key='your public key', private_key='your private key', locale='fr')
You can also create connections explicitly.
from battlenet import Connection connection = Connection(public_key='your public key', private_key='your private key', locale='fr')
from battlenet import Realm # If a global connection was setup realm = Realm(battlenet.UNITED_STATES, 'Nazjatar') # Using a specific connection realm = connection.get_realm(battlenet.UNITED_STATES, 'Nazjatar') print realm.name # => Nazjatar print realm.is_online() # => true print realm.type # => PVP
for realm in connection.get_all_realms(battlenet.UNITED_STATES): print realm
from battlenet import Character # If a global connection was setup character = Character(battlenet.UNITED_STATES, 'Nazjatar', 'Vishnevskiy', fields=[Character.GUILD]) # Using a specific connection character = connection.get_character(battlenet.UNITED_STATES, 'Nazjatar', 'Vishnevskiy', fields=[Character.GUILD]) print character.name # => Vishnevskiy print character.guild.name # => Excellence
from battlenet import Guild # If a global connection was setup guild = Guild(battlenet.UNITED_STATES, 'Nazjatar', 'Excellence') # Using a specific connection guild = connection.get_guild(battlenet.UNITED_STATES, 'Nazjatar', 'Excellence') print guild.name # => Excellence leader = guild.get_leader() print leader.name # => Clí
Read the unit tests inside the tests directory.