skillfed

PyArabic

Arabic text tools for Python

pyarabic v0.6.15 152.3K downloads/30d#10,905 on PyPI
Copyleft license GPL Abandoned released

What it is and what it does

PyArabic is a specialized library for processing Arabic text in Python. It provides a collection of functions organized into modules—araby.py for general text operations (stripping diacritics, tokenization, character classification), number.py for converting between numerals and Arabic words, and named.py for named-entity recognition. The library works with Unicode-encoded Arabic strings and handles Arabic-specific challenges like ligatures, hamza variants, and diacritical marks (harakat).

The package is designed for developers building Arabic natural language processing pipelines, text normalization workflows, or linguistic analysis tools. It depends only on six and installs with low friction. However, the project is abandoned—the last release was over four years ago—so it receives no maintenance, bug fixes, or updates. It is suitable only for stable use cases where the existing feature set is sufficient.

Use it for:

  • Strip diacritical marks from Arabic text for stemming or lemmatization in search or NLP pipelines.
  • Tokenize Arabic documents into words or sentences for text analysis or corpus processing.
  • Normalize Arabic script variants (hamza, ligatures) to standardize text before comparison or indexing.
  • Convert numeric values to Arabic words or extract numeric phrases from Arabic text for document parsing.
  • Classify and detect Arabic letters and character groups for text validation or linguistic analysis.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

PyArabic provides functions to manipulate Arabic text and letters—detecting character types, removing diacritics, tokenizing into words or sentences, and normalizing Arabic script variants.

Yes, if you need stable Arabic text manipulation and the existing feature set meets your requirements. The low install friction and lack of security vulnerabilities make it safe to use. However, the abandoned maintenance status means no bug fixes or updates will be forthcoming—do not install if you expect ongoing support or compatibility with future Python versions. Suitable for production use only in stable, unchanging workflows.

Install

pyarabic on PyPI

pip

pip install pyarabic

uv

uv add pyarabic

poetry

poetry add pyarabic

Installing PyArabic

Before you install

Install friction is low; the package depends only on six. However, maintenance is abandoned—the last release was 1518 days ago, and no recent commits or updates are evident. Use only if the existing functionality meets your needs without expecting bug fixes or feature additions.

License in practice

PyArabic is licensed under GPL (copyleft). Any derivative work or distribution must also be released under GPL; proprietary or closed-source projects cannot incorporate it without legal risk.

Quickstart

pip install pyarabic

import pyarabic.araby as araby
text = u'السلام عليكم'
stripped = araby.strip_tashkeel(text)

Requires Python with Unicode support (native in Python 3; Python 2 requires proper encoding declarations). Arabic text must be defined with u'' prefix or UTF-8 encoding declaration.

Verify before relying

  • Whether the package works reliably with modern Python versions (3.9+) given its abandoned status.
  • Performance characteristics when processing large Arabic corpora.
  • Compatibility with recent versions of the six dependency.

Package facts

License GPL (copyleft)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — six
Maintenance abandoned — 1,518 days since the last release
First released
Downloads 152,348/month — #10,905 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: PyArabic-0.6.15-py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersNatural Language :: ArabicOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: Text Processing :: Linguistic

Tags

arabic text processingarabic letter classificationremove arabic diacriticsarabic tokenizationarabic string normalizationarabic nlp utilitiesarabic character detection
arabic-nlptext-processingabandoned-but-stable

More Linguistic packages