Example #1
0
def getTVrageEpisode(tvrage, title, date, season, episode):
    monthMap = {'01':'Jan', '02':'Feb', '03':'Mar', '04':'Apr', '05':'May', '06':'Jun', '07':'Jul', '08':'Aug', '09':'Sep', '10':'Oct', '11':'Nov', '12':'Dec'}
    title = cleantitle.tv(title)

    try:
        url = 'http://www.tvrage.com/shows/id-%s/episode_list/all' % tvrage
        result = client.request(url, timeout='5')
        search = re.compile('<td.+?><a.+?title=.+?season.+?episode.+?>(\d+?)x(\d+?)<.+?<td.+?>(\d+?/.+?/\d+?)<.+?<td.+?>.+?href=.+?>(.+?)<').findall(result.replace('\n',''))
        d = '%02d/%s/%s' % (int(date.split('-')[2]), monthMap[date.split('-')[1]], date.split('-')[0])
        match = [i for i in search if d == i[2]]
        if len(match) == 1: return (str('%01d' % int(match[0][0])), str('%01d' % int(match[0][1])))
        match = [i for i in search if title == cleantitle.tv(i[3])]
        if len(match) == 1: return (str('%01d' % int(match[0][0])), str('%01d' % int(match[0][1])))
    except:
        pass

    try:
        url = 'http://epguides.com/common/exportToCSV.asp?rage=%s' % tvrage
        result = client.request(url, timeout='5')
        search = re.compile('\d+?,(\d+?),(\d+?),.+?,(\d+?/.+?/\d+?),"(.+?)",.+?,".+?"').findall(result)
        d = '%02d/%s/%s' % (int(date.split('-')[2]), monthMap[date.split('-')[1]], date.split('-')[0][-2:])
        match = [i for i in search if d == i[2]]
        if len(match) == 1: return (str('%01d' % int(match[0][0])), str('%01d' % int(match[0][1])))
        match = [i for i in search if title == cleantitle.tv(i[3])]
        if len(match) == 1: return (str('%01d' % int(match[0][0])), str('%01d' % int(match[0][1])))
    except:
        pass
def getTVrageId(imdb, tvdb, show, year):
    try:
        from modules.indexers import trakt
        if not imdb.startswith('tt'): imdb = 'tt' + imdb
        result = trakt.getTVShowSummary(imdb)
        result = json.loads(result)
        tvrage = result['ids']['tvrage']
        if tvrage == None: raise Exception()
        return str(tvrage)
    except:
        pass

    try:
        query = urllib.quote_plus(show)
        query = 'http://services.tvrage.com/feeds/search.php?show=%s' % query
        result = client.request(query, timeout='5')
        result = client.parseDOM(result, "show")
        show = cleantitle.tv(show)
        years = [str(year), str(int(year) + 1), str(int(year) - 1)]
        result = [
            i for i in result if show == cleantitle.
            tv(client.replaceHTMLCodes(client.parseDOM(i, "name")[0])) and any(
                x in client.parseDOM(i, "started")[0] for x in years)
        ][0]
        tvrage = client.parseDOM(result, "showid")[0]
        return str(tvrage)
    except:
        pass
Example #3
0
def getTVrageId(imdb, tvdb, show, year):
    try:
        from modules.indexers import trakt
        if not imdb.startswith('tt'): imdb = 'tt' + imdb
        result = trakt.getTVShowSummary(imdb)
        result = json.loads(result)
        tvrage = result['ids']['tvrage']
        if tvrage == None: raise Exception()
        return str(tvrage)
    except:
        pass

    try:
        query = urllib.quote_plus(show)
        query = 'http://services.tvrage.com/feeds/search.php?show=%s' % query
        result = client.request(query, timeout='5')
        result = client.parseDOM(result, "show")
        show = cleantitle.tv(show)
        years = [str(year), str(int(year)+1), str(int(year)-1)]
        result = [i for i in result if show == cleantitle.tv(client.replaceHTMLCodes(client.parseDOM(i, "name")[0])) and any(x in client.parseDOM(i, "started")[0] for x in years)][0]
        tvrage = client.parseDOM(result, "showid")[0]
        return str(tvrage)
    except:
        pass