1
0
mirror of https://github.com/moparisthebest/SickRage synced 2024-11-14 13:25:11 -05:00
Commit Graph

156 Commits

Author SHA1 Message Date
echel0n
e6389e47b1 Improved RSS feedparser/feedcache code for better performance and reliability.
Removed Shove module and depends.

Logging now automatically omits sensitive data such as usernames, passwords, and api keys and replaces them with asterisks in both log file and console.

Fixed versionChecker module to confirm it created a updater class before attempting to execute functions to avoid NoneType errors.
2014-12-02 11:09:53 -08:00
echel0n
44396490cd Fix for issue #989 - Changed exception type sent back by IndexerAPI, raise errors on anything other then status OK as well. 2014-11-30 09:37:39 -08:00
echel0n
44ae0c2933 Fixed system path to prepend instead of append for custom libs 2014-11-29 10:02:19 -08:00
echel0n
7c6b1b32de Fixes AttributeError: 'module' object has no attribute 'PROTOCOL_SSLv3' issues. 2014-11-29 09:50:46 -08:00
echel0n
42befb652d Fixed more issues with TraktAPI code 2014-11-29 03:38:41 -08:00
echel0n
091c9419c8 Quickfix for last commit of Trakt.tv overhaul 2014-11-28 14:13:06 -08:00
echel0n
c6b7348c37 Overhaul of Trakt.TV API handler 2014-11-28 14:07:26 -08:00
echel0n
360c3afa08 Removed FTFY, python 2.6 compatibility issues.
Re-coded encodingKludge encode/decode for unicode <-> utf-8
2014-11-25 17:22:31 -08:00
echel0n
b67c186ed8 Fixed startup issue for python 2.6 end-users, had to make some compatibility changes to the ftfy libs 2014-11-24 19:14:39 -08:00
echel0n
9a33ddf85c Fix for issue #946 - Adding of shows via webAPI was failing.
Improvements made to Indexer's API modules, better error handling for missing or incomplete shows, shows that don't have actor or banner info are now properly error handled as well.
2014-11-24 18:47:14 -08:00
echel0n
6a140aa907 Added FTFY module to help with any encoding/decoding issues 2014-11-24 13:42:30 -08:00
echel0n
e3500fffc1 Fixed Indexer API issues resulting in NoneType errors when no data was available for a show 2014-11-23 17:21:34 -08:00
echel0n
a18c72f2ea Small code fix for trakt.tv trending shows func
Fixes for Indexer API's
2014-11-23 04:51:10 -08:00
echel0n
29d22b8a8f Trakt.tv recommend shows and trending shows now work with both TVDB and TVRAGE Indexer's 2014-11-23 04:08:37 -08:00
echel0n
1aca9da027 Added try/except to Indexer API code when retrieving episodes 2014-11-23 02:28:52 -08:00
echel0n
5691847331 Fixed Trakt.tv API code 2014-11-20 04:40:33 -08:00
echel0n
e57fa4d585 Merge pull request #917 from Hellowlol/apifasterplx
Respect cache.
2014-11-18 19:45:00 -08:00
John
4f773ec4ea Respect cache.
Tries to fix https://github.com/SiCKRAGETV/SickRage/issues/903
2014-11-19 00:41:50 +01:00
echel0n
d96597bf27 Fix for missing github modules, forgot to add folder to git repo 2014-11-16 04:15:40 -08:00
adam
af1c16c4da Fix parsing utf8 data from tvdb and tvrage 2014-11-10 10:07:47 +08:00
JackDandy
9ad811432a Fix invalid use of str() in the Send2Trash library for platforms other. 2014-11-09 20:25:23 +00:00
adam
e63ffd363c Fixes unicode issues during searches on newznab providers when rid mapping occurs 2014-11-08 01:02:29 +08:00
JackDandy
ef4470bd78 Add send2trash, General Config/Send to trash, and catch show dir not found exception.
Add send2trash, a small package that sends files to the Trash (or Recycle Bin) natively and on all platforms. If send2trash is found not compatible, the user can use the default delete and manually delete failed send2trash files.
Add General Config/Misc/Send to trash for actions that involve removing shows and log rotation.
Add handling for the exception raised while deleting a show and show folder no longer exists.
2014-11-05 05:36:16 +00:00
JackDandy
6c8d72b9c1 Revert "Added gui for IMDB watchlists in Config General."
The main core of this code was lifted from Trakt code and not developed enough to be suitable for purpose given that the Trakt code isn't fully developed either. An issue found leading to this decision was that show statuses were set false instead of the expected default, however, worse was that users had no way of choosing shows to add, was not informed of what was actually going on once a URL was added to the UI, and was not offered options prior to adding shows like the normal add new show work-flow does. Basically, there are too many issues and this feature is too immature for inclusion.
2014-10-24 17:03:32 +01:00
adam111316
4bb7e3cac0 Merge pull request #876 from JackDandy/UpdateTornado
Update Tornado webserver to 4.1dev1 and add the certifi lib dependency.
2014-10-14 13:01:15 +08:00
JackDandy
2d18f5b8ab Update Tornado webserver to 4.1dev1 from 4.0b1 and add the certifi lib dependency. 2014-10-14 05:24:01 +01:00
Ofir Brukner
b0426ca12d Fixed a few bugs.
Also fixed buggy search function in webserve.
2014-10-13 00:25:06 +03:00
Ofir Brukner
14f3848872 Added all logic related to subscenter, including logo 2014-10-12 16:19:34 +03:00
KontiSR
7165df7405 Added gui for IMDB watchlists in Config General.
Used regex checks with javascript popup, for checking if valid imdb csv watchlist.
Added test/test_tvdb_api.py for testing the tvdb api for retrieving shows by IMDB id.

