Browse Source

Merge 14861a0e8e into b538f9a08d

pull/471/merge
bwq 8 years ago
committed by GitHub
parent
commit
b5d6adcede
  1. 23
      couchpotato/core/providers/automation/kinepolis/__init__.py
  2. 67
      couchpotato/core/providers/automation/kinepolis/main.py

23
couchpotato/core/providers/automation/kinepolis/__init__.py

@ -0,0 +1,23 @@
from .main import Kinepolis
def start():
return Kinepolis()
config = [{
'name': 'kinepolis',
'groups': [
{
'tab': 'automation',
'name': 'kinepolis_automation',
'label': 'Kinepolis',
'description': 'imports movies from the current top 10 of kinepolis',
'options': [
{
'name': 'automation_enabled',
'default': False,
'type': 'enabler',
},
],
},
],
}]

67
couchpotato/core/providers/automation/kinepolis/main.py

@ -0,0 +1,67 @@
from couchpotato.core.helpers.rss import RSS
from couchpotato.core.helpers.variable import md5, getImdb, cleanHost
from couchpotato.core.logger import CPLog
from couchpotato.core.providers.automation.base import Automation
from couchpotato.environment import Env
from dateutil.parser import parse
from urllib import quote_plus
import time
import traceback
import xml.etree.ElementTree as XMLTree
import datetime
import json
log = CPLog(__name__)
class Kinepolis(Automation, RSS):
interval = 1800
rss_url = 'http://kinepolis.be/nl/top10-box-office/feed'
def getIMDBids(self):
if self.isDisabled():
return
movies = []
RSSMovie = {'name': 'placeholder', 'year' : 'placeholder'}
cache_key = 'kinepolis.%s' % md5(self.rss_url)
rss_data = self.getCache(cache_key, self.rss_url)
data = XMLTree.fromstring(rss_data)
if data:
rss_movies = self.getElements(data, 'channel/item')
for movie in rss_movies:
RSSMovie['name'] = self.getTextElement(movie, "title")
currentYear = datetime.datetime.now().strftime("%Y")
RSSMovie['year'] = currentYear
log.info('Release found: %s.' % RSSMovie)
imdbId = self.getIMDBFromTitle(RSSMovie['name'])
movies.append(imdbId)
return movies
def getIMDBFromTitle(self,title):
api_url = self.createApiUrl()
search_url = api_url + '/movie.search/?q=' + quote_plus(title)
data = self.urlopen(search_url)
jsondata = json.loads(data)
return jsondata['movies'][0]['imdb']
def createBaseUrl(self):
host = Env.setting('host')
if host == '0.0.0.0':
host = 'localhost'
port = Env.setting('port')
return '%s:%d%s' % (cleanHost(host).rstrip('/'), int(port), '/' + Env.setting('url_base').lstrip('/') if Env.setting('url_base') else '')
def createApiUrl(self):
return '%s/api/%s' % (self.createBaseUrl(), Env.setting('api_key'))
Loading…
Cancel
Save