GithubHelp home page GithubHelp logo

jankatins / tv-overlord Goto Github PK

View Code? Open in Web Editor NEW

This project forked from stevesbrain/tv-overlord

0.0 1.0 0.0 2.12 MB

TV Overlord — Download and manage tv shows:

Home Page: http://www.tvoverlord.com

License: GNU General Public License v3.0

Python 100.00%

tv-overlord's Introduction

http://i.imgur.com/S9hlqg0.png

Website: www.tvoverlord.comDocumentation

Current version: 1.4.4, Wed Oct 05/2016

TV Overlord is a semi automatic command line tool to download and manage TV shows from newsgroups or bittorent. It will download nzb files or magnet links.

It searches multiple sites simultaneously and combines the results into one list to select from.

TV Overlord keeps track of which shows have been downloaded and what shows are available to download.

For each new episode of a tv show you are tracking, you are given a list of possible downloads to choose. If you use a torrent search provider, a magnet link is passed to the default bittorent client. If it is an NZB search, an NZB file is placed in a folder that is configured in the configuration file.

For torrent files, you can also have your shows organized after downloading. If you use transmission or deluge, those clients can be configured to call a script when each torrent is complete. This script will extract the video file from the downloaded folder, rename it, and put it in a separate folder organized into sub folders named for each tv show.

There are several bittorent search providers and two NZB search providers and new ones can be added fairly easily. See the search providers README.org, or by making a feature request in issues or a pull request.

Why semi automatic

Semi automatic means that you manually run it and select from a list each episode you want. The reason for this is that not all torrents follow a naming convention that is parsable, especially for more obscure shows. So instead of writing a ton of code to try and figure out information about an episode, I’ll use the parser built into my brain. Also I like that it runs when I like, its light weight, and there are no background processes.

Table of contents

Features

Install

Requirements

Python 3.4 (or higher) – on Linux, OSX, or Windows

Install

TV Overlord is a python 3 application and can be installed via pip3.

sudo pip3 install tvoverlord

After its installed, you run it by typing:

tvol --help

The first time it’s run, it will create the appropriate config dir for your platform and put the database and config.ini there.

After that you can start to use it, type:

tvol add 'Doctor Who'

If this is the wrong show, try again but add the year:

tvol add 'Doctor Who 2005'

Then

tvol download

To get help for each command, you can use:

tvol download --help
tvol add --help
# etc...

If you use Bash as your shell, you can have tab completions. Add this to your .bashrc file:

eval "$(_TVOL_COMPLETE=source tvol)"

Setup the post download script

If you use Transmission or Deluge as your bittorent client there is a script for each called transmission_done and deluge_done. These will take the episode that was downloaded and copy it to a folder where it will be organized by how the template string in config.ini is configured.

Setup and configure post download scripts details

Configure

TV Overlord looks for the database and config.ini in the appropriate directory for your platform. When tvoverlord is first run, it will create a tvoverlord directory there.

OSX
~/Library/Application Support/tvoverlord
Linux
~/.config/tvoverlord
Windows
C:\Users\<USERNAME>\AppData\Roaming\tvoverlord

Config file details

Command line reference

Command line reference

Usefull shell commands

This will show all the available shows for the current week from Sun to Sat.

tvol calendar --days -$(date '+%u'),7 -x

To bulk import shows from a csv file (showname can’t have a comma in it).

while IFS=, read showname season episode; do
    tvol add --bulk "${showname}" --season=${season} --episode=${episode}
done < allshows.csv

If using multiple configs:

for config in '' 'nzb' 'torrent'; do
    echo "Using $config config"
    tvol --config=$config list
    tvol --config=$config download
done

tv-overlord's People

Contributors

8cylinder avatar atrox avatar avamsi avatar jankatins avatar jpfrancoia avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.