TODO: Help for assisting users in getting the correct IMDB url.
maybe, make interval configurable

First changes for imdb watchlist checker

Thrown the couch code overboard and created my own version of an imdb watchlist scraper

Added IMDB thread and test values with an IMDB csv url. These values should be replaced by front end UI settings.

- Removed some tracelogs when unable to download watchlist
- Added settings for enabling and setting of the watchlist csv url
TODO:
- create UI for setting from frontend
- Implement frontend and backend checks for validating the csv url

Default interval is 1 hour.
2014-09-30 12:25:11 +02:00
Adam
3c9f1d754d Fixes shows not being added from tvrage 2014-09-25 19:04:19 +08:00
echel0n
67bd1a9e98 Fix for daily searches and high cpu usage plus increases search speed 2014-09-15 01:28:11 -07:00
echel0n
442631105b Fix for TypeError: list indices must be integers, not str in Indexer API code 2014-09-14 18:24:08 -07:00
adam
ae786bee42 Update adba libs
Add NotificationDel, NotificationDeletedResponse

Add Notification, NotificationResponse

Add MultipleNotificationResponse

Add NoSuchNotificationResponse
2014-08-31 14:12:48 +08:00
Adam
1b16320492 Fix missing fid listing on NotifygetMessageResponse 2014-08-30 12:17:25 +08:00
Adam
c4acb54d59 Replace tabs with spaces in adba libs / PEP8 2014-08-30 12:10:19 +08:00
echel0n
00a1ebfee3 Fixed TypeError: string indices must be integers error when mapping indexer id's
Added full delete feature to mass update, removes show from SR and deletes show folder from hard drive. Remove will just delete show from SR without deleting files from hard drive

Fixed XML errors for TVRage indexer api
2014-08-29 10:05:15 -07:00
loginfliggle
62a7d9850c Update tvrage_api.py
Bugfix by viperidae

Reference:
---------------
Reference: https://sickrage.tv/forums/forum/help-support/bug-issue-reports/6224-there-was-an-error-with-the-xml-retrieved-from-tvrage-com

