midgetspy / Lift-Cup

Automated usenet upload script

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What is Lift Cup?
==================
Lift Cup is a python script that automatically uploads video files to usenet for you. The most common use case is to use it as an rtorrent post-processing script so you can automatically upload torrent downloads to usenet (if you managed to download a poorly-seeded or rare torrent, for example, this way you can share it simply with others).


What exactly does it do?
============================
1) Renames the file with a more standardized name and recognizable source/quality indication
2) Rars the video
3) Creates a small NFO file saying where it came from
4) Creates pars from the rars
5) Uploads the rars, pars, and NFO to usenet


How does the quality stuff work?
=========================
Lift Cup always adds a quality string to the filename so that automated tools will be able to recognize it. It finds a quality by:

1) Attempting to use the quality string already in the filename
2) If not in the name, it uses the quality passed in by the user
3) If no quality passed in then it guesses based on the file extension

Qualities are: SDTV, SDDVD, HDTV, WEBDL, HDBLURAY, FULLHDBLURAY

How to install
====================

1) Get the source
git clone git://github.com/midgetspy/Lift-Cup.git ~/lift_cup

2) Install dependencies:
* rar
* par2
* newsmangler (git clone git://github.com/madcowfred/newsmangler.git ~/newsmangler)

3) Set up config

* rename conf.py.sample to conf.py
* configure the options inside to match your system


Usage
===================

Post-processing with rtorrent

Because of how rtorrent works there's no way to run Lift Cup on only selected torrents. To get around this, you must set d.set_custom5=SKIP on any watch dirs that you do not want Lift Cup to run on.

# Watch dirs
# Note: every watch dir must have d.set_custom5=<something>, where <something> is either a Lift Cup quality, blank, or SKIP.
schedule = watch_directory_1,10,10,"load_start=/home/midgetspy/watch_dir/*.torrent,d.set_custom5=SKIP" # this won't have Lift Cup executed on it
schedule = watch_directory_2,10,10,"load_start=/home/midgetspy/watch_dir/hd_bluray_watch_dir/*.torrent,d.set_custom5=HDBLURAY" # unless the filename says otherwise files in this folder will be assumed to be 720p BluRay

# execute lift cup after each download
system.method.set_key = event.download.finished,lift_cup,"execute=/home/midgetspy/rtorrent_lc.py,$d.get_base_path=,$d.get_custom5="

Note: ALL watch dirs must have d.set_custom5= in them or they will error! You will need to update your existing watch dirs!



Call it manually

./lc.py <file1> [file2] ... [fileN]

Run just ./lc.py with no options to see all other options.


Newsmangler Config
====================

In order to get your files detected on the automatic indexing sites you should use the [Lift-Cup] prefix and post to alt.binaries.multimedia.

So your resulting posts should look something like:

[LiftCup] Cookery.School.s01e43.andyx.tbz.HDTV.XviD [35/35] - "Cookery.School.s01e43.andyx.tbz.HDTV.XviD.vol126+74.par2" yEnc

About

Automated usenet upload script


Languages

Language:Python 100.0%