def ASIN_ADD(title): isAdult = False stars = None votes = None poster = None runtime = None premiered = None year = None mpaa = '' genres = '' asin, isHD, isPrime, audio = common.GET_ASINS(title) movietitle = title['title'] plot = title.get('synopsis') fanart = title.get('heroUrl') director = title.get('director') if 'runtime' in title: runtime = str(title['runtime']['valueMillis'] / 60000) if 'releaseOrFirstAiringDate' in title: premiered = title['releaseOrFirstAiringDate']['valueFormatted'].split('T')[0] year = int(premiered.split('-')[0]) studio = title.get('studioOrNetwork') if 'regulatoryRating' in title: if title['regulatoryRating'] == 'not_checked': mpaa = common.getString(30171) else: mpaa = common.getString(30170) + title['regulatoryRating'] actors = title.get('starringCast') if 'genres' in title: genres = ' / '.join(title['genres']).replace('_', ' & ').replace('Musikfilm & Tanz', 'Musikfilm, Tanz') trailer = title.get('trailerAvailable') if 'customerReviewCollection' in title: stars = float(title['customerReviewCollection']['customerReviewSummary']['averageOverallRating']) * 2 votes = str(title['customerReviewCollection']['customerReviewSummary']['totalReviewCount']) elif 'amazonRating' in title: if 'rating' in title['amazonRating']: stars = float(title['amazonRating']['rating']) * 2 if 'count' in title['amazonRating']: votes = str(title['amazonRating']['count']) if 'restrictions' in title: for rest in title['restrictions']: if rest['action'] == 'playback' and rest['type'] == 'ageVerificationRequired': isAdult = True break if 'images' in title['formats'][0]: thumbnailUrl = title['formats'][0]['images'][0]['uri'] thumbnailFilename = thumbnailUrl.split('/')[-1] thumbnailBase = thumbnailUrl.replace(thumbnailFilename, '') poster = thumbnailBase + thumbnailFilename.split('.')[0] + '.jpg' titelnum = 0 if 'bbl test' not in movietitle.lower() and 'test movie' not in movietitle.lower(): moviedata = [common.cleanData(x) for x in [asin, None, common.checkCase(movietitle), trailer, poster, plot, director, None, runtime, year, premiered, studio, mpaa, actors, genres, stars, votes, fanart, isPrime, isHD, isAdult, None, None, audio]] c = MovieDB.cursor() num = c.execute('insert or ignore into movies values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)', moviedata).rowcount if num: MovieDB.commit() titelnum += num return titelnum
def ASIN_ADD(titles, asins=None): count = 0 if asins: titles = appfeed.ASIN_LOOKUP(asins)['message']['body']['titles'] for title in titles: stars = votes = seriesasin = mpaa = premiered = year = genres = None seasontotal = episodetotal = season = 0 isAdult = False contentType = 'SERIES' if asins else title['contentType'] asin, isHD, isPrime, audio = common.GET_ASINS(title) plot = title.get('synopsis') studio = title.get('studioOrNetwork') actors = title.get('starringCast') fanart = title.get('heroUrl') if 'images' in title['formats'][0].keys(): try: thumbnailUrl = title['formats'][0]['images'][0]['uri'] thumbnailFilename = thumbnailUrl.split('/')[-1] thumbnailBase = thumbnailUrl.replace(thumbnailFilename, '') poster = thumbnailBase + thumbnailFilename.split('.')[0] + '.jpg' except: pass if 'releaseOrFirstAiringDate' in title: premiered = title['releaseOrFirstAiringDate']['valueFormatted'].split('T')[0] year = int(premiered.split('-')[0]) if 'regulatoryRating' in title: if title['regulatoryRating'] == 'not_checked': mpaa = common.getString(30171) else: mpaa = 'FSK ' + title['regulatoryRating'] if 'genres' in title.keys(): genres = ' / '.join(title['genres']).replace('_', ' & ').replace('Musikfilm & Tanz', 'Musikfilm, Tanz') if 'customerReviewCollection' in title: stars = float(title['customerReviewCollection']['customerReviewSummary']['averageOverallRating']) * 2 votes = str(title['customerReviewCollection']['customerReviewSummary']['totalReviewCount']) elif 'amazonRating' in title: stars = float(title['amazonRating']['rating']) * 2 if 'rating' in title['amazonRating'] else None votes = str(title['amazonRating']['count']) if 'count' in title['amazonRating'] else None if contentType == 'SERIES': seriestitle = title['title'] if 'childTitles' in title: seasontotal = title['childTitles'][0]['size'] showdata = [common.cleanData(x) for x in [asin, common.checkCase(seriestitle), plot, studio, mpaa, genres, actors, premiered, year, stars, votes, seasontotal, 0, audio, isHD, isPrime, None, None, None, poster, None, fanart]] count += addDB('shows', showdata) elif contentType == 'SEASON': season = title['number'] if title['ancestorTitles']: try: seriestitle = title['ancestorTitles'][0]['title'] seriesasin = title['ancestorTitles'][0]['titleId'] except: pass else: seriesasin = asin.split(',')[0] seriestitle = title['title'] if 'childTitles' in title: episodetotal = title['childTitles'][0]['size'] imdburl = title.get('imdbUrl') seasondata = [common.cleanData(x) for x in [asin, seriesasin, season, common.checkCase(seriestitle), plot, actors, studio, mpaa, genres, premiered, year, stars, votes, episodetotal, audio, None, None, isHD, isPrime, imdburl, poster, None, fanart, False]] count += addDB('seasons', seasondata) elif contentType == 'EPISODE': episodetitle = title['title'] seasontitle = '' if 'ancestorTitles' in title: for content in title['ancestorTitles']: if content['contentType'] == 'SERIES': seriesasin = content.get('titleId') seriestitle = content.get('title', '') elif content['contentType'] == 'SEASON': season = content.get('number') seasonasin = content.get('titleId') seasontitle = content.get('title', '') if not seriesasin: seriesasin = seasonasin seriestitle = seasontitle episode = title.get('number', 0) runtime = str(title['runtime']['valueMillis'] / 60000) if 'runtime' in title else None if 'restrictions' in title: for rest in title['restrictions']: if rest['action'] == 'playback' and rest['type'] == 'ageVerificationRequired': isAdult = True episodedata = [common.cleanData(x) for x in [asin, seasonasin, seriesasin, common.checkCase(seriestitle), season, episode, poster, mpaa, actors, genres, common.checkCase(episodetitle), studio, stars, votes, fanart, plot, premiered, year, runtime, isHD, isPrime, isAdult, audio]] count += addDB('episodes', episodedata) return count
def ASIN_ADD(titles, asins=False): if asins: titles = appfeed.ASIN_LOOKUP(asins)['message']['body']['titles'] count = 0 for title in titles: poster = plot = premiered = year = studio = mpaa = fanart = imdburl = None actors = genres = stars = votes = seriesasin = runtime = None seasontotal = episodetotal = episode = 0 isAdult = False if asins: contentType = 'SERIES' else: contentType = title['contentType'] asin, isHD, isPrime, audio = common.GET_ASINS(title) if 'images' in title['formats'][0]: try: thumbnailUrl = title['formats'][0]['images'][0]['uri'] thumbnailFilename = thumbnailUrl.split('/')[-1] thumbnailBase = thumbnailUrl.replace(thumbnailFilename, '') poster = thumbnailBase + thumbnailFilename.split('.')[0] + '.jpg' except Exception: pass plot = title.get('synopsis') if 'releaseOrFirstAiringDate' in title: premiered = title['releaseOrFirstAiringDate']['valueFormatted'].split('T')[0] year = int(premiered.split('-')[0]) studio = title.get('studioOrNetwork') if 'regulatoryRating' in title: if title['regulatoryRating'] == 'not_checked': mpaa = common.getString(30171) else: mpaa = common.getString(30170) + title['regulatoryRating'] actors = title.get('starringCast') if 'genres' in title: genres = ' / '.join(title['genres']).replace('_', ' & ').replace('Musikfilm & Tanz', 'Musikfilm, Tanz') if 'customerReviewCollection' in title: stars = float(title['customerReviewCollection']['customerReviewSummary']['averageOverallRating']) * 2 votes = str(title['customerReviewCollection']['customerReviewSummary']['totalReviewCount']) elif 'amazonRating' in title: if 'rating' in title['amazonRating']: stars = float(title['amazonRating']['rating']) * 2 if 'count' in title['amazonRating']: votes = str(title['amazonRating']['count']) fanart = title.get('heroUrl') if contentType == 'SERIES': seriestitle = title['title'] if 'childTitles' in title: seasontotal = title['childTitles'][0]['size'] showdata = [common.cleanData(x) for x in [asin, common.checkCase(seriestitle), plot, studio, mpaa, genres, actors, premiered, year, stars, votes, seasontotal, 0, audio, isHD, isPrime, None, None, None, poster, None, fanart]] count += addDB('shows', showdata) elif contentType == 'SEASON': season = title['number'] if title['ancestorTitles']: try: seriestitle = title['ancestorTitles'][0]['title'] seriesasin = title['ancestorTitles'][0]['titleId'] except Exception: pass else: seriesasin = asin.split(',')[0] seriestitle = title['title'] if 'childTitles' in title: episodetotal = title['childTitles'][0]['size'] # if title.has_key('drakeUrl'): # imdburl = title['drakeUrl'] imdburl = title.get('imdbUrl') seasondata = [common.cleanData(x) for x in [asin, seriesasin, season, common.checkCase(seriestitle), plot, actors, studio, mpaa, genres, premiered, year, stars, votes, episodetotal, audio, None, None, isHD, isPrime, imdburl, poster, None, fanart]] count += addDB('seasons', seasondata) elif contentType == 'EPISODE': episodetitle = title['title'] if 'ancestorTitles' in title: for content in title['ancestorTitles']: if content['contentType'] == 'SERIES': seriesasin = content.get('titleId') seriestitle = content.get('title') elif content['contentType'] == 'SEASON': season = content.get('number') seasonasin = content.get('titleId') seasontitle = content.get('title') if not seriesasin: seriesasin = seasonasin seriestitle = seasontitle episode = title.get('number') if 'runtime' in title: runtime = str(title['runtime']['valueMillis'] / 60000) if 'restrictions' in title: for rest in title['restrictions']: if rest['action'] == 'playback': if rest['type'] == 'ageVerificationRequired': isAdult = True episodedata = [common.cleanData(x) for x in [asin, seasonasin, seriesasin, common.checkCase(seriestitle), season, episode, poster, mpaa, actors, genres, common.checkCase(episodetitle), studio, stars, votes, fanart, plot, premiered, year, runtime, isHD, isPrime, isAdult, audio]] count += addDB('episodes', episodedata) return count
def ASIN_ADD(title): isAdult = False stars = None votes = None poster = None runtime = None premiered = None year = None mpaa = '' genres = '' asin, isHD, isPrime, audio = common.GET_ASINS(title) movietitle = title['title'] plot = title.get('synopsis') fanart = title.get('heroUrl') director = title.get('director') if 'runtime' in title: runtime = str(title['runtime']['valueMillis'] / 60000) if 'releaseOrFirstAiringDate' in title: premiered = title['releaseOrFirstAiringDate']['valueFormatted'].split( 'T')[0] year = int(premiered.split('-')[0]) studio = title.get('studioOrNetwork') if 'regulatoryRating' in title: if title['regulatoryRating'] == 'not_checked': mpaa = common.getString(30171) else: mpaa = common.getString(30170) + title['regulatoryRating'] actors = title.get('starringCast') if 'genres' in title: genres = ' / '.join(title['genres']).replace('_', ' & ').replace( 'Musikfilm & Tanz', 'Musikfilm, Tanz') trailer = title.get('trailerAvailable') if 'customerReviewCollection' in title: stars = float(title['customerReviewCollection'] ['customerReviewSummary']['averageOverallRating']) * 2 votes = str(title['customerReviewCollection']['customerReviewSummary'] ['totalReviewCount']) elif 'amazonRating' in title: if 'rating' in title['amazonRating']: stars = float(title['amazonRating']['rating']) * 2 if 'count' in title['amazonRating']: votes = str(title['amazonRating']['count']) if 'restrictions' in title: for rest in title['restrictions']: if rest['action'] == 'playback' and rest[ 'type'] == 'ageVerificationRequired': isAdult = True break if 'images' in title['formats'][0]: thumbnailUrl = title['formats'][0]['images'][0]['uri'] thumbnailFilename = thumbnailUrl.split('/')[-1] thumbnailBase = thumbnailUrl.replace(thumbnailFilename, '') poster = thumbnailBase + thumbnailFilename.split('.')[0] + '.jpg' titelnum = 0 if 'bbl test' not in movietitle.lower( ) and 'test movie' not in movietitle.lower(): moviedata = [ common.cleanData(x) for x in [ asin, None, common.checkCase(movietitle), trailer, poster, plot, director, None, runtime, year, premiered, studio, mpaa, actors, genres, stars, votes, fanart, isPrime, isHD, isAdult, None, None, audio ] ] c = MovieDB.cursor() num = c.execute( 'insert or ignore into movies values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)', moviedata).rowcount if num: MovieDB.commit() titelnum += num return titelnum
def ASIN_ADD(title): titelnum = 0 isAdult = False stars = None votes = None trailer = False fanart = None poster = None asin, isHD, isPrime, audio = common.GET_ASINS(title) movietitle = title['title'] if title.has_key('synopsis'): plot = title['synopsis'] else: plot = None if title.has_key('director'): director = title['director'] else: director = None if title.has_key('runtime'): runtime = str(title['runtime']['valueMillis']/60000) else: runtime = None if title.has_key('releaseOrFirstAiringDate'): premiered = title['releaseOrFirstAiringDate']['valueFormatted'].split('T')[0] year = int(premiered.split('-')[0]) else: premiered = None year = None if title.has_key('studioOrNetwork'): studio = title['studioOrNetwork'] else: studio = None if title.has_key('regulatoryRating'): if title['regulatoryRating'] == 'not_checked': mpaa = common.getString(30171) else: mpaa = common.getString(30170) + title['regulatoryRating'] else: mpaa = '' if title.has_key('starringCast'): actors = title['starringCast'] else: actors = None if title.has_key('genres'): genres = ' / '.join(title['genres']).replace('_', ' & ').replace('Musikfilm & Tanz', 'Musikfilm, Tanz') else: genres = '' if title.has_key('trailerAvailable'): trailer = title['trailerAvailable'] if title.has_key('customerReviewCollection'): stars = float(title['customerReviewCollection']['customerReviewSummary']['averageOverallRating'])*2 votes = str(title['customerReviewCollection']['customerReviewSummary']['totalReviewCount']) elif title.has_key('amazonRating'): if title['amazonRating'].has_key('rating'): stars = float(title['amazonRating']['rating'])*2 if title['amazonRating'].has_key('count'): votes = str(title['amazonRating']['count']) if title.has_key('restrictions'): for rest in title['restrictions']: if rest['action'] == 'playback': if rest['type'] == 'ageVerificationRequired': isAdult = True if title['formats'][0].has_key('images'): try: thumbnailUrl = title['formats'][0]['images'][0]['uri'] thumbnailFilename = thumbnailUrl.split('/')[-1] thumbnailBase = thumbnailUrl.replace(thumbnailFilename,'') poster = thumbnailBase+thumbnailFilename.split('.')[0]+'.jpg' except: poster = None if title.has_key('heroUrl'): fanart = title['heroUrl'] if 'bbl test' not in movietitle.lower() or 'test movie' not in movietitle.lower(): moviedata = [common.cleanData(x) for x in [asin,None,common.checkCase(movietitle),trailer,poster,plot,director,None,runtime,year,premiered,studio,mpaa,actors,genres,stars,votes,fanart,isPrime,isHD,isAdult,None,None,audio]] titelnum += addMoviedb(moviedata) return titelnum
def ASIN_ADD(title): titelnum = 0 isAdult = False stars = None votes = None trailer = False fanart = None poster = None asin, isHD, isPrime, audio = common.GET_ASINS(title) movietitle = title['title'] if title.has_key('synopsis'): plot = title['synopsis'] else: plot = None if title.has_key('director'): director = title['director'] else: director = None if title.has_key('runtime'): runtime = str(title['runtime']['valueMillis']/60000) else: runtime = None if title.has_key('releaseOrFirstAiringDate'): premiered = title['releaseOrFirstAiringDate']['valueFormatted'].split('T')[0] year = int(premiered.split('-')[0]) else: premiered = None year = None if title.has_key('studioOrNetwork'): studio = title['studioOrNetwork'] else: studio = None if title.has_key('regulatoryRating'): if title['regulatoryRating'] == 'not_checked': mpaa = common.getString(30171) else: mpaa = common.getString(30170) + title['regulatoryRating'] else: mpaa = '' if title.has_key('starringCast'): actors = title['starringCast'] else: actors = None if title.has_key('genres'): genres = ' / '.join(title['genres']).replace('_', ' & ').replace('Musikfilm & Tanz', 'Musikfilm, Tanz') else: genres = '' if title.has_key('trailerAvailable'): trailer = title['trailerAvailable'] if title.has_key('customerReviewCollection'): stars = float(title['customerReviewCollection']['customerReviewSummary']['averageOverallRating'])*2 votes = str(title['customerReviewCollection']['customerReviewSummary']['totalReviewCount']) elif title.has_key('amazonRating'): if title['amazonRating'].has_key('rating'): stars = float(title['amazonRating']['rating'])*2 if title['amazonRating'].has_key('count'): votes = str(title['amazonRating']['count']) if title.has_key('restrictions'): for rest in title['restrictions']: if rest['action'] == 'playback': if rest['type'] == 'ageVerificationRequired': isAdult = True if title['formats'][0].has_key('images'): try: thumbnailUrl = title['formats'][0]['images'][0]['uri'] thumbnailFilename = thumbnailUrl.split('/')[-1] thumbnailBase = thumbnailUrl.replace(thumbnailFilename,'') poster = thumbnailBase+thumbnailFilename.split('.')[0]+'.jpg' except: poster = None if title.has_key('heroUrl'): fanart = title['heroUrl'] if not 'bbl test' in movietitle.lower() and not 'test movie' in movietitle.lower(): moviedata = [common.cleanData(x) for x in [asin,None,common.checkCase(movietitle),trailer,poster,plot,director,None,runtime,year,premiered,studio,mpaa,actors,genres,stars,votes,fanart,isPrime,isHD,isAdult,None,None,audio]] titelnum += addMoviedb(moviedata) return titelnum