Skip to main content

.torrent file parsing and creation with pydantic

Project description

torrent-models

docs

.torrent file parsing and creation with pydantic (and models for other bittorrent things too)

While there are many other torrent packages, this one:

  • Is simple and focused
  • Can create and parse v1, v2, hybrid, and other BEPs
  • Is focused on library usage (but does cli things too)
  • Validates torrent files (e.g. when accepting them as user input!)
  • Treats .torrent files as an extensible rather than fixed format
  • Is performant! (and asyncio compatible when hashing!)
  • Uses python typing and is mypy friendly

~ alpha software primarily intended for use with sciop ~

See also

These are also good projects, and probably more battle tested (but we don't know them well and can't vouch for their use):

Specifically

  • torf has some notable performance problems, and doesn't support v2
  • torrentfile is focused on the cli and doesn't appear to be able to validate torrent files, and there is no dedicated method for parsing them, e.g. editing directly manipulates the bencoded dict and rebuilding requires the files to be present
  • dottorrent can only write, not parse torrent files.
  • torrenttool doesn't validate torrents
  • PyBitTorrent doesn't validate torrents
  • torrent_parser doesn't validate torrents and doesn't have a torrent file class

Project details


Download files

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

Source Distribution

torrent_models-0.2.0.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

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

torrent_models-0.2.0-py3-none-any.whl (46.6 kB view details)

Uploaded Python 3

File details

Details for the file torrent_models-0.2.0.tar.gz.

File metadata

  • Download URL: torrent_models-0.2.0.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.25.4 CPython/3.13.1 Darwin/23.3.0

File hashes

Hashes for torrent_models-0.2.0.tar.gz
Algorithm Hash digest
SHA256 5eda31a1b362b2c5b8b1e70d3bea45786eac39c1ebe9d3df8f8db2ae1a0f449e
MD5 5b4e103501289776fe4347e729b849c1
BLAKE2b-256 1608b92aa48018f019fe34de519352e2977a647a2d1efea329effbc922baa36e

See more details on using hashes here.

File details

Details for the file torrent_models-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: torrent_models-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 46.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.25.4 CPython/3.13.1 Darwin/23.3.0

File hashes

Hashes for torrent_models-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 19fb91d59530ecb0afd96f4ce20fbbaae0f2e0fb385ff05df5c424e127566b15
MD5 722828baacff54f875c230ac39cf957b
BLAKE2b-256 17a521c7684136b4f4de7735365f5fece4a8da1ce9f741ecd38506c714407321

See more details on using hashes here.

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