CP API cleanup

This commit is contained in:
Ruud committed 2013-02-03 21:50:29 +01:00
1 parent 4b54113f08
commit a56bbf0b3b
1 file changed
+10 -38
@@ -5,9 +5,7 @@ from couchpotato.core.helpers.request import jsonified, getParams
from couchpotato.core.logger import CPLog from couchpotato.core.logger import CPLog
from couchpotato.core.providers.movie.base import MovieProvider from couchpotato.core.providers.movie.base import MovieProvider
from couchpotato.core.settings.model import Movie from couchpotato.core.settings.model import Movie
from flask.helpers import json
import time import time
import traceback
log = CPLog(__name__) log = CPLog(__name__)
@@ -33,18 +31,7 @@ class CouchPotatoApi(MovieProvider):
addEvent('movie.is_movie', self.isMovie) addEvent('movie.is_movie', self.isMovie)
def search(self, q, limit = 12): def search(self, q, limit = 12):
return self.getJsonData(self.urls['search'] % tryUrlencode(q), headers = self.getRequestHeaders())
cache_key = 'cpapi.cache.%s' % q
cached = self.getCache(cache_key, self.urls['search'] % tryUrlencode(q), headers = self.getRequestHeaders())
if cached:
try:
movies = json.loads(cached)
return movies
except:
log.error('Failed parsing search results: %s', traceback.format_exc())
return []
def isMovie(self, identifier = None): def isMovie(self, identifier = None):
@@ -62,38 +49,23 @@ class CouchPotatoApi(MovieProvider):
if not identifier: if not identifier:
return return
cache_key = 'cpapi.cache.info.%s' % identifier result = self.getJsonData(self.urls['info'] % identifier, headers = self.getRequestHeaders())
cached = self.getCache(cache_key, self.urls['info'] % identifier, headers = self.getRequestHeaders()) if result: return result
if cached:
try:
movie = json.loads(cached)
return movie
except:
log.error('Failed parsing info results: %s', traceback.format_exc())
return {} return {}
def getReleaseDate(self, identifier = None): def getReleaseDate(self, identifier = None):
if identifier is None: return {} if identifier is None: return {}
try:
data = self.urlopen(self.urls['eta'] % identifier, headers = self.getRequestHeaders())
dates = json.loads(data)
log.debug('Found ETA for %s: %s', (identifier, dates))
return dates
except Exception, e:
log.error('Error getting ETA for %s: %s', (identifier, e))
return {} dates = self.getJsonData(self.urls['eta'] % identifier, headers = self.getRequestHeaders())
log.debug('Found ETA for %s: %s', (identifier, dates))
return dates
def suggest(self, movies = [], ignore = []): def suggest(self, movies = [], ignore = []):
try:
data = self.urlopen(self.urls['suggest'] % (','.join(movies), ','.join(ignore))) suggestions = self.getJsonData(self.urls['suggest'] % (','.join(movies), ','.join(ignore)))
suggestions = json.loads(data) log.info('Found Suggestions for %s', (suggestions))
log.info('Found Suggestions for %s', (suggestions))
except Exception, e:
log.error('Error getting suggestions for %s: %s', (movies, e))
return suggestions return suggestions