Quote:
----------
Had a look at the code and the xml documents...

It looks like the problem is caused by an empty <genre /> element in Results/shows/show/genres/
Line 459 of tvrage_api.py (it's 460 in my track in the previous post because of the debug statements I put in)

I assume it's because value is NoneType, gets replaced by a [NoneType] list and then tries to call '|'.join([NoneType]) when it was expecting a list of strings.

I changed this to the following and the problem appears to be resolved

Syslog extract:
----------------------
tvrage_error: There was an error with the XML retrieved from tvrage.com
First try emptying the cache folder at..
C:\Users\Josh\Documents\Programs\SickRage\cache\indexers\TVRage
If this does not resolve the issue, please try again later. If the error persists, report a bug on


2014-08-09 00:43:25 INFO     SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: Searching for episodes we need from Top Gear Season 21
2014-08-09 00:43:25 DB       SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: cache.db: SELECT * FROM [nmatrix] WHERE indexerid = ? AND season = ? AND episodes LIKE ? with args [74608, 21, '%|2|%']
2014-08-09 00:43:25 DB       SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: cache.db: UPDATE lastSearch SET time = ? WHERE provider = ? with args [1407559405, 'nmatrix']
2014-08-09 00:43:25 DB       SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: cache.db: INSERT INTO lastSearch (time, provider) VALUES (?, ?) with args [1407559405, 'nmatrix']
2014-08-09 00:43:25 DB       SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: sickbeard.db: SELECT * FROM indexer_mapping WHERE indexer_id = ? AND indexer = ? with args [74608, 1]
2014-08-09 00:43:25 ERROR    SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: Error while searching NMatrix, skipping: There was an error with the XML retrieved from tvrage.com
First try emptying the cache folder at..
C:\Users\Josh\Documents\Programs\SickRage\cache\indexers\TVRage
If this does not resolve the issue, please try again later. If the error persists, report a bug on

2014-08-09 00:43:25 DEBUG    SEARCHQUEUE-BACKLOG-74608 :: [NMatrix] :: Traceback (most recent call last):
  File "C:\Users\Josh\Documents\Programs\SickRage\sickbeard\search.py", line 428, in searchProviders
    searchResults = curProvider.findSearchResults(show, season, episodes, search_mode, manualSearch)
  File "C:\Users\Josh\Documents\Programs\SickRage\sickbeard\providers\generic.py", line 264, in findSearchResults
    for curString in self._get_episode_search_strings(epObj):
  File "C:\Users\Josh\Documents\Programs\SickRage\sickbeard\providers\newznab.py", line 133, in _get_episode_search_strings
    rid = helpers.mapIndexersToShow(ep_obj.show)[2]
  File "C:\Users\Josh\Documents\Programs\SickRage\sickbeard\helpers.py", line 1178, in mapIndexersToShow
    mapped_show = t[showObj.name]
  File "C:\Users\Josh\Documents\Programs\SickRage\lib\tvrage_api\tvrage_api.py", line 675, in __getitem__
    selected_series = self._getSeries(key)
  File "C:\Users\Josh\Documents\Programs\SickRage\lib\tvrage_api\tvrage_api.py", line 566, in _getSeries
    allSeries = self.search(series)
  File "C:\Users\Josh\Documents\Programs\SickRage\lib\tvrage_api\tvrage_api.py", line 557, in search
    seriesEt = self._getetsrc(self.config['url_getSeries'], self.config['params_getSeries'])
  File "C:\Users\Josh\Documents\Programs\SickRage\lib\tvrage_api\tvrage_api.py", line 500, in _getetsrc
    raise tvrage_error(errormsg)
2014-08-09 02:36:21 -04:00
echel0n
1136e5c833 Fixed IndexError: list index out of range issue 2014-08-09 01:43:02 +00:00
Jamie
18da621016 Trakt method, error checking, remove series 2014-08-09 00:07:17 +01:00
echel0n
7cb2296b6a Fixed issue with reverts to master on startup due to bug in version checker.
Fixed issues with indexerApi caching code, seemed TVRage was really the only one experiancing the problems but has been corrected for theTVDB just in case.
2014-07-28 09:03:07 -07:00
echel0n
7dc89c084f Added ability to switch branches from general settings/advanced, will perform a forced checkout of whatever branch you choose and restart automatically.
Git updates are now forced to overwrite locale changes to avoid needing to manually stash uncommited changes before being able to proceed with a update.

Fixed indexer mapping when unable to locate show on indexer that we are trying to map to.
2014-07-27 11:39:02 -07:00
echel0n
14c354b551 Added proxy support to Indexer APIs.
Provider getURL and downloadResult functions now removed and replaced with ones from helpers.py to help slim the code down plus allow more better control over request sessions.

Removed TVTumbler code.

Fixed HDBits provider.

Fixed config settings that were ment to be booleans but instead where set as str or int, should help resolve random html errors.

XEM Refresh check re-coded.

NameParser code for creating show object has been changed to only attempt at the very end once its found the bestMatch result, helps on resources and performance.
2014-07-27 03:59:21 -07:00
echel0n
de5db9be64 Added ability to set a default indexer for trakt notifier used for adding shows from watch list so that SickRage knows what indexer to set the show as.
Indexer mapping now uses indexer api calls to gather its information and then stores it to a new table called indexer_mapping for instant lookups later on.

Fixed trakt related issues for adding new shows and syncing.

Centered items at bottom of pages to just look a little nicer and fit properly.
2014-07-23 22:07:01 -07:00
echel0n
403c267953 Further improved memory handling of bs4 for torrent providers. 2014-07-21 16:01:46 -07:00
echel0n
6957bd0656 Possible fix for stacked provider names during backlog search.
Possible fix for anidb connection stop issues during restart/shutdown.
2014-07-17 23:16:18 -07:00
echel0n
7f20f5e27f Fixed whitelist error when editing shows, needs more code changes to fully function correctly.
Possible fix for threading exceptions.
2014-07-17 17:43:36 -07:00
echel0n
c577ff2887 Reverted back to using Shove+SQLAlchemy for storing persistent object data to avoid any more DB corruption errors. 2014-07-15 11:40:40 -07:00
echel0n
703da76d80 Fix for AniDB list downloading 2014-07-15 00:17:08 -07:00
echel0n
4a061d4dd2 AniDB now updates its xml lists daily.
Added writeback cache for both rss feeds and name parser.
2014-07-14 23:55:52 -07:00
echel0n
d02c0bd6eb Fixed issues with editing/saving custom scene exceptions.
Fixed charmap issues for anime show names.

Fixed issues with display show page and epCat key errors.

Fixed duplicate log messages for clearing provider caches.

Fixed issues with email notifier ep names not properly being encoded to UTF-8.

TVDB<->TVRAGE Indexer ID mapping is now performed on demand to be used when needed such as newznab providers can be searched with tvrage_id's and some will return tvrage_id's that later can be used to create show objects from for faster and more accurate name parsing, mapping is done via Trakt API calls.

Added stop event signals to schedualed tasks, SR now waits indefinate till task has been fully stopped before completing a restart or shutdown event.

NameParserCache is now persistent and stores 200 parsed results at any given time for quicker lookups and better performance, this helps maintain results between updates or shutdown/startup events.

Black and White lists for anime now only get used for anime shows as intended, performance gain for non-anime shows that dont need to load these lists.

Internal name cache now builds it self on demand when needed per show request plus checks if show is already in cache and if true exits routine to save time.

Schedualer and QueueItems classes are now a sub-class of threading.Thread and a stop threading event signal has been added to each.

If I forgot to list something it doesn't mean its not fixed so please test and report back if anything is wrong or has been corrected by this new release.
2014-07-14 19:00:53 -07:00