TorrentFile

torrentfile


Codacy Badge Codacy Badge GitHub repo size GitHub License PyPI - Downloads CI DeepSource

:globe_with_meridians: Overview

A simple and convenient tool for creating, reviewing, editing, and/or
checking/validating bittorrent meta files (aka torrent files). torrentfile
supports all versions of Bittorrent files, including hybrid meta files.

A GUI frontend for this project can be found at https://github.com/alexpdev/TorrentfileQt

:white_check_mark: Requirements

:package: Install

via PyPi:

pip install torrentfile

via Git:

git clone https://github.com/alexpdev/torrentfile.git
python setup.py install

Download pre-compiled binaries from the release page.

:scroll: Documentation

Documentation can be found here or in the docs directory.

:rocket: Usage

torrentfile [-h] [-i] [-V] [-v]  ...

Sub-Commands:

    create           Create a new torrent file.
    check            Check if file/folder contents match a torrent file.
    edit             Edit a pre-existing torrent file.
    magnet           Create Magnet URI for an existing torrent meta file.

optional arguments:
  -h, --help         show this help message and exit
  -V, --version      show program version and exit
  -i, --interactive  select program options interactively
  -v, --verbose      output debug information

Usage examples can be found in the project documentation on the examples page.

!!! torrentfile is under active development, and is subject to significant changes in
it's codebase between releases.

:memo: License

Distributed under the GNU LGPL v3. See LICENSE for more information.

:bug: Issues

If you encounter any bugs or would like to request a new feature please open a new issue.

https://github.com/alexpdev/torrentfile/issues


CLI Usage Examples

Examples using TorrentFile with CLI arguments can be found below. Alternatively, interactive mode allows program options to be specified one option at a time from a series of prompts using the following commands.

torrentfile -i or torrentfile --interactive

Creating Torrents

Using the sub-command create TorrentFile can create a new torrent from the contents of a file or directory path. The following examples illustrate some of the options available for creating torrent files.

> torrentfile create /path/to/content
> torrentfile create /path/to/content --tracker http://tracker1.com
> torrentfile create /other/content -t http://tracker2 http://tracker3
> torrentfile create ./content --source SrcStr --private
> torrentfile create -o /specific/path/name.torrent ./content
> torrentfile create --meta-version 2 /path/to/content
> torrentfile create --meta-version 3 /path/to/content
> torrentfile create --t https://tracker1/annc https://tracker2/annc --magnet /path/to/content

Check/Recheck Torrents

Using the sub-command recheck or check or r you can check how much of a torrent's data you have available by comparing the contetnts to the original torrent meta file.

> torrentfile recheck /path/to/name.torrent ./downloads/name

Edit Torrents

Using the sub-command edit or e enables editting a pre-existing torrent file. The edit sub-command works identically to the create sub-command and accepts many of the same arguments.

Create Magnet

To create a magnet URI for a pre-existing torrent meta file, use the sub-command
magnet with the path to the meta file.

> torrentfile magnet /path/to/metafile