Automatic Video Library Manager for TV Shows

Overview

image

Automatic Video Library Manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic.

Dependencies

  • To run SiCKRAGE from source you will need Python 3.5+
  • To install requirements run 'pip install -r requirements.txt' from install folder

Features

  • Kodi/XBMC library updates, poster/banner/fanart downloads, and NFO/TBN generation
  • Configurable automatic episode renaming, sorting, and other processing
  • Easily see what episodes you're missing, are airing soon, and more
  • Automatic torrent/nzb searching, downloading, and processing at the qualities you want
  • Largest list of supported torrent and nzb providers, both public and private
  • Can notify Kodi, XBMC, Growl, Trakt, Twitter, and more when new episodes are available
  • Searches TheTVDB.com and AniDB.net for shows, seasons, episodes, and metadata
  • Episode status management allows for mass failing seasons/episodes to force retrying
  • DVD Order numbering for returning the results in DVD order instead of Air-By-Date order
  • Allows you to choose which series provider to have SiCKRAGE search its show info from when importing
  • Automatic XEM Scene Numbering/Naming for seasons/episodes
  • Available for any platform, uses a simple HTTP interface
  • Specials and multi-episode torrent/nzb support
  • Automatic subtitles matching and downloading
  • Improved failed download handling
  • DupeKey/DupeScore for NZBGet 12+
  • Real SSL certificate validation
  • Supports Anime shows

Screenshots

Links

Important

Before using this with your existing database sickrage.db please make a backup copy of it and delete any other database files such as cache.db and failed.db if present, We HIGHLY recommend starting out with no database files at all to make this a fresh start but the choice is at your own risk

