Library for parsing and manipulating PGN format files.
Project description
PyPGN
A pure Python 3 library to simplify parsing and manipulation of PGN (Portable Game Notation) format files, which are often used for serializing games such as chess.
Prerequisites
Python version 3.x >= 3.6 and PiP
Install
Install or upgrade with PiP
$ pip install pypgn
You can also install from source:
git clone https://github.com/DaniruKun/pypgn.git
cd pypgn
python setup.py install
Examples
from pypgn.game import Game
# Importing game from file on disk
chess_game = Game('test.pgn')
# Import game from Lichess
chess_game.pgn('dGm3ND39')
print(chess_game.tag('Event'))
print(chess_game.result())
# Print opening ply for white
print(chess_game.ply(1, 'w'))
Output:
$ Rated Blitz game
$ 0-1
$ e4
Read the docs
Contributing
Local setup
Setup a virtual environment with virtualenv
$ virtualenv venv
$ source venv/bin/activate
Install requirements
$ make install
Run unit tests locally with pytest
$ make test
Run flake8 lint with
$ make lint
Docker
You can also build and run tests in a Docker container:
$ make docker-build
$ make docker-run
Authors
@DaniruKun aka Daniils Petrovs
License
Mozilla Public License 2.0 see LICENSE for more details.
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 pypgn-0.5.1.tar.gz.
File metadata
- Download URL: pypgn-0.5.1.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.40.1 CPython/3.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
def0fe8734f82f8660cd82d59a8d956cd4bcadac8703d163bc84b48dca821db9
|
|
| MD5 |
1e7d28d32f839c3cf04696c8580ce264
|
|
| BLAKE2b-256 |
fb5adc708b76f6ac84b776017c26a9f93d6bbc008dbad1f75a5dc553547f0c0f
|
File details
Details for the file pypgn-0.5.1-py3-none-any.whl.
File metadata
- Download URL: pypgn-0.5.1-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.40.1 CPython/3.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
047e1bccd99883d037851004890f7fa9c6630412d888faa5d546b64e50026a2d
|
|
| MD5 |
791031e50109f424d9b5406475196f1e
|
|
| BLAKE2b-256 |
a22fed076297301e1e4b5389e89d3e90f962c8c0d9377df8dfcce9fc85a84edb
|