Terminal based command line tool for creating Bittorrent files.
Project description
TorrentFile
🌐 Overview
A simple
and convenient
tool for creating, reviewing, editing, and/or
validating bittorrent meta files (aka torrent files). torrentfile
supports all versions of Bittorrent files, including hybrid meta files, and has
full unicode support.
A GUI frontend for this project can be found at https://github.com/alexpdev/TorrentfileQt
🔌 Requirements
- Python 3.6+
- Tested on Linux, Windows and Mac
💻 Install
via PyPi:
pip install torrentfile
via Git:
git clone https://github.com/alexpdev/torrentfile.git
cd torrentfile
pip install .
Download pre-compiled binaries from the release page.
📚 Documentation
Documentation can be found here
or in the docs
directory.
torrentfile is under active development, and is subject to significant changes in the codebase between releases.
🚀 Usage
Usage examples can be found in the project documentation on the examples page.
📝 License
Apache Software License v2.0 - See LICENSE
💡 Issues & Requests & PRs
If you encounter any bugs or would like to request a new feature please open a new issue.
PRs and other contributions are welcome
https://github.com/alexpdev/torrentfile/issues
Usage Examples
Creating Bittorrent Files
Basic torrent file creation is as easy and using the create
sub-commnand and providing
the path to the contents.
torrentfile create /path/to/content
You can add one or more trackers by using any one of -t
, --tracker
, -a
, --announce
flags and listing their URL as a space separated list.
torrentfile create /path/to/content -a http://tracker1.com http://tracker2.net
If you intend to distribute the file on a private tracker then you should use one
of -p
, --private
flags, which tells your Bittorrent clients to disable DHT and
multitracker protocols.
torrentfile create /path/to/content --private
By default torrentfile
displays a progress bar indicating how much of the content
has already been processed. To turn off this display you can either use --quiet
mode in
as a global flag or you can set the --prog
flag to 0.
torrentfile --quiet create /path/to/content
torrentfile create /path/to/content --prog 0
torrentfile
automatically extracts the name of the file or directory
if the content and saves the file to the current working directory with the
extracted title.
For example running the follwing command would create ./content.torrent
.
torrentfile create /path/to/content
To specify an alternative path or filename you may use the -o
, --out
flags
followed by the relative or absolute path to your preferred output location.
torrentfile create /path/to/content -o /some/other/path/torrent.torrent
If the path you specified with the -o
flag already exists and is a directory,
then torrentfile will save the output to that directory with the default extracted title.
For example the following command would create a Bittorrent file at /some/other/path/content.torrent
.
torrentfile create /path/to/content -o /some/other/path/
Bittorrent V1 is still the most common version of torrent files and the most widely accepted,
therefore by default torrentfile uses the version 1 format. However if you are using a modern
Bittorrent client and tracker then you may wish to use the newest version Bittorrent V2 or
a combination of the two. To do this simply use the --meta-version
flag with the appropriate
version. Options include 1
(v1 default), 2
(v2), or 3
(v1 & v2).
torrentfile create /path/to/content --meta-version 2
torrentfile create /path/to/content --meta-version 3
Check/Recheck Torrent
The recheck
subcommand allows you to scan a Bittorrent file and compare it's contents,
against a file or directory containing the contents the torrent file was created from.
The output provided by this process gives a detailed perspective if any files are missing
or have been corrupted in any way. Supports any version of Bittorrent file.
torrentfile recheck /path/to/some.torrent /path/to/content
Edit Torrent
To edit specific fields of the torrent file, there is the edit
subcommand. Using this
subcommand you can specify the field with one of the available field flags, for example
--tracker
and specify the value you wish to change it to.
torrentfile edit /path/to/content --tracker https://new.tracker.url1.com https://newtracker.url/2
You can use the -h
flag for a full list of available fields that can be edited.
torrentfile edit -h
Create Magnet
To create a magnet URI for a pre-existing torrent meta file, use the sub-command
magnet
or m
with the path to the torrent file.
torrentfile magnet /path/to/some.torrent
Interactive Mode (expiremental)
Alternatively to supplying a bunch of command line arguments, interactive mode
allows users to specify program options one at a time from a series of prompts. Use the
-i
or --interactive
flags to activate interactive mode.
torrentfile -i
GUI
If you prefer a windowed GUI please check out the official GUI frontend here
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for torrentfile-0.8.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8392c0f0797c5c076f5e462c2e1dcb6a855271bfeeccb1cbbfedbf176a986d9 |
|
MD5 | 88d75e9dafce0dd8e91dbdaf465e1fee |
|
BLAKE2b-256 | 6e7b7154a1380d8d74f373619d80bb8513de7a140978b90b0b687cc96849f2df |