def LIST_TVSHOWS_CATS(): import tv as tvDB catid = common.args.url if catid: asins = tvDB.lookupTVdb(catid, rvalue='asins', name='title', tbl='categories') epidb = tvDB.lookupTVdb('', name='asin', rvalue='asin, seasonasin', tbl='episodes', single=False) if not asins: return for asin in asins.split(','): seasonasin = None for epidata in epidb: if asin in str(epidata): seasonasin = epidata[1] break if not seasonasin: seasonasin = asin for seasondata in tvDB.loadTVSeasonsdb(seasonasin=seasonasin).fetchall(): ADD_SEASON_ITEM(seasondata, disptitle=True) common.SetView('seasons', 'seasonview') del epidb else: for title in tvDB.lookupTVdb('', name='asins', tbl='categories', single=False): if title: common.addDir(title[0], 'listtv', 'LIST_TVSHOWS_CATS', title[0]) xbmcplugin.endOfDirectory(pluginhandle, updateListing=False)
def LIST_TVSHOWS_CATS(): catid = var.args.get('url') if catid: asins = tv.lookupTVdb(catid, rvalue='asins', name='title', tbl='categories') epidb = tv.lookupTVdb('', name='asin', rvalue='asin, seasonasin', tbl='episodes', single=False) if not asins: return for asin in asins.split(','): seasonasin = None for epidata in epidb: if asin in str(epidata): seasonasin = epidata[1] break if not seasonasin: seasonasin = asin for seasondata in tv.loadTVSeasonsdb(seasonasin=seasonasin).fetchall(): ADD_SEASON_ITEM(seasondata, disptitle=True) SetView('seasons', 'seasonview') del epidb else: for title in tv.lookupTVdb('', name='asins', tbl='categories', single=False): if title: addDir(title[0], 'listtv', 'LIST_TVSHOWS_CATS', title[0]) xbmcplugin.endOfDirectory(var.pluginhandle, updateListing=False)
def EXPORT_SHOW(asin=None): if not asin: asin = var.args.get('asin') for data in tvDB.lookupTVdb(asin, tbl='shows', single=False): Info = listtv.ADD_SHOW_ITEM(data, onlyinfo=True) for showasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(showasin, rvalue='asin', tbl='seasons', name='seriesasin', single=False) for asin in asins: if asin: EXPORT_SEASON(asin[0].split(',')[0])
def EXPORT_SEASON(asin=None, dispnotif=True): if not asin: asin = var.args.get('asin') for data in tvDB.lookupTVdb(asin, tbl='seasons', single=False): Info = listtv.ADD_SEASON_ITEM(data, onlyinfo=True) for seasonasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(seasonasin, rvalue='asin', name='seasonasin', single=False) for asin in asins: if asin: EXPORT_EPISODE(asin[0].split(',')[0], dispnotif=dispnotif) dispnotif = False
def EXPORT_SHOW(asin=False, dispnotif = True): SetupLibrary() if not asin: asin=common.args.asin for data in tvDB.lookupTVdb(asin, tbl='shows', single=False): Info = listtv.ADD_SHOW_ITEM(data, onlyinfo=True) directorname = os.path.join(TV_SHOWS_PATH, common.cleanName(Info['Title'])) CreateDirectory(directorname) for showasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(showasin, rvalue='asin', tbl='seasons', name='seriesasin', single=False) for asin in asins: if asin: EXPORT_SEASON(asin[0].split(',')[0])
def ListCont(export=False): import tv showonly = False rvalue = 'distinct *' if export: url = export export = True else: url = common.args.url mov = True if 'movie' in url else False if common.addon.getSetting('disptvshow') == 'true': showonly = True rvalue = 'seriesasin' cj = common.mechanizeLogin() if not cj: return False asins = common.SCRAP_ASINS(url, cj) if not asins: common.SetView('movies', 'movieview') return asinlist = [] for value in asins: ret = listmovie.LIST_MOVIES('asin', value, search=True, cmmode=1, export=export) if mov else 0 if ret == 0 and not mov: for seasondata in tv.lookupTVdb(value, tbl='seasons', rvalue=rvalue, single=False): if seasondata: if showonly: ret = 0 value = seasondata[0] for asin in tv.lookupTVdb(value, tbl='shows', rvalue='asin').split(','): if asin in asinlist: ret = 1 else: ret = 1 listtv.ADD_SEASON_ITEM(seasondata, disptitle=True, cmmode=1, export=export) if ret == 0 and not mov: listtv.LIST_TVSHOWS('asin', value, search=True, cmmode=1, export=export) asinlist.append(value) if not export: if mov: common.SetView('movies', 'movieview') else: common.SetView('tvshows', 'showview')
def ListCont(export=False): import tv showonly = False rvalue = 'distinct *' if export: url = export export = True else: url = args.get('url') mov = True if 'movie' in url else False if addon.getSetting('disptvshow') == 'true': showonly = True rvalue = 'seriesasin' cj = mechanizeLogin() if not cj: return False asins = SCRAP_ASINS(url, cj) if not asins: SetView('movies', 'movieview') return asinlist = [] for value in asins: ret = listmovie.LIST_MOVIES('asin', value, search=True, cmmode=1, export=export) if mov else 0 if ret == 0 and not mov: for seasondata in tv.lookupTVdb(value, tbl='seasons', rvalue=rvalue, single=False): if seasondata: if showonly: ret = 0 value = seasondata[0] for asin in tv.lookupTVdb(value, tbl='shows', rvalue='asin').split(','): if asin in asinlist: ret = 1 else: ret = 1 listtv.ADD_SEASON_ITEM(seasondata, disptitle=True, cmmode=1, export=export) if ret == 0 and not mov: listtv.LIST_TVSHOWS('asin', value, search=True, cmmode=1, export=export) asinlist.append(value) if not export: if mov: SetView('movies', 'movieview') else: SetView('tvshows', 'showview')
def EXPORT_SHOW(asin=None): if not asin: asin = args.get('asin') for data in tvDB.lookupTVdb(asin, tbl='shows', single=False): Info = listtv.ADD_SHOW_ITEM(data, onlyinfo=True) for showasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(showasin, rvalue='asin', tbl='seasons', name='seriesasin', single=False) for asin in asins: if asin: EXPORT_SEASON(asin[0].split(',')[0])
def EXPORT_SEASON(asin=None, dispnotif=True): if not asin: asin = args.get('asin') for data in tvDB.lookupTVdb(asin, tbl='seasons', single=False): Info = listtv.ADD_SEASON_ITEM(data, onlyinfo=True) for seasonasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(seasonasin, rvalue='asin', name='seasonasin', single=False) for asin in asins: if asin: EXPORT_EPISODE(asin[0].split(',')[0], dispnotif=dispnotif) dispnotif = False
def ListCont(): import tv mov = False showonly = False rvalue = 'distinct *' url = common.args.url if 'movie' in url: mov = True if common.addon.getSetting('disptvshow') == 'true': showonly = True rvalue = 'seriesasin' asins = common.SCRAP_ASINS(url) if not asins: common.SetView('movies') return asinlist = [] for value in asins: ret = 0 if mov: ret = listmovie.LIST_MOVIES('asin', value, search=True, cmmode=1) if ret == 0 and not mov: for seasondata in tv.lookupTVdb(value, tbl='seasons', rvalue=rvalue, single=False): if not seasondata: continue if showonly: ret = 0 value = seasondata[0] for asin in tv.lookupTVdb(value, tbl='shows', rvalue='asin').split(','): if asin in asinlist: ret = 1 else: ret = 1 listtv.ADD_SEASON_ITEM(seasondata, disptitle=True, cmmode=1) if ret == 0 and not mov: listtv.LIST_TVSHOWS('asin', value, search=True, cmmode=1) asinlist.append(value) if mov: common.SetView('movies') else: common.SetView('tvshows')
def RefreshList(): import tv import movies list_ = common.args.url mvlist = [] tvlist = [] pDialog = xbmcgui.DialogProgress() pDialog.create(common.__plugin__, common.getString(30117)) for asin in common.SCRAP_ASINS(common.movielib % list_): if not movies.lookupMoviedb(asin): mvlist.append(asin) for asin in common.SCRAP_ASINS(common.tvlib % list_): if not tv.lookupTVdb(asin, tbl='seasons'): tvlist.append(asin) if mvlist: movies.updateLibrary(mvlist) if tvlist: tv.addTVdb(False, tvlist) pDialog.close() if mvlist: movies.updateFanart() if tvlist: tv.updateFanart()
def EXPORT_EPISODE(asin=False, makeNFO=True, dispnotif=True): if not asin: asin = common.args.asin for data in tvDB.lookupTVdb(asin, single=False): Info = listtv.ADD_EPISODE_ITEM(data, onlyinfo=True) showname = common.cleanName(Info['TVShowTitle']) directorname = os.path.join(TV_SHOWS_PATH, showname) CreateDirectory(directorname) name = 'Season ' + str(Info['Season']) if dispnotif: SetupLibrary() common.Log('Amazon Export: %s %s' % (showname, name)) #Dialog.notification('Export', showname + ' ' + name, sound = False) dispnotif = False seasonpath = os.path.join(directorname, name) CreateDirectory(seasonpath) filename = 'S%02dE%02d - %s' % (Info['Season'], Info['Episode'], Info['Title']) strm_file = filename + ".strm" u = '%s?asin=<%s>&mode=<play>&name=<%s>&sitemode=<PLAYVIDEO>&adult=<%s>&trailer=<0>&selbitrate=<0>' % ( sys.argv[0], asin, urllib.quote_plus( Info['Title']), Info['isAdult']) SaveFile(strm_file, u, seasonpath) if makeNFO: nfo_file = filename + ".nfo" nfo = '<episodedetails>' nfo += streamDetails(Info) nfo += '</episodedetails>' SaveFile(nfo_file, nfo, seasonpath)
def EXPORT_EPISODE(asin=None, makeNFO=cr_nfo, dispnotif=True): if not asin: asin = args.get('asin') for data in tvDB.lookupTVdb(asin, single=False): Info = listtv.ADD_EPISODE_ITEM(data, onlyinfo=True) Info['Title'] = cleanName(Info['EpisodeName']) showname = cleanName(Info['TVShowTitle']) directorname = os.path.join(TV_SHOWS_PATH, showname) name = 'Season ' + str(Info['Season']) if dispnotif: SetupLibrary() Log('Amazon Export: %s %s' % (showname, name)) seasonpath = os.path.join(directorname, name) filename = '%s - S%02dE%02d - %s' % (showname, Info['Season'], Info['Episode'], Info['Title']) strm_file = filename + ".strm" u = '%s?%s' % (sys.argv[0], urllib.urlencode({ 'asin': asin, 'mode': 'play', 'name': '', 'sitemode': 'PLAYVIDEO', 'adult': Info['isAdult'], 'trailer': 0, 'selbitrate': 0 })) SaveFile(strm_file, u, seasonpath) if makeNFO: nfo_file = filename + u".nfo" nfo = u'<episodedetails>' nfo += streamDetails(Info) nfo += u'</episodedetails>' SaveFile(nfo_file, nfo, seasonpath)
def EXPORT_EPISODE(asin=None, makeNFO=cr_nfo, dispnotif=True): if not asin: asin = var.args.get('asin') for data in tvDB.lookupTVdb(asin, single=False): Info = listtv.ADD_EPISODE_ITEM(data, onlyinfo=True) Info['Title'] = cleanName(Info['EpisodeName']) showname = cleanName(Info['TVShowTitle']) directorname = os.path.join(TV_SHOWS_PATH, showname) name = 'Season ' + str(Info['Season']) if dispnotif: SetupLibrary() Log('Amazon Export: %s %s' % (showname, name)) seasonpath = os.path.join(directorname, name) filename = '%s - S%02dE%02d - %s' % (showname, Info['Season'], Info['Episode'], Info['Title']) strm_file = filename + ".strm" u = '%s?%s' % (sys.argv[0], urllib.urlencode({'asin': asin, 'mode': 'play', 'name': '', 'sitemode': 'PLAYVIDEO', 'adult': Info['isAdult'], 'trailer': 0, 'selbitrate': 0})) SaveFile(strm_file, u, seasonpath) if makeNFO: nfo_file = filename + u".nfo" nfo = '<episodedetails>' nfo += streamDetails(Info) nfo += '</episodedetails>' SaveFile(nfo_file, nfo, seasonpath)
def EXPORT_EPISODE(asin=False, makeNFO=True, dispnotif = True): if not asin: asin=common.args.asin for data in tvDB.lookupTVdb(asin, single=False): Info = listtv.ADD_EPISODE_ITEM(data, onlyinfo=True) showname = common.cleanName(Info['TVShowTitle']) directorname = os.path.join(TV_SHOWS_PATH, showname) CreateDirectory(directorname) name = 'Season '+str(Info['Season']) if dispnotif: SetupLibrary() common.Log('Amazon Export: %s %s' %(showname, name)) #dialog.notification('Export', showname + ' ' + name, sound = False) dispnotif = False seasonpath = os.path.join(directorname,name) CreateDirectory(seasonpath) filename = 'S%02dE%02d - %s' % (Info['Season'], Info['Episode'], Info['Title']) strm_file = filename + ".strm" u = '%s?asin=<%s>&mode=<play>&name=<%s>&sitemode=<PLAYVIDEO>&adult=<%s>&trailer=<0>&selbitrate=<0>' % (sys.argv[0], asin, urllib.quote_plus(Info['Title']), Info['isAdult']) SaveFile(strm_file, u, seasonpath) if makeNFO: nfo_file = filename + ".nfo" nfo = '<episodedetails>' nfo+= streamDetails(Info) nfo+= '</episodedetails>' SaveFile(nfo_file, nfo, seasonpath)
def RefreshList(): cj = common.mechanizeLogin() if not cj: return import tv import movies l = common.args.url mvlist = [] tvlist = [] pDialog = xbmcgui.DialogProgress() pDialog.create(common.__plugin__, common.getString(30117)) for asin in common.SCRAP_ASINS(common.movielib % l, cj): if not movies.lookupMoviedb(asin): mvlist.append(asin) for asin in common.SCRAP_ASINS(common.tvlib % l, cj): if not tv.lookupTVdb(asin, tbl='seasons'): tvlist.append(asin) if mvlist: movies.updateLibrary(mvlist) if tvlist: tv.addTVdb(False, tvlist, None) pDialog.close() if mvlist: movies.updateFanart() if tvlist: tv.updateFanart()
def RefreshList(): cj = mechanizeLogin() if not cj: return import tv import movies l = args.get('url') mvlist = [] tvlist = [] pDialog = xbmcgui.DialogProgress() pDialog.create(pluginname, getString(30117)) for asin in SCRAP_ASINS(movielib % l, cj): if not movies.lookupMoviedb(asin): mvlist.append(asin) for asin in SCRAP_ASINS(tvlib % l, cj): if not tv.lookupTVdb(asin, tbl='seasons'): tvlist.append(asin) if mvlist: movies.updateLibrary(mvlist) if tvlist: tv.addTVdb(False, tvlist, None) pDialog.close() if mvlist: movies.updateFanart() if tvlist: tv.updateFanart()
def ListCont(export=False): import tv mov = False showonly = False rvalue = "distinct *" if export: url = export export = True else: url = common.args.url if "movie" in url: mov = True if common.addon.getSetting("disptvshow") == "true": showonly = True rvalue = "seriesasin" asins = common.SCRAP_ASINS(url) if not asins: xbmcgui.Dialog().notification(common.__plugin__, common.getString(30199), sound=False) return asinlist = [] for value in asins: ret = 0 if mov: ret = listmovie.LIST_MOVIES("asin", value, search=True, cmmode=1, export=export) if ret == 0 and not mov: for seasondata in tv.lookupTVdb(value, tbl="seasons", rvalue=rvalue, single=False): if seasondata: if showonly: ret = 0 value = seasondata[0] for asin in tv.lookupTVdb(value, tbl="shows", rvalue="asin").split(","): if asin in asinlist: ret = 1 else: ret = 1 listtv.ADD_SEASON_ITEM(seasondata, disptitle=True, cmmode=1, export=export) if ret == 0 and not mov: listtv.LIST_TVSHOWS("asin", value, search=True, cmmode=1, export=export) asinlist.append(value) if not export: if mov: common.SetView("movies", "movieview") else: common.SetView("tvshows", "showview")
def EXPORT_SEASON(asin=None, dispnotif=True): SetupLibrary() if not asin: asin = common.args.asin for data in tvDB.lookupTVdb(asin, tbl='seasons', single=False): Info = listtv.ADD_SEASON_ITEM(data, onlyinfo=True) directorname = os.path.join(TV_SHOWS_PATH, common.cleanName(Info['Title'])) CreateDirectory(directorname) name = 'Season ' + str(Info['Season']) seasonpath = os.path.join(directorname, name) CreateDirectory(seasonpath) for seasonasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(seasonasin, rvalue='asin', name='seasonasin', single=False) for asin in asins: if asin: EXPORT_EPISODE(asin[0].split(',')[0], dispnotif=dispnotif) dispnotif = False
def EXPORT_SHOW(asin=False, dispnotif=True): SetupLibrary() if not asin: asin = common.args.asin for data in tvDB.lookupTVdb(asin, tbl='shows', single=False): Info = listtv.ADD_SHOW_ITEM(data, onlyinfo=True) directorname = os.path.join(TV_SHOWS_PATH, common.cleanName(Info['Title'])) CreateDirectory(directorname) for showasin in Info['Asins'].split(','): asins = tvDB.lookupTVdb(showasin, rvalue='asin', tbl='seasons', name='seriesasin', single=False) for asin in asins: if asin: EXPORT_SEASON(asin[0].split(',')[0])
def getSimilarities(): import tv data = getList(NumberOfResults=250,catalog='GetSimilarities',asin=common.args.asin) for title in data['message']['body']['titles']: asin = title['titleId'] if not listmovie.LIST_MOVIES('asin', asin, search=True): for seasondata in tv.lookupTVdb(asin, tbl='seasons', single=False): if seasondata: listtv.ADD_SEASON_ITEM(seasondata, disptitle=True) common.SetView('tvshows', 'showview')
def getSimilarities(): import tv data = getList(NumberOfResults=250, catalog="GetSimilarities", asin=common.args.asin) for title in data["message"]["body"]["titles"]: asin = title["titleId"] if not listmovie.LIST_MOVIES("asin", asin, search=True): for seasondata in tv.lookupTVdb(asin, tbl="seasons", single=False): if seasondata: listtv.ADD_SEASON_ITEM(seasondata, disptitle=True) common.SetView("tvshows", "showview")
def GetStreamInfo(asin): import movies import listmovie import tv import listtv moviedata = movies.lookupMoviedb(asin) if moviedata: return listmovie.ADD_MOVIE_ITEM(moviedata, onlyinfo=True) else: epidata = tv.lookupTVdb(asin) if epidata: return listtv.ADD_EPISODE_ITEM(epidata, onlyinfo=True) return {'Title': ''}
def ListCont(export=False): import tv mov = False showonly = False rvalue = 'distinct *' if export: url = export export = True else: url = common.args.url if 'movie' in url: mov = True if common.addon.getSetting('disptvshow') == 'true': showonly = True rvalue = 'seriesasin' asins = common.SCRAP_ASINS(url) if not asins: xbmcgui.Dialog().notification(common.__plugin__, common.getString(30199), sound = False) return asinlist = [] for value in asins: ret = 0 if mov: ret = listmovie.LIST_MOVIES('asin', value, search=True, cmmode=1, export=export) if ret == 0 and not mov: for seasondata in tv.lookupTVdb(value, tbl='seasons', rvalue=rvalue, single=False): if seasondata: if showonly: ret = 0 value = seasondata[0] for asin in tv.lookupTVdb(value, tbl='shows', rvalue='asin').split(','): if asin in asinlist: ret = 1 else: ret = 1 listtv.ADD_SEASON_ITEM(seasondata, disptitle=True, cmmode=1, export=export) if ret == 0 and not mov: listtv.LIST_TVSHOWS('asin', value, search=True, cmmode=1, export=export) asinlist.append(value) if not export: if mov: common.SetView('movies', 'movieview') else: common.SetView('tvshows', 'showview')
def LIST_TVSHOWS_CATS(): import tv as tvDB id_ = common.args.url if id_: asins = tvDB.lookupTVdb(id_, rvalue='asins', name='title', tbl='categories') epidb = tvDB.lookupTVdb('', name='asin', rvalue='asin, seasonasin', tbl='episodes', single=False) if not asins: return for asin in asins.split(','): seasonasin = None for epidata in epidb: if asin in str(epidata): seasonasin = epidata[1] break if not seasonasin: seasonasin = asin for seasondata in tvDB.loadTVSeasonsdb( seasonasin=seasonasin).fetchall(): ADD_SEASON_ITEM(seasondata, disptitle=True) common.SetView('seasons') else: for title in tvDB.lookupTVdb('', name='asins', tbl='categories', single=False): if title: common.addDir(title[0], 'listtv', 'LIST_TVSHOWS_CATS', title[0]) xbmcplugin.endOfDirectory(pluginhandle, updateListing=False)
def getFanart(asin): import tv fanart, poster = tv.lookupTVdb(asin, rvalue='fanart, poster', tbl='shows') if not fanart or fanart == common.na: fanart = poster return fanart, poster
def getFanart(asin, tbl='shows'): fanart, poster = tv.lookupTVdb(asin, rvalue='fanart, poster', tbl=tbl) if not fanart or fanart == na: fanart = poster return fanart, poster