Comments
  • Saving downloaded subtitles with utf-8 encoding

    Saving downloaded subtitles with utf-8 encoding

    While saving subtitles there was not specified encoding. As a result saved subtitles with specials characters (e.g. polish signs: ąężźćńół) were not correctly encoded.

    opened by mbiernacik 64
  • Check available episode

    Check available episode

    This function check for episode on torrent/nzb and set status on available if found. Tested only with torrent. For color code of new episode no preference, if you want to change it its ok.

    • [x] if not curShow.paused chenge check
    • [x] move log inside markAvailable procedure
    Do Not Merge Feature 
    opened by gborri 54
  • Add API methods to check for update and perform update

    Add API methods to check for update and perform update

    I added the two following methods to SickRage's API:

    • sb.checkversion:
      • Get information about the current version
      • Get information about the latest version
      • Check if an update is required
      • Get the number of commits between the current version and the latest version
    • sb.update: update SickRage if necessary

    Usage

    sb.checkversion

    Request:

    GET /?cmd=sb.checkversion
    

    Response:

    {
        "data": {
            "commits_offset": 0, 
            "current_version": {
                "branch": "develop", 
                "commit": "ddc0fca21d9030612a5c810ecc24463a7f64112b", 
                "version": "v4.0.24"
            }, 
            "latest_version": {
                "branch": "develop", 
                "commit": "3565ec70dc924d8117f506983fc18a9351f487e4", 
                "version": "v4.0.24"
            }, 
            "needs_update": false
        }, 
        "message": "", 
        "result": "success"
    }
    

    sb.update

    Request:

    GET /?cmd=sb.update
    

    Response:

    // If no update is necessary
    {
        "data": {}, 
        "message": "SickRage is already up to date", 
        "result": "failure"
    }
    
    // If the config could not be backed up
    {
        "data": {}, 
        "message": "SickRage could not backup config ...", 
        "result": "failure"
    }
    
    // If an update was started
    {
        "data": {}, 
        "message": "SickRage is updating ...", 
        "result": "success"
    }
    

    I'm not an expert in Python, but I think that my changes in sickbeard/versionChecker.py can be improved.

    Reference issue: SiCKRAGETV/sickrage-issues#1780

    Do Not Merge Feature Needs testing 
    opened by MGaetan89 47
  • Start converting templates for Mako, and replacement of Cheetah

    Start converting templates for Mako, and replacement of Cheetah

    PR's helping me do this conversion are most welcome. The changes in https://github.com/SiCKRAGETV/SickRage/commit/08ea0ec030c64b2a479604747e4f7016c14d7a57 are a good example of a starting point, although it is not complete and bugs will need worked out once everything is changed over.

    This will stay in this branch until complete and production ready.

    Do Not Merge Feature 
    opened by miigotu 46
  • Fix for SiCKRAGETV/sickrage-issues#2578: Add a

    Fix for SiCKRAGETV/sickrage-issues#2578: Add a "Size" column on shows list

    It needs to be tested for potential performance issue before being included in develop/master. I only have 2 shows with files in my dev environment, so I am not sure about the result.

    Feature Needs testing 
    opened by MGaetan89 41
  • Add new safe check to backup/update

    Add new safe check to backup/update

    Check if show are updating and/or SR is searching for episode before auto-update or manual update runs. Previous checks were only if PP were running and showsupdating (this PR fixes the forced-update check_

    Bugfix 
    opened by fernandog 37
  • Move

    Move "Coming episodes" logic into a dedicated class

    I am still working on this PR. But as I found a couple of differences between the API and the web UI, I decided to open this PR to track the changes and see which version is the best and validate the choices.

    • Qualities definition:
      • API (source): qualList = Quality.DOWNLOADED + Quality.SNATCHED + [ARCHIVED, IGNORED]
      • Web UI (source): qualList = Quality.DOWNLOADED + Quality.SNATCHED + [ARCHIVED, IGNORED]
      • Solution: @miigotu confirmed that Quality.ARCHIVED should be used (https://github.com/SiCKRAGETV/sickrage-issues/issues/2567#issuecomment-138367874)
    • Sorting methods:
      • API (source): only sort by the required field
      • Web UI (source): sort by the required field and then by time
      • Solution: I chose the web UI option. However the date sort might need to use airdate rather than localtime. What do you think?
    • Date time format:
      • API: %Y-%m-%d %H:%M (for future and show commands)
      • Web UI: %Y-%m-%d %H:%M:%S
      • Solution: Use the Web UI format (%Y-%m-%d %H:%M:%S) everywhere (https://github.com/SiCKRAGETV/SickRage/pull/2438#issuecomment-139912848)

    The rest of the logic looks similar, except in the SQL queries. The API only select what is needed (at least it looks like it does), while the web UI selects everything. I will try to improve that to select only what we need.

    https://github.com/SiCKRAGETV/sickrage-issues/issues/2567

    Refactor 
    opened by MGaetan89 37
  • Sync wathclist

    Sync wathclist

    This pull request is intended to take in sync sickrage with wathclist. It adds Show to watch list when added to sickrage and remove from watchlist when deleted. It add Episode to watchlist when the episode is set to wanted or snetched on sickrage and will be removed from watchlist when the episode will be downloaded.

    Feature Approved Tested 
    opened by gborri 34
  • Add RSS mode for HDTorrents

    Add RSS mode for HDTorrents

    For now it works with an empty search string In the future real RSS must be used

    @miigotu There's still a bug - that I thought I had fixed - about HDT only scrapping the first torrent in the table of torrents. the 'torrents' variable contains only one torrent.

    @duramato

    Feature In Progress 
    opened by fernandog 29
  • Add support for parsing TVRage specials

    Add support for parsing TVRage specials

    https://github.com/SiCKRAGETV/sickrage-issues/issues/292

    I've added support for parsing specials from the TVRage API. There are a few limitations due to the results returned from TVRage:

    • Each episode listed has a season listed corresponding to the season during which the special was released
    • There are no episode numbers associated with each episode

    Right now I use the season information to put the special in the correct season, but I must come up with the episode number myself. I simply keep a counter for each season and increment it (starting from 1) every time a special is seen, and use that as the episode number. This is dependent upon the order in which TVRage supplies us the episodes, but I believe this is what they do themselves as I get the same results, which is independent of air date. Because I use the season information, and I don't want to overwrite any episodes, I use 'S<special_num>' as the episode number. This isn't very desirable and I'd love to hear alternative ways to get around this, especially if there is some reason this must be an integer. I don't think stuffing all the episodes into Season 0 (i.e. Specials) is the way to go considering TVRage gives us season information, but I'm not picky on this point.

    I've tested this on Top Gear, and get results agreeing with TVRage.

    • [x] Pull metadata from TVRage
    • [ ] Modify search behaviour for each provider to ignore episode number and search by name
    Do Not Merge Feature 
    opened by drglove 29
  • Fix SiCKRAGETV/sickrage-issues/issues/3347

    Fix SiCKRAGETV/sickrage-issues/issues/3347

    HD-Torrents has some invalid html on the page with search results. Using the default html parser wasn't returning the correct data. Substituted it with html5 parser to fix the problem.

    P.S. I've also created another PR with a different fix to that issue. Not sure which one would you prefere.

    Ready to merge 
    opened by ncksol 27
Releases(v4.0.22)
SongLink Discord Bot - Discord bot to share music links easily

SongLink_Discord_Bot Discord bot to share music links easily. Take a link from y

Edgar Lefevre 4 Feb 18, 2022
Secret messaging app which you can use to communicate with your friends by encrypting / decrypting secret messages or sending secret message through mail.

Secret-Whisper A Secret messaging app which you can use to communicate with your friends by encrypting / decrypting secret messages 🤫 or sending secr

3 Jan 01, 2022
Template to create a telegram bot in python

Template for Telegram Bot Template to create a telegram bot in python. How to Run Set your telegram bot token as environment variable TELEGRAM_BOT_TOK

Ali Hejazizo 12 Aug 14, 2022
Userbot untuk memutar video dan lagu di vcg/os

Userbot untuk memutar video dan lagu di vcg/os

FJ_GAMING 2 Nov 13, 2021
A simple Python app to provide RPC for iTunes and the Music app. MacOS exclusive.

Ongaku You know, ongaku. A port of Ongaku to Python. Why? I don't know. A simple application providing the now playing state from iTunes (or the Music

Deltaion Lee 4 Oct 22, 2022
Python SDK for 42DI

42di Python SDK Install pip install git+https://github.com/42di/python-sdk import import di #42di import pandas_datareader as pdr Init SDK project =

42DI 2 Nov 03, 2021
Google Sheets Python API

Google Spreadsheets Python API v4 Simple interface for working with Google Sheets. Features: Open a spreadsheet by title, key or url. Read, write, and

Anton Burnashev 6.2k Dec 30, 2022
WhatSender is a python package that allows you to send Whatsapp messages at a given time.

WhatSender is a python package that allows you to send Whatsapp messages at a given time.

IdoBarel 0 Apr 21, 2022
Recommended AWS CDK project structure for Python applications

Recommended AWS CDK project structure for Python applications The project implements a user management backend component that uses Amazon API Gateway,

AWS Samples 110 Jan 06, 2023
Injector/automatic translator (using deepL API) for Tsukihime Remake

deepLuna Extractor/Editor/Translator/Injector for Tsukihime Remake About deepLuna, from "deepL", the machine translation service, and "Luna", the name

30 Dec 15, 2022
A Bot To Get Info Of Telegram messages , Media , Channel id Group ID etc.

Info-Bot A Bot To Get Info Of Telegram messages , Media , Channel id Group ID etc. Get Info Of Your And Messages , Channels , Groups ETC... How to mak

Vɪᴠᴇᴋ 23 Nov 12, 2022
Un petit tool qui est la pour envoier des message avec des webhook en bêta

📎 Webhook-discord Le but de se tool c'est que tu peux envoier vos webhook discord sur vos serveur et les customiser Pour lancer le projet il faut avo

2 Oct 10, 2021
A melhor maneira de atender seus clientes no Telegram!

Clientes.Chat Sobre o serviço Configuração Banco de Dados Variáveis de Ambiente Docker Python Heroku Contribuição Sobre o serviço A maneira mais organ

Gabriel R F 10 Oct 12, 2022
Disctopia-c2 - Windows Backdoor that is controlled through Discord

Disctopia Disctopia Command and Control What is Disctopia? Disctopia is an open

Dimitris Kalopisis 218 Dec 26, 2022
A Python module for communicating with the Twilio API and generating TwiML.

twilio-python The default branch name for this repository has been changed to main as of 07/27/2020. Documentation The documentation for the Twilio AP

Twilio 1.6k Jan 05, 2023
A telegram photos or videos background remover bot

Remove BG Bot A telegram photos or videos background remover bot Variables API_HASH Your API Hash from my.telegram.org API_ID Your API ID from my.tele

ALBY 7 Dec 13, 2022
Most Advance Trading Bot Support Windows Linux Mac

GUI Pancakeswap 2 and Uniswap 3 SNIPER BOT 🏆 🥇 (MOST ADVANCE TRADING BOT SUPPORT WINDOWS LINUX MAC) (AUTO BUY TOKEN ON LAUNCH AFTER ADD LIQUIDITY) S

1 Dec 26, 2021
szrose is an all in one group management bot made for managing your group effectively with some advance security tools & Suit For All Your Needs ❤️

szrose is an all in one group management bot made for managing your group effectively with some advance security tools & Suit For All Your Needs ❤️

szsupunma 93 Jan 07, 2023
Stack overflow search API

Stack overflow search API

Vikash Karodiya 1 Nov 15, 2021
Elemeno.ai standard development kit in Python

Overview A set of glue code and utilities to make using elemeno AI platform a smooth experience Free software: Apache Software License 2.0 Installatio

Elemeno AI 3 Dec 14, 2022