Skip to main content

Python wrapper for Banned.AniParser (NativeAOT C ABI)

Project description

PyAniParser

English | 简体中文

PyPI - VersionDownloadsPyPI - Python VersionLicense

PyAniParser is a high-performance Python wrapper for Banned.AniParser, designed to parse anime file names. Powered by .NET 10 Native AOT, it provides fast and accurate extraction of metadata (titles, episodes, resolutions, etc.) from complex file naming conventions.

Note: This parser is currently optimized for Chinese fansub naming conventions (e.g., VCB-Studio, Nekomoe, Sakurato).

Features

  • High Performance: Built with .NET Native AOT for speed and efficiency.
  • Robust Parsing: specialized in handling complex naming schemes from various release groups.
  • Batch Processing: Optimized for processing large lists of files.
  • Globalization Support: Built-in Traditional to Simplified Chinese conversion.
  • Type Hinting: Fully typed for better IDE support and development experience.

Installation

pip install pyaniparser

Usage

Basic Usage

from pyaniparser import AniParser

# Initialize the parser
parser = AniParser()

# Parse a single file
result = parser.parse("[Nekomoe] Anime Title - 01 [1080p].mp4")
if result:
    print(f"Title: {result.title}")
    print(f"Episode: {result.episode}")

# Parse a batch of files (Recommended for lists)
files = ["File1.mp4", "File2.mp4"]
results = parser.parse_batch(files)

for item in results:
    print(item.title)

Advanced Configuration (Globalization)

You can configure the parser to automatically convert Traditional Chinese titles to Simplified Chinese (or vice versa) upon initialization:

# Options: "Simplified", "Traditional", or "NotChange" (Default)
parser = AniParser(globalization="Simplified")

result = parser.parse("[Group] 繁體標題 - 01.mp4")
print(result.title) # Output will be converted to Simplified Chinese

Get Supported Groups

You can retrieve the list of currently supported subtitle and release groups programmatically:

parser = AniParser()
groups = parser.get_parser_list()
print(groups)

Supported Groups

PyAniParser includes built-in support for many major groups, including but not limited to:

  • ANi
  • 北宇治字幕组
  • 喵萌奶茶屋
  • 桜都字幕组
  • Vcb-Studio

For a complete list of supported groups, please refer to the Upstream Documentation.

License

This project is licensed under the Apache-2.0 License. See the LICENSE file for details.

Contribution

Issues and Pull Requests are welcome!

Since this is a wrapper, parsing logic issues should be reported to the Core .NET Repository, while Python binding issues can be reported here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyaniparser-0.6.0-py3-none-win_arm64.whl (14.3 kB view details)

Uploaded Python 3Windows ARM64

pyaniparser-0.6.0-py3-none-win_amd64.whl (14.3 kB view details)

Uploaded Python 3Windows x86-64

pyaniparser-0.6.0-py3-none-manylinux_2_17_x86_64.whl (14.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

pyaniparser-0.6.0-py3-none-manylinux_2_17_aarch64.whl (14.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pyaniparser-0.6.0-py3-none-macosx_11_0_arm64.whl (14.2 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

pyaniparser-0.6.0-py3-none-macosx_10_9_x86_64.whl (14.2 kB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file pyaniparser-0.6.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: pyaniparser-0.6.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyaniparser-0.6.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 7bc7ba3b62fda14e5595b5ce088d777433985938eacfaf75704bc127ee5ca10f
MD5 e51e2109a97e479c4e113eaa99f785d3
BLAKE2b-256 df464d83fe9a7ee81f540b0ed123b45fb472252dca9d3c48578a7d79002de014

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.6.0-py3-none-win_arm64.whl:

Publisher: publish.yml on banned2054/PyAniParser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyaniparser-0.6.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: pyaniparser-0.6.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyaniparser-0.6.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 4e71f4050e7bc521edd2106bdb0f121c118371cf282a3f6d3cd6ea46d1424e99
MD5 4812c4caad2c990b83b056cb8f90bb29
BLAKE2b-256 be56c3c93a88281bfd98b3b72fe8a2f087963107c9e0918f3ad9f396caa36a2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.6.0-py3-none-win_amd64.whl:

Publisher: publish.yml on banned2054/PyAniParser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyaniparser-0.6.0-py3-none-manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.6.0-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 407bb234f02369d0ed0ec99b58cd838f42086acb81bf1c49985a183c19ce811e
MD5 6d4d6b16492bb4727b146bc035210aa0
BLAKE2b-256 a34f542fdee0568e83d362d753b60302034a0a02697072ebac8209abc4c0034e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.6.0-py3-none-manylinux_2_17_x86_64.whl:

Publisher: publish.yml on banned2054/PyAniParser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyaniparser-0.6.0-py3-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.6.0-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 e51dc883ffa4e3f9ebd0a65546d31b0f2e645e6b3ad49b4a4a2ba3390419bec5
MD5 326edf4eabb02b9ccf312871f2097fca
BLAKE2b-256 39cea9cca0ed36f547aefe21430c0810033f63249f6da8b4ce234cf58e443e70

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.6.0-py3-none-manylinux_2_17_aarch64.whl:

Publisher: publish.yml on banned2054/PyAniParser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyaniparser-0.6.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.6.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fbea6a044c199e551e9c3dea5f76a4f93d8754dd6e91132bc08c425624abf833
MD5 ad496a580593556923829134c194ba36
BLAKE2b-256 031fff742eeebdfe5b0a6524ca814378e7a3fcc6f66ab54b154b4c97e47dca2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.6.0-py3-none-macosx_11_0_arm64.whl:

Publisher: publish.yml on banned2054/PyAniParser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyaniparser-0.6.0-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.6.0-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 299d254012f84ed8bf493875ce0d8144d30e2d50f236530d5175bf04a15dcfa4
MD5 c1a7d4dd19254e6741f99971470f59de
BLAKE2b-256 f66f5e83e0447eaa710d9e3b59298f98726b9781a81c2d3c8043adf31b5950a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.6.0-py3-none-macosx_10_9_x86_64.whl:

Publisher: publish.yml on banned2054/PyAniParser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page