berserk

Python client for the lichess API


Keywords
berserk
License
GPL-3.0-only
Install
pip install berserk==0.1.2

Documentation

berserk

Documentation Status

Python client for the lichess API

Features

  • handles JSON and PGN formats at user's discretion
  • all endpoints implemented
  • token auth support provided
  • easy integration with oauth2

Usage

You can use any requests.Session-like object as a session, including those from requests_oauth. A simple token session is included, as shown below:

import berserk


session = berserk.TokenSession('token')
lichess = berserk.Client(session)

lichess.account.get()
lichess.account.get_email()
lichess.account.get_preferences()
lichess.account.get_kid_mode()
lichess.account.set_kid_mode()
lichess.account.upgrade_to_bot()

lichess.users.get_realtime_statuses()
lichess.users.get_all_top_10()
lichess.users.get_leaderboard()
lichess.users.get_public_data()
lichess.users.get_activity_feed()
lichess.users.get_by_id()
lichess.users.get_by_team()
lichess.users.get_live_streamers()

lichess.games.export()
lichess.games.export_by_player()
lichess.games.export_multi()
lichess.games.get_among_players()
lichess.games.get_ongoing()
lichess.games.get_tv_channels()

lichess.bots.stream_incoming_events()
lichess.bots.stream_game_state()
lichess.bots.make_move()
lichess.bots.post_message()
lichess.bots.abort_game()
lichess.bots.resign_game()
lichess.bots.accept_challenge()
lichess.bots.decline_challenge()

lichess.tournaments.get()
lichess.tournaments.create()

Details for each function can be found in the full documentation.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.