|Ned Batchelder : Blog | Code | Text | Site|
Python parsing tools
» Home : Text
Created 30 September 2004, last updated 29 December 2012
NOTE: I am no longer updating this page. Michael Bernstein has a copy at Python Parsing Tools that will be easier to keep up-to-date. The python.org wiki also has a page called LanguageParsing.
A few years ago, I went looking for Python parsing tools. I spent a long time researching the various options. When I was done, I had a cheat sheet on the different alternatives. This is that cheat sheet, cleaned up a bit. It is very spotty. Because this is a compilation of factoids freely available on the web, it is in the public domain.
The tools are presented here in random order. I tried organizing them, but I couldn't find a scheme that seemed to help. Some points of comparison:
Simple Top-Down Parsing in Python
Pysec: Monadic Combinatoric Parsing in Python (aka Parsec in Python)
DParser for Python
Toy Parser Generator
Bison In A Box
The Python standard library includes a few modules for special-purpose parsing problems. These are not general-purpose parsers, but don't overlook them. If your need overlaps with their capabilities, they're perfect:
The contents of this page are in the public domain.