Browse Source

update Nzbclub for tv branch

pull/2602/head
Joel Kåberg 12 years ago
parent
commit
6c87008d7b
  1. 65
      couchpotato/core/providers/nzb/nzbclub/main.py

65
couchpotato/core/providers/nzb/nzbclub/main.py

@ -3,14 +3,22 @@ from couchpotato.core.helpers.encoding import toUnicode, tryUrlencode
from couchpotato.core.helpers.rss import RSS from couchpotato.core.helpers.rss import RSS
from couchpotato.core.helpers.variable import tryInt from couchpotato.core.helpers.variable import tryInt
from couchpotato.core.logger import CPLog from couchpotato.core.logger import CPLog
from couchpotato.core.event import fireEvent
from couchpotato.core.providers.base import MultiProvider
from couchpotato.core.providers.info.base import MovieProvider, SeasonProvider, EpisodeProvider
from couchpotato.core.providers.nzb.base import NZBProvider from couchpotato.core.providers.nzb.base import NZBProvider
from dateutil.parser import parse from dateutil.parser import parse
import time import time
log = CPLog(__name__) log = CPLog(__name__)
class NZBClub(MultiProvider):
class NZBClub(NZBProvider, RSS): def getTypes(self):
return [Movie, Season, Episode]
class Base(NZBProvider, RSS):
urls = { urls = {
'search': 'http://www.nzbclub.com/nzbfeed.aspx?%s', 'search': 'http://www.nzbclub.com/nzbfeed.aspx?%s',
@ -18,20 +26,9 @@ class NZBClub(NZBProvider, RSS):
http_time_between_calls = 4 #seconds http_time_between_calls = 4 #seconds
def _searchOnTitle(self, title, movie, quality, results): def _search(self, media, quality, results):
q = '"%s %s"' % (title, movie['library']['year'])
params = tryUrlencode({ nzbs = self.getRSSData(self.urls['search'] % self.buildUrl(media))
'q': q,
'ig': 1,
'rpp': 200,
'st': 5,
'sp': 1,
'ns': 1,
})
nzbs = self.getRSSData(self.urls['search'] % params)
for nzb in nzbs: for nzb in nzbs:
@ -78,3 +75,43 @@ class NZBClub(NZBProvider, RSS):
return False return False
return True return True
class Movie(MovieProvider, Base):
def buildUrl(self, media):
query = tryUrlencode({
'q': '"%s %s"' % (fireEvent('searcher.get_search_title', media['library'], include_identifier = True,
single = True), media['library']['year']),
'ig': 1,
'rpp': 200,
'st': 5,
'sp': 1,
'ns': 1,
})
return query
class Season(SeasonProvider, Base):
def buildUrl(self, media):
query = tryUrlencode({
'q': fireEvent('searcher.get_search_title', media['library'], include_identifier = True, single = True),
'ig': 1,
'rpp': 200,
'st': 5,
'sp': 1,
'ns': 1,
})
return query
class Episode(EpisodeProvider, Base):
def buildUrl(self, media):
query = tryUrlencode({
'q': fireEvent('searcher.get_search_title', media['library'], include_identifier = True, single = True),
'ig': 1,
'rpp': 200,
'st': 5,
'sp': 1,
'ns': 1,
})
return query

Loading…
Cancel
Save