Skip to main content

Documentation Status Build Status Codecov Downloads

Parsy is an easy and elegant way to parse text in Python by combining small parsers into complex, larger parsers. If it means anything to you, it’s a monadic parser combinator library for LL(infinity) grammars in the spirit of Parsec, Parsnip, and Parsimmon. But don’t worry, it has really good documentation and it doesn’t say things like that!

For a good example of the kind of clear, declarative code you can create using parsy, see the SQL SELECT statement example or JSON parser.

The project:

  • has zero dependencies outside stdlib.

  • is highly mature and stable, with few-to-none backwards incompatibilities over the past 10 years.

  • is essentially complete, with no rewrites planned. Widely useful improvements that don’t break compatibility will still be considered, however.

  • is implemented in a single module with less than 800LOC, which you could vendor easily if required.

Links:

To contribute, please create a fork and submit a pull request on GitHub, after checking the contributing section of the docs. Thanks!

If you like parsy and think it should be better known, you could:

  • Star this project on GitHub.

  • Vote for it being included on awesome-python.

Parsy was originally written by Jeanine Adkisson, with contributions by other people as can be found in the git commit history.

Release files for parsy 2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for parsy 2.2
File Size Uploaded
parsy-2.2.tar.gz 47.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for parsy 2.2
File Interpreter ABI Platform
parsy-2.2-py3-none-any.whl Python 3 none any Details

Total release size: 56.8 kB

Release files / parsy-2.2.tar.gz

Download URL parsy-2.2.tar.gz
Size 47.3 kB
Tags Source
SHA-256 checksum
How to use checksums
e943147644a8cf0d82d1bcb5c5867dd517495254cea3e3eb058b1e421cb7561f
BLAKE2b-256 checksum
How to use checksums
cc581e3f382eef9e50a2a115486b0c178d22bb97d2fbb85421ccbe5d3a783530
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.22

Release files / parsy-2.2-py3-none-any.whl

Download URL parsy-2.2-py3-none-any.whl
Size 9.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e981613d9d2d8b68012d1dd0afe928967bea2e4eefdb76c2f545af0dd02a9e7
BLAKE2b-256 checksum
How to use checksums
77fc8cb9073bb1bee54eb49a1ae501a36402d01763812962ac811cdc1c81a9d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.22

Release history Release notifications | RSS feed

This release

2.2 This release

2 release files

2.1

2 release files

2.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.9.0

2 release files

0.0.4

1 release file

0.0.3

0.0.2

0.0.1

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page