Open Source Text Processing Tools

Text processing covers methods for transforming, analyzing, and formatting written data. It helps address tasks such as cleaning inconsistent input, detecting character encodings, splitting text into meaningful units, extracting structured information, comparing strings, and converting between formats. These operations support applications ranging from content management and search to language analysis and everyday command-line workflows.

Open source tools in this area include libraries for parsing, segmentation, normalization, markup conversion, and string comparison, as well as utilities for editing text in files or streams. When choosing a tool, consider its license, maintenance activity, documentation, language and runtime requirements, performance, and compatibility with existing systems. These tools are useful for developers, data practitioners, content teams, and anyone building workflows that handle text.

26 repositories · updated October 17, 2026

mistune: Parse Markdown in Python

mistune: Parse Markdown in Python

Mistune is a Python library for converting Markdown to HTML, with configurable renderers and plugins. It suits applications that need Markdown processing in Python and want to extend parsing or output behavior.

ActiveHealth 46/100

PythonMarkdownLibrary
Added Aug 30, 2026 View details
chardet: Detect Text Encodings in Python

chardet: Detect Text Encodings in Python

chardet identifies character encodings in byte data, including through incremental processing of large files and streams. Its Python API and CLI suit applications that need to interpret text of unknown origin, with language and MIME-type information also available.

ActiveHealth 59/100

PythonLibraryDeveloper Tools
Added Aug 2, 2026 View details
fuzzywuzzy: Match Similar Strings in Python

fuzzywuzzy: Match Similar Strings in Python

FuzzyWuzzy helps Python applications compare strings that differ in spelling, formatting, or word order. The repository is archived and points users to its renamed successor, TheFuzz.

ArchivedHealth 34/100

PythonLibraryText Processing
Added Aug 1, 2026 View details
python-Levenshtein: Fast String Distance and Similarity in Python

python-Levenshtein: Fast String Distance and Similarity in Python

A C extension for Python that computes Levenshtein edit distance, string similarity, and related string operations. It suits developers who need these calculations in Python or as a standalone C library, with maintenance and GPL licensing caveats to consider.

InactiveHealth 27/100

PythonLibraryText Processing
Added Aug 1, 2026 View details
pangu.py: Add Spacing Between CJK Text and Latin Characters

pangu.py: Add Spacing Between CJK Text and Latin Characters

pangu.py is a Python library and command-line tool that inserts spaces between Chinese, Japanese, or Korean text and Latin letters, numbers, and symbols. It suits workflows that need consistent mixed-script typography in strings or text files.

ActiveHealth 37/100

PythonLibraryCLI
Added Aug 1, 2026 View details
pyfiglet: Render Text as ASCII Art in Python

pyfiglet: Render Text as ASCII Art in Python

pyfiglet renders text as FIGlet-style ASCII art using Python, either as a library or a command-line tool. It suits Python applications and terminal workflows that need decorative text without invoking an external FIGlet program.

MaintainedHealth 47/100

PythonLibraryCLI
Added Aug 1, 2026 View details
python-pinyin: Convert Chinese Characters to Pinyin

python-pinyin: Convert Chinese Characters to Pinyin

A Python library and command-line tool for converting Chinese characters to pinyin. It handles polyphonic characters, offers multiple pronunciation styles, and can use custom dictionaries to adjust readings.

QuietHealth 25/100

PythonLibraryCLI
Added Aug 1, 2026 View details
awesome-slugify: Create Configurable Slugs from Text

awesome-slugify: Create Configurable Slugs from Text

A Python library for turning text into configurable, readable slugs for URLs, filenames, and other identifiers. It supports transliteration, Unicode-preserving output, custom replacements, and unique slug generation.

InactiveHealth 24/100

PythonLibraryText Processing
Added Jul 31, 2026 View details
python-slugify: Create Unicode-Aware Slugs in Python

python-slugify: Create Unicode-Aware Slugs in Python

python-slugify turns text into URL-style slugs, with options for transliteration, Unicode retention, and output rules. It suits Python applications that need readable identifiers, especially when teams can manage algorithm and backend changes carefully.

ActiveHealth 54/100

PythonLibraryCLI
Added Jul 31, 2026 View details
unicode-slugify: Create Unicode-Aware URL Slugs

unicode-slugify: Create Unicode-Aware URL Slugs

unicode-slugify is a Python library for turning text into URL-friendly slugs while preserving Unicode characters. It also supports ASCII transliteration and configurable character rules for different slug formats.

InactiveHealth 31/100

PythonLibraryText Processing
Added Jul 31, 2026 View details
pyparsing: Build Text Parsers in Python

pyparsing: Build Text Parsers in Python

pyparsing is a Python library for defining parsing-expression grammars directly in code. Use it to turn structured text into accessible parse results without writing a separate grammar file or relying only on regular expressions.

ActiveHealth 45/100

PythonLibraryDeveloper Tools
Added Jul 30, 2026 View details
python-nameparser: Parse Human Names into Components

python-nameparser: Parse Human Names into Components

A Python library that splits human names into structured fields such as given name, family name, title, suffix, and nickname. It suits applications that need to organize, format, or compare names while accounting for varied naming conventions.

ActiveHealth 70/100

PythonLibraryText Processing
Added Jul 30, 2026 View details
Previous Page 1 Next

Related topics