Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
Paul McGuire edited this pageJun 23, 2025 ·56 revisions

Welcome to the pyparsing wiki!

I started writing pyparsing in 2003, about a year after starting to learn Python. This followed on the heels of many years of programming in many different programming languages, and a long interest in text processing and parsing. Combined with a fear/dismay at using regular expressions, I wanted an object-assembly model for building up parsers. Since then, tools of this style have come to be called PEG's, orParsing Expression Grammars. I also related to Python's operator overloading features, and so pyparsing has become an embedded DSL within Python, making heavy use of operators for grammar construction and call syntax for grammar element naming.

Discussion

You can read and post comments, links, questions, and suggestions (and brag on your own cool parser projects) by posting to the pyparsing sub-reddit -r/pyparsing.

Who's Using Pyparsing

  • setuptools - parser for cracking various version dependency strings
  • matplotlib - TeX parser in mathtext
  • pySigma - parser/evaluator of boolean condition expressions (used in Homebrew)GitHub repo
  • dbus-signature-parsing - parsing DBUS method signaturesGitHub repo
  • Open vSwitch - filter expression parser for virtual network switch configurationwebsite,GitHub repo
  • pydot - parser of Graphviz DOT language
  • poetry - parsing requirement and marker strings
  • moto - mocking package for AWS boto; parser for database partition expressionsGitHub repo
  • great-expectations - parser to evaluate embedded expressionsGitHub repo
  • holoviews - parser for embedded DSL for "magic" line commandsGitHub repo
  • httplib2 - parser for auth headersGitHub repo
  • godot_parser - parser of Godot game engine scene (.tscn) and resource (.tres) filesGitHub repo
  • zhpy - interpreter pre-processor to convert Chinese keywords into Python EnglishGitHub repo
  • whoosh - search library using pyparsing as a search query parser (whoosh has migrated from pyparsing to its own bespoke parser)
  • Microsoft Guidance- parser for template markup for automating interactions with Large Language ModelsGitHub repo
  • TScript (Pinterest) - internal DSL for querying and alerting on observability time series dataarticle (Medium)
  • handcalcs - library to render Python calculation code automatically in Latex, especially useful in Jupyter NotebooksGitHub repo
  • graphql-python - experimental parser of the GraphQL languageGitHub repo
  • pingparsing - parser forping command on various OSGitHub repo
  • PyContracts - parser of parameter preconditions (a='int,>0')GitHub repo
  • ViperMonkey - a VBA parser and emulation engine to analyze malicious macros
  • bob - BobBuildTool - parser of build commandsGitHub repo
  • Crumble - automation scripting language -Redfern Electronics
  • avimigrationtools - VMware conversion utility for AVI Load Balancerdocspypi
  • RoboComp - open source robotics frameworkGitHub repo
  • ioc_finder - utility for finding IOC's (indicators of compromise) in bodies of textGitHub repo
  • periodictable - library for working with chemical and molecular properties and formulasGitHub repo
  • pyparsing_helper - GUI for experimenting and testing your pyparsing parsersGitHub repo; fromCatherine Devlin's original blog post, saved to GitHub by techtonik
  • Parametric_Curve_FP - parses mathematical expressions to visualize resulting curvesGitHub repo
  • plaso - timeline data aggregator (Super Timeline All The Things)GitHub repro
  • copybook - parser for VSAM copybooksGitHub repo
  • pccc (Python Conventional Commit Checker) - parser/validator of commit messages per theConventional Commits specification -GitHub repo
  • ProDy - Protein Dynamics and Sequence Analysis - parser of a sophisticated atom selection grammar. "This makes every user a power user by enabling fast access to and easy handling of atomic data via simple selection statements." (http://prody.csb.pitt.edu/index.html)
  • classad - parser of ClassAd syntax for HTCondorGitHub repo /language specification
  • ddlparse - parser for SQL DDL CREATE TABLE statementsGitHub repo
  • undebt - code refactoring and cleanup utility, developed byYelp Engineering
  • recurser - interactive web demo to illustrate principles of recursion; implements a simple language for user-input recursive codeGitHub repo
  • nginxparser - an nginx configuration parserGitHub repo
  • pyparsing-highlighting - alternative to Pygments using pyparsing parsersGitHub repo
  • ezdxf - DXF document parser (https://ezdxf.mozman.at/)

Seethis list at libraries.io.

Notable Projects

See thisarticle on discriminatory insurance pricing, supported bythis data analysis of submitted documents using pyparsing to extract several megabytes of data from the PDFs submitted by Allstate Insurance.

Also, there isthis fascinating SlideShare presentation on how pyparsing was used to decipher obfuscated flight plans in tracking down international arms dealer Viktor Bout!

Enterprise Support

Pyparsing is freely available under the MIT License. pyparsing is now included as part of the Tidelift Subscription. Get commercial maintenance and assurances, while supporting my work. More info atTidelift.com

Clone this wiki locally


[8]ページ先頭

©2009-2025 Movatter.jp