Skip to content

A simple Python API wrapper to use the Lichess API.

License

Notifications You must be signed in to change notification settings

eskopp/lichesspy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A client for the lichess.org API

This is a client library for the Lichess API. It is designed to be:

  • Easy to use

  • Customizable when you need it

  • Adaptable to API changes

Getting a user's rating:

>>> import lichesspy.api
>>>
>>> user = lichesspy.api.user('thibault')
>>> print(user['perfs']['blitz']['rating'])
1617

Checking who's online and playing:

>>> import lichesspy.api
>>>
>>> users = list(lichesspy.api.users_status(['thibault', 'cyanfish']))
>>> online = [u['id'] for u in users if u.get('online', False)]
>>> playing = [u['id'] for u in users if u.get('playing', False)]
>>> print(online, playing)
['thibault', 'cyanfish'] ['cyanfish']

Saving a PGN of a user's last 200 games:

>>> import lichesspy.api
>>> from lichesspy.format import SINGLE_PGN
>>>
>>> pgn = lichesspy.api.user_games('thibault', max=200, format=SINGLE_PGN)
>>> with open('last200.pgn', 'w') as f:
>>>    f.write(pgn)

Integrating with lichesspy:

>>> import lichesspy.api
>>> from lichesspy.format import PYCHESS
>>>
>>> game = lichesspy.api.game('Qa7FJNk2', format=PYCHESS)
>>> print(game.end().board())
. . k . R b r .
. p p r . N p .
p . . . . . . p
. . . . . . . .
. . . p . . . .
P . . P . . . P
. P P . . P P .
. . K R . . . .

Installing

pip install lichesspy

Farewell