Skip to content

wastaken7/Upload-Assistant

 
 

Repository files navigation

NOTE:

  • This project is in development freeze. Only critical bugs will be addressed moving forward.
  • More details on the future of Upload Assistant will be available at a later date.
  • Thanks to all who have contributed to this project, to everyone who has used Upload Assistant and everyone who has shared this project for the benefit of others.
  • A special thankyou to all of the site staffers who have shown great patience and understanding, during the development of Upload Assistant. Each and everyone one of you, who fixed issues, and quietly addressed those same issues with me. I can't emphasize enough how that has allowed me to focus entirely on fixing the issues code side, and the boost to motivation that it gave.
  • To those of you who I will not name, working in tandem to bring new features to the ecosystem, you rock.
  • Specifically, to everyone at Aither. You're unwavering support has been truly appreciated.
  • Last but certainly not least, a huge thanks to @wastaken7, who contributed greatly to the success of Upload Assistant. Not only did wasteken7 being a whole suite of new site support, but he persistently maintained all of those sites. The sheer amount of refactoring work on the codebase, to increase the ease of development cannot be overstated.
  • Upload Assistant is not dead. I look forward to sharing a new chapter in the future.

Create and publish a Docker image Python Code Analysis Python Security: Bandit Security: Safety Lint: Ruff Type Checker: Pyright

Discord support https://discord.gg/QHHAZu7e2A

Upload Assistant

Important

This is a modified version of the Upload Assistant project and is not affiliated with or endorsed by Audionut.

A simple tool to take the work out of uploading.

This project is a fork of the original work of L4G https://github.com/L4GSP1KE/Upload-Assistant Immense thanks to him for establishing this project. Without his (and supporters) time and effort, this fork would not be a thing. Many thanks to all who have contributed.

What It Can Do:

  • Generates and Parses MediaInfo/BDInfo.
  • Generates and Uploads screenshots. HDR tonemapping if config.
  • Uses srrdb to fix scene names used at sites.
  • Can grab descriptions from PTP/BLU/Aither/LST/OE/BHD (with config option automatically on filename match, or using arg).
  • Can strip and use existing screenshots from descriptions to skip screenshot generation and uploading.
  • Obtains TMDb/IMDb/MAL/TVDB/TVMAZE identifiers.
  • Converts absolute to season episode numbering for Anime. Non-Anime support with TVDB credentials
  • Generates custom .torrents without useless top level folders/nfos.
  • Can re-use existing torrents instead of hashing new.
  • Can automagically search qBitTorrent version 5+ clients for matching existing torrent.
  • Includes support for qui
  • Generates proper name for your upload using Mediainfo/BDInfo and TMDb/IMDb conforming to site rules.
  • Checks for existing releases already on site.
  • Adds to your client with fast resume, seeding instantly (rtorrent/qbittorrent/deluge/watch folder).
  • ALL WITH MINIMAL INPUT!
  • Currently works with .mkv/.mp4/Blu-ray/DVD/HD-DVDs.

Supported Sites:

Name Acronym Name Acronym
Aither AITHER Luminarr LUME
Alpharatio AR MoreThanTV MTV
Amigos-Share ASC M-Team MTEAM
Anthelion ANT Nebulance NBL
AsianCinema ACM OldToonsWorld OTW
Aura4K A4K OnlyEncodes+ OE
AvistaZ AZ PassThePopcorn PTP
Beyond-HD BHD PolishTorrent PTT
BitHDTV BHDTV Portugas PT
Blutopia BLU PrivateHD PHD
BrasilJapão-Share BJS PT GTK PTGTK
BrasilTracker BT ptcafe PTCAFE
CapybaraBR CBR PTerClub PTER
Cinematik TIK PTFans PTFANS
CinemaZ CZ PTSKIT PTS
DarkPeers DP Racing4Everyone R4E
DesiTorrents DT RailgunPT RPT
DigitalCore DC Rastastugan RAS
Emuwarez EMUW ReelFLiX RF
FearNoPeer FNP RetroFlix RTF
FileList FL Samaritano SAM
Friki FRIKI seedpool SP
FunFile FF ShareIsland SHRI
GreatPosterWall GPW SkipTheCommerials STC
hawke-uno HUNO SpeedApp SPD
HDBits HDB Swarmazon SN
HD-Space HDS The Leach Zone TLZ
HD-Torrents HDT TheOldSchool TOS
HomieHelpDesk HHD Torrenteros TTR
ImmortalSeed IS TorrentHR THR
InfinityHD IHD TorrentLeech TL
ItaTorrents ITT ToTheGlory TTG
lajidui LAJIDUI TVChaosUK TVC
LastDigitalUnderground LDU ULCX ULCX
Lat-Team LT UTOPIA UTP
Locadora LCD YOiNKED YOINK
LongPT LPT YUSCENE YUS
LST LST

Setup:

  • REQUIRES AT LEAST PYTHON 3.9 AND PIP3
  • Also needs MediaInfo and ffmpeg installed on your system
  • Get the source:
    • Clone the repo to your system git clone https://github.com/Audionut/Upload-Assistant.git
    • Fetch all of the release tags git fetch --all --tags
    • Check out the specifc release: see releases
    • git checkout tags/tagname where tagname is the release name, eg v5.0.0
    • or download a zip of the source from the releases page and create/overwrite a local copy.
  • Install necessary python modules pip3 install --user -U -r requirements.txt
    • sudo apt install pip if needed
  • If you receive an error about externally managed environment, or otherwise wish to keep UA python separate:
    • Install virtual python environment python3 -m venv venv
    • Activate the virtual environment source venv/bin/activate
    • Then install the requirements pip install -r requirements.txt
  • From the installation directory, run python3 config-generator.py
  • OR
  • Copy data/example-config.py to data/config.py, leaving data/example-config.py intact.
  • NOTE: New users who use the webui will have the config file generated automatically.
  • Edit config.py to use your information (more detailed information in example config options: docs/example-config.md)

Additional Resources are found in the wiki

Feel free to contact me if you need help, I'm not that hard to find.

Updating:

  • To update first navigate into the Upload-Assistant directory: cd Upload-Assistant
  • git fetch --all --tags
  • git checkout tags/tagname
  • Or download a fresh zip from the releases page and overwrite existing files
  • Run python3 -m pip install --user -U -r requirements.txt to ensure dependencies are up to date
  • Run python3 config-generator.py and select to grab new UA config options.

CLI Usage:

python3 upload.py "/path/to/content" --args

Args are OPTIONAL and ALWAYS follow path, for a list of acceptable args, pass --help. Path works best in quotes.

Docker Usage:

Visit our wonderful docker usage

Also see this excellent video put together by a community member https://videos.badkitty.zone/ua

Web UI setup (Docker GUI / Unraid): docs/docker-gui-wiki-full.md Web UI docs: docs/web-ui.md

Attributions:

Built with updated BDInfoCLI from https://github.com/rokibhasansagar/BDInfoCLI-ng

mkbrr   qui   FFmpeg   Mediainfo   TMDb   IMDb   TheTVDB   TVmaze

About

A fork of L4G attempting to keep updated

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 93.8%
  • JavaScript 5.6%
  • Other 0.6%