Skip to main content

Python wrapper for Banned.AniParser (NativeAOT C ABI)

Project description

PyAniParser

English | 简体中文

LicensePyPI - VersionDownloadsPyPI - Python Version

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.5.0-py3-none-win_arm64.whl (10.2 kB view details)

Uploaded Python 3Windows ARM64

pyaniparser-0.5.0-py3-none-win_amd64.whl (10.2 kB view details)

Uploaded Python 3Windows x86-64

pyaniparser-0.5.0-py3-none-manylinux_2_17_x86_64.whl (10.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

pyaniparser-0.5.0-py3-none-manylinux_2_17_aarch64.whl (10.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pyaniparser-0.5.0-py3-none-macosx_11_0_arm64.whl (10.2 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

pyaniparser-0.5.0-py3-none-macosx_10_9_x86_64.whl (10.2 kB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: pyaniparser-0.5.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 10.2 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.5.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 651674228a08319c75a286fdf08f4586909511f476eb4fb674452344e2b4490e
MD5 bf97ff3003bad65dc3a6c489c9c65e09
BLAKE2b-256 80b9b830198af1bd57a58f1de24e0fa97c4686060eee15c3e7f699fafb89000d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.5.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.5.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: pyaniparser-0.5.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 10.2 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.5.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 6c9bc39e2e776334e0031887ec8e3226680154c5a2313b2ae38dd14c71a0bc51
MD5 a3294b211972bb43106cb8c2e0a9972f
BLAKE2b-256 c66d60a8daabf2a37b1ba8cc044641239eddff89f935154cc3027a0f796a773d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.5.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.5.0-py3-none-manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.5.0-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 4a6030a4a19148e351184d72d535aaddf42c90d8c650e7bc7deba7141008c5af
MD5 0ab07f315da0b8525c6f815caf66652d
BLAKE2b-256 0a4c6b3399987301094cfff4ad3273e55c8c3e61c770623714de747ef8d15f58

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.5.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.5.0-py3-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.5.0-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 3028407c3c48fa1857cdd96d4a1f29658cc1ccc4f342b38f23a5d1194e364195
MD5 32292d5f779e5fe46b53eb4bfd91966a
BLAKE2b-256 89c25c975e8fdad553e2d30bba5696b5abe141ddd2d9fcba9e75fb1902dce881

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.5.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.5.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.5.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ba978b7468c22af4a6c657b096fecb61836d3f7eea9c75219fc79e5f4fc7fdbd
MD5 6cb7bf63b32a4f9af15dcbc35a805b5f
BLAKE2b-256 cef91dac86c4d27fb8fb1bc4023369a927146c61d78b0995eb9d0a5496971baa

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.5.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.5.0-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyaniparser-0.5.0-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5e46420f8e6fd02e687ab84a3647ed438deb9d198adfa56efdc3e9a57e2fec77
MD5 0cd360a47dcdd82b8a37c59cf40a86fa
BLAKE2b-256 f7301beb57504f427cbbe795872ba3285f4c424385e0d6f900eb9586aece2c30

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyaniparser-0.5.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