Skip to content

PtpUploader is a bot that automatically uploads releases to PTP.

Notifications You must be signed in to change notification settings

kannibalox/PtpUploader

Repository files navigation

PtpUploader

A small uploader for a mildly popular movie site.

About

With PtpUploader's WebUI you can upload to PTP by specifying a torrent and an IMDb or PTP link. The torrent can be a local path, a link to another site, or a literal .torrent file.

There is also an automatic mode built-in that can check announcements from IRC or RSS and upload everything (semi-)automatically.

It is still solely your responsibility to make sure anything you upload has correct information and is allowed under the rules.

Getting started

Manual

  1. Install required dependencies. This is example is for Ubuntu, the exact command/package names may change depending on your distro:
sudo apt install python3 mpv imagemagick mediainfo
  1. Install the python package:
## Using a dedicated virtualenv is optional but highly recommended
# sudo apt install python3-venv
# virtualenv ~/.venv/ptpuploader/
# source ~/.venv/ptpuploader/bin/activate
pip3 install PtpUploader
  1. Create the config file:
mkdir -pv ~/.config/ptpuploader/
wget https://raw.githubusercontent.com/kannibalox/PtpUploader/main/src/PtpUploader/config.default.yml -O ~/.config/ptpuploader/config.yml
nano ~/.config/ptpuploader/config.yml # Edit config file as needed
  1. Start the process:
PtpUploader runuploader
  1. Add an admin user:
PtpUploader createsuperuser
  1. Navigate to http://localhost:8000/jobs and enter the admin credentials.

Docker

  1. Clone the repo
git clone https://github.com/kannibalox/PtpUploader.git
cd PtpUploader/
  1. Create the config file
mkdir -pv ~/.config/ptpuploader/
wget https://raw.githubusercontent.com/kannibalox/PtpUploader/main/src/PtpUploader/config.default.yml -O ~/.config/ptpuploader/config.yml
nano ~/.config/ptpuploader/config.yml # Edit config file as needed

When running in docker, be sure to enter the address to rTorrent's SCGI port (not a ruTorrent port). 2. Build the image and start the daemon in the background

sudo docker build -t ptpuploader .
sudo docker run --name ptpuploader -d \
    -v YOUR_WORK_DIR:YOUR_WORK_DIR \ # modify to match your work_dir in config.yml
    -v $HOME/.config/ptpuploader/:/root/.config/ptpuploader/
    -p 8000:8000 ptpuploader
  1. Add an admin user.
sudo docker exec -it ptpuploader PtpUploader createsuperuser
  1. Navigate to http://localhost:8000/jobs and enter the admin credentials.

Next Steps and Help

See INSTALL.md and the comments in the config file for advanced usage instructions.

Support is provided on PTP or in Github issues.

Changelog

Many things have changed in preparation for version 1.0. Most importantly, only python 3.7+ is supported.

Non-exhaustive list of other changes:

  • Reduce login sessions by write to a cookie file
  • Update UI with new theme
  • Allow viewing screenshots in edit page
  • Add uploads in bulk
  • Prowlarr integration