Ejemplo n.º 1
0
def get_all_shows():
    tmdb3.set_key(api_key)
    tmdb3.set_cache('null')
    tmdb3.set_cache(filename='/full/path/to/cache') # the 'file' engine is assumed
    tmdb3.set_cache(filename='tmdb3.cache')         # relative paths are put in /tmp
    tmdb3.set_cache(engine='file', filename='~/.tmdb3cache')
    with open(names_file) as f:
        content = f.readlines()
    show_img_urls = []
    for raw in content:
        show_name = raw.replace("\n", "")
        print show_name
        (show, show_seasons, show_episodes) = get_show_data(show_name)
        with open(shows_json, 'a') as show_file:
            json.dump(show, show_file, sort_keys=True, indent=4, separators=(',', ': '))
            show_file.writelines(",\n")
        with open(seasons_json, 'a') as season_file:
            for show_season in show_seasons:
                json.dump(show_season, season_file, sort_keys=True, indent=4, separators=(',', ': '))
                season_file.writelines(",\n")
        with open(episodes_json, 'a') as episode_file:
            for show_episode in show_episodes:
                json.dump(show_episode, episode_file, sort_keys=True, indent=4, separators=(',', ': '))
                episode_file.writelines(",\n")

        show_seasons = None
        show_episodes = None
        show_img_urls.append((show['name'], show['remote_img_url'], show['img_filename']))

    return show_img_urls
Ejemplo n.º 2
0
	def tmdb_info(self):
		from tmdb3 import searchSeries, set_cache, set_key, set_locale, get_locale
		set_key('587c13e576f991c0a653f783b290a065')
		set_cache(filename='/tmp/tmdb3.cache')
		set_locale('en', 'us')
		_locale = get_locale()

		try:
			tmdb_results = searchSeries(self.title, first_air_date_year=self.year, locale=_locale)
			for _series in tmdb_results:
				if self.country:
					if not self.country in _series.origin_countries:
						continue
				if self.year:
					if not self.year == _series.first_air_date.year():
						continue
				if self.title == decode(_series.name):
					raise GetOutOfLoop(_series)
			raise SeriesNotFound("Series Not Found in TMDb: {}".format(self.title))
		except GetOutOfLoop, e:
			_series = e.message
			alias = {'name': 'title',
					'id': 'tmdb_id',
					'origin_countries': 'country'}
			for key in dir(_series):
				if key[:1] == '_': continue
				if key in alias: key2 = alias[key]
				else: key2  = key
				if not hasattr(self, key2):
					continue
				setattr(self, key2, decode(getattr(_series, key)))
Ejemplo n.º 3
0
def getMovie(query):
    key = '79f8797f2c2e527e4e396dfe9816a3cd'
    set_key(key)

    #Movie
    url = 'https://api.themoviedb.org/3/search/movie?api_key='
    url += key
    url += '&query=' + query
    url += '&include_adult=true'
    payload = "{}"
    response = requests.request("GET", url, data=payload)

    json1_data = json.loads(response.text)
    while (1):
        try:
            results = json1_data['results']
            break
        except KeyError:
            pass

    if (len(results) == 0):
        return (0, results)

    pops = []
    results = results[:3]
    for i in results:
        i = Movie(i['id'])
        mx = Movies()
        mx.set(movie=i)
        pops.append(mx)

    return (1, pops)
Ejemplo n.º 4
0
def main():
    set_key('c27cb71cff5bd76e1a7a009380562c62')

    parser = OptionParser()

#    parser.add_option('-v', "--version", action="store_true", default=False,
#                      dest="version", help="Display version and author")
    parser.add_option('-M', "--movielist", action="store_true", default=False,
                      dest="movielist", help="Get Movies matching search.")
    parser.add_option('-D', "--moviedata", action="store_true", default=False,
                      dest="moviedata", help="Get Movie data.")
    parser.add_option('-C', "--collection", action="store_true", default=False,
                      dest="collectiondata", help="Get Collection data.")
    parser.add_option( "-l", "--language", metavar="LANGUAGE", default=u'en',
                      dest="language", help="Specify language for filtering.")

    opts, args = parser.parse_args()

#    if opts.version:
#        buildVersion()

    if (len(args) != 1) or (args[0] == ''):
        sys.stdout.write('ERROR: tmdb3.py requires exactly one non-empty argument')
        sys.exit(1)

    if opts.movielist:
        buildList(args[0], opts.language)

    if opts.moviedata:
        buildSingle(args[0], opts.language)

    if opts.collectiondata:
        buildCollection(args[0], opts.language)
Ejemplo n.º 5
0
def get_list_by_name(zapros):
    set_key('c97c17e619252e35bad2e158d4211fcc')
    set_locale('ru', 'ru')
    set_cache(engine='file', filename='/home/swasher/kinobox/.tmdb3cache')

    results = searchMovie(zapros)
    answer=[]
    i=0
    for movie in results[0:10]:
        mov=kino()
        #print unicode(results[i])
        searchResult = results[i]
        mov.id=searchResult.id
        mov.title=searchResult.title
        mov.year=str(searchResult.releasedate)[0:4]
        mov.overview=searchResult.overview
        mov.url='http://www.themoviedb.org/movie/'+str(mov.id)
        mov.origname=searchResult.originaltitle
        try:
            mov.altname=searchResult.alternate_titles[0].title
        except:
            mov.altname=''
        try:
            mov.poster=searchResult.poster.geturl(size='w154')
        except:
            mov.poster=''
        answer.append(mov)
        i+=1
    return answer
Ejemplo n.º 6
0
    def __init__(self):
        addEvent('movie.info', self.getInfo, priority = 3)
        addEvent('movie.info_by_tmdb', self.getInfo)

        # Configure TMDB settings
        tmdb3.set_key(self.conf('api_key'))
        tmdb3.set_cache('null')
Ejemplo n.º 7
0
    def __init__(self):
        addEvent("movie.info", self.getInfo, priority=3)
        addEvent("movie.info_by_tmdb", self.getInfo)

        # Configure TMDB settings
        tmdb3.set_key(self.conf("api_key"))
        tmdb3.set_cache("null")
Ejemplo n.º 8
0
 def __init__(self, args):
     if args is None or "key" not in args or args["key"] is None or args[
             "key"] == "":
         logging.critical("Need a tmdb-key")
         raise RuntimeError("Need a tmdb key")
     tmdb_key = args["key"]
     tmdb3.set_key(tmdb_key)
Ejemplo n.º 9
0
def process_movies(dir):
    set_key(API_KEY) #store this key somewhere
    set_locale()

    dir = expand(dir)

    movies = list()
    moviesToDisplay = loadfromfile(dir)

    if not moviesToDisplay:
        moviesToDisplay = list()

    titles = list()

    for m in moviesToDisplay:
        titles.append(m.title)

    explore(dir)

    for f in fileset:
        if f.fulltitle in titles:
            continue

        result = searchMovie(f.fulltitle)

        if len(result) == 0:
            if f.filename not in notfound:
                notfound.append(f.filename)
            print "Couldn't find results for: " + f.fulltitle + " result = " + str(result)
            continue

        # print "**** Found results for: " + f.fulltitle + " result = " + str(result[0])

        movie = result[0] if len(result) > 0 else None
        movies.append(movie)

    for m in movies:
        if not m:
            continue

        if m.id in movieids:
            continue

        p = m.poster

        if p:
            d = DisplayMovie(m,  p.geturl('w154'),)
        else:
            d = DisplayMovie(m, '',)

        if m.id in movieids:
            continue

        pos = bisect.bisect(movieids, m.id)
        movieids.insert(pos, m.id)

        moviesToDisplay.append(d)

    writetofile(dir, moviesToDisplay)
    return sorted(moviesToDisplay, key=lambda x: x.movie.title)
Ejemplo n.º 10
0
def getRecTV(ID):
    #TV
    key = '79f8797f2c2e527e4e396dfe9816a3cd'
    set_key(key)

    url = 'https://api.themoviedb.org/3/tv/'
    url += str(ID) + '/recommendations?api_key='
    url += key
    payload = "{}"
    response = requests.request("GET", url, data=payload)

    json1_data = json.loads(response.text)
    while (1):
        try:
            results = json1_data['results']
            break
        except KeyError:
            pass
    results = results[0:2]

    pops = []
    for i in results:
        m = Series(i['id'])
        mx = TV()
        mx.set(tv=m)
        pops.append(mx)

    return pops
Ejemplo n.º 11
0
    def __init__(self):
        addEvent('movie.search', self.search, priority=2)
        addEvent('movie.info', self.getInfo, priority=2)
        addEvent('movie.info_by_tmdb', self.getInfo)

        # Configure TMDB settings
        tmdb3.set_key(self.conf('api_key'))
        tmdb3.set_cache('null')
Ejemplo n.º 12
0
def init_tmdb3(alternative_lang=None):
    tmdb3.set_key('1f834eb425728133b9a2c1c0c82980eb')
    tmdb3.set_cache('null')
    lng = alternative_lang or config.plugins.tmbd.locale.value
    try:
        tmdb3.set_locale(lng, lng.upper())
    except:
        tmdb3.set_locale('en', 'GB')
    return tmdb3
Ejemplo n.º 13
0
    def __init__(self):
        addEvent('movie.info', self.getInfo, priority = 1)
        addEvent('movie.info_by_tmdb', self.getInfo)
        
        addEvent('info.search', self.search, priority = 1)
        addEvent('movie.search', self.search, priority = 1)

        # Configure TMDB settings
        tmdb3.set_key(self.conf('api_key'))
        tmdb3.set_locale(self.conf('locale', None))
        tmdb3.set_cache('null')
Ejemplo n.º 14
0
def getPopular():
	key  = '79f8797f2c2e527e4e396dfe9816a3cd'
	set_key(key)


	#Movie
	url = 'https://api.themoviedb.org/3/movie/popular?api_key='
	url += key
	payload = "{}"
	response = requests.request("GET", url, data=payload)

	json1_data = json.loads(response.text)
	while(1):
		try:
			results = json1_data['results']
			break
		except KeyError:
			pass
	results = results[0:4]

	pops = []
	for i in results:
		m = Movie(i['id'])
		mx = Movies()
		mx.set(movie=m)
		pops.append(mx)


	#TV
	url = 'https://api.themoviedb.org/3/tv/popular?api_key='
	url += key
	payload = "{}"
	response = requests.request("GET", url, data=payload)

	json1_data = json.loads(response.text)
	while(1):
		try:
			results = json1_data['results']
			break
		except KeyError:
			pass
	results = results[0:4]

	for i in results:
		m = Series(i['id'])
		mx = TV()
		mx.set(tv = m)
		pops.append(mx)

	return pops
Ejemplo n.º 15
0
    def setUp(self):
        set_key(FAKE_API_KEY)
        if self.cache_file:
            set_cache(filename=self.cache_file)
        else:
            set_cache(engine='null')

        for mock_key in self.mock_requests:
            mock_json_file, mock_url = self.mock_data[mock_key]
            body = get_json_result(join(LOCALDIR, 'data', mock_json_file))
            HTTPretty.register_uri(HTTPretty.GET,
                                   mock_url.format(base_url=self.base_url,
                                                   api=self.api_key),
                                   body=body)
Ejemplo n.º 16
0
 def __init__(self, title, title_modifier, trailer_modifier):
     from tmdb3 import set_key
     from tmdb3 import set_cache
     from tmdb3 import searchMovie
     from tmdb3 import Movie, Collection, Person, Series
     set_cache('null')
     set_key('a7b2a24af9fbe91fc6003d4d111b3b37')
     self.search_results = searchMovie(
         title
     )  #self.search_results is a list returned by the searchMovie function after passing in the title variable.
     self.video_id = self.search_results[
         title_modifier].id  # to use any of the provided methods from tmdb3 we need to get the movie's ID.
     self.title = Movie(
         self.video_id).title  # method to return movies title.
Ejemplo n.º 17
0
	def __init__(self):
		log.trace('__init__ method: Started')

		super(CleanUp, self).__init__()

		trakt_auth_group = DadVision.cmdoptions.parser.add_argument_group("Profiles", description=None)
		trakt_auth_group.add_argument("-y", "--grumpy", dest="HostName",
			action="append_const", const="grumpy",
			help="Entries for Grumpy")
		trakt_auth_group.add_argument("-t", "--tigger", dest="HostName",
			action="append_const", const="tigger",
			help="Entires for Tigger")
		trakt_auth_group.add_argument("-g", "--goofy", dest="HostName",
			action="append_const", const="goofy",
			help="Entries for Goofy")
		trakt_auth_group.add_argument("-e", "--eeyore", dest="HostName",
			action="append_const", const="eeyore",
			help="Entries for Eeore")
		trakt_auth_group.add_argument("-p", "--pluto", dest="HostName",
			action="append_const", const="pluto",
			help="Entries for Pluto")

		trakt_options_group = DadVision.cmdoptions.parser.add_argument_group("Options", description=None)
		trakt_options_group.add_argument("-c", "--clear", dest="Clear", nargs='*',
			 action='store', default='None',
						 help='Clear/Delete all entries in requested area: shows, movies')
		trakt_options_group.add_argument("-l", "--list", dest="list", nargs='*',
			 action='store', default='None',
						 help='Clear/Delete all entries in requested area: shows, movies')

		tmdb3.set_key('587c13e576f991c0a653f783b290a065')
		tmdb3.set_cache(filename='tmdb3.cache')

		self.db = api.TVDB("959D8E76B796A1FB")
		#self.tmdbinfo = TMDBInfo()

		self._collectedShows = []
		self._watchedShows = []
		self._watchlistShows = []
		self._trakt_sdtv = []
		self._trakt_720P = []
		self._trakt_list = []

		self.errorLog = []

		return
Ejemplo n.º 18
0
def init_tmdb3():
    tmdb3.set_key(config['apikey'])
    tmdb3.set_cache('null')
    lng = config['locale']
    if lng == 'en':
        tmdb3.set_locale(lng, 'US')
    elif lng == 'el':
        tmdb3.set_locale(lng, 'GR')
    elif lng == 'cs':
        tmdb3.set_locale(lng, 'CZ')
    elif lng == 'da':
        tmdb3.set_locale(lng, 'DK')
    elif lng == 'uk':
        tmdb3.set_locale('en', 'GB')
    elif lng == 'fy':
        tmdb3.set_locale(lng, 'NL')
    else:
        tmdb3.set_locale(lng, lng.upper())
    print('tmdbv3 locale', tmdb3.get_locale())
    return tmdb3
Ejemplo n.º 19
0
 def __init__(self, title, title_modifier, trailer_modifier):
     Video.__init__(self, title, title_modifier, trailer_modifier)
     # was having trouble with inhereting the imported tmbd3 module from class video. So reimported it.
     from tmdb3 import set_key
     from tmdb3 import set_cache
     from tmdb3 import searchMovie
     from tmdb3 import Movie, Collection, Person, Series
     set_cache('null')
     set_key('a7b2a24af9fbe91fc6003d4d111b3b37')
     self.tagline = Movie(
         self.video_id
     ).tagline  # returns short 'tagline' description of movie.
     self.storyline = Movie(
         self.video_id).overview  # returns longer description of movie.
     self.runtime = Movie(self.video_id).runtime  # total runtime in minutes
     self.poster_image_url = Movie(self.video_id).poster.geturl(
     )  # returns url of .jpg of the movie poster
     self.trailer_youtube_url = Movie(
         self.video_id).youtube_trailers[trailer_modifier].geturl(
         )  # youtube trailer.
     self.release_date = Movie(self.video_id).releasedate
Ejemplo n.º 20
0
def init_tmdb3(alternative_lang=None):
    import tmdb3
    tmdb3.set_key('1f834eb425728133b9a2c1c0c82980eb')
    tmdb3.set_cache('null')
    lng = alternative_lang or config.plugins.tmbd.locale.value
    if lng == 'en':
        tmdb3.set_locale(lng, 'US')
    elif lng == 'el':
        tmdb3.set_locale(lng, 'GR')
    elif lng == 'cs':
        tmdb3.set_locale(lng, 'CZ')
    elif lng == 'da':
        tmdb3.set_locale(lng, 'DK')
    elif lng == 'uk':
        tmdb3.set_locale('en', 'GB')
    elif lng == 'fy':
        tmdb3.set_locale(lng, 'NL')
    else:
        try:
            tmdb3.set_locale(lng, lng.upper())
        except:
            tmdb3 = None
    return tmdb3
Ejemplo n.º 21
0
def init_tmdb3(alternative_lang=None):
    import tmdb3
    tmdb3.set_key('1f834eb425728133b9a2c1c0c82980eb')
    tmdb3.set_cache('null')
    lng = alternative_lang or config.plugins.tmbd.locale.value
    if lng == 'en':
        tmdb3.set_locale(lng, 'US')
    elif lng == 'el':
        tmdb3.set_locale(lng, 'GR')
    elif lng == 'cs':
        tmdb3.set_locale(lng, 'CZ')
    elif lng == 'da':
        tmdb3.set_locale(lng, 'DK')
    elif lng == 'uk':
        tmdb3.set_locale('en', 'GB')
    elif lng == 'fy':
        tmdb3.set_locale(lng, 'NL')
    else:
        try:
            tmdb3.set_locale(lng, lng.upper())
        except:
            tmdb3 = None
    return tmdb3
Ejemplo n.º 22
0
    def tmdb_info(self):
        from tmdb3 import searchSeries, set_cache, set_key, set_locale, get_locale
        set_key('587c13e576f991c0a653f783b290a065')
        set_cache(filename='/tmp/tmdb3.cache')
        set_locale('en', 'us')
        _locale = get_locale()

        try:
            tmdb_results = searchSeries(self.title,
                                        first_air_date_year=self.year,
                                        locale=_locale)
            for _series in tmdb_results:
                if self.country:
                    if not self.country in _series.origin_countries:
                        continue
                if self.year:
                    if not self.year == _series.first_air_date.year():
                        continue
                if self.title == decode(_series.name):
                    raise GetOutOfLoop(_series)
            raise SeriesNotFound("Series Not Found in TMDb: {}".format(
                self.title))
        except GetOutOfLoop, e:
            _series = e.message
            alias = {
                'name': 'title',
                'id': 'tmdb_id',
                'origin_countries': 'country'
            }
            for key in dir(_series):
                if key[:1] == '_': continue
                if key in alias: key2 = alias[key]
                else: key2 = key
                if not hasattr(self, key2):
                    continue
                setattr(self, key2, decode(getattr(_series, key)))
Ejemplo n.º 23
0
# web serve
import sqlite3
from flask import Flask, request, session, g, redirect, url_for, abort, render_template, flash
app = Flask(__name__)

# database config
DATABASE = os.path.dirname(__file__) + 'moviecat.db'
DEBUG = True
SECRET_KEY = '123omgsecret321'
USERNAME = '******'
PASSWORD = '******'

# movie
from tmdb3 import Movie, set_key
set_key('a158113d4e983474500180058409852c')


def updateGlobalPath():
    # get directory and set as GLOBALPATH
    cur = g.db.execute('select location from directories where id=1 limit 1')
    GLOBALPATH = cur.fetchone()

def recurseIt(path):
    # cur = g.db.execute('select id from movies where (filename=? and location=?) limit 1', [os.path.basename(path), os.path.dirname(path)])
    # result = cur.fetchone()

    # if result is not None:
    #     return {}
    # else:
    list = {}
Ejemplo n.º 24
0
from tmdb3 import set_key
import json
import requests
import os

API = '259f7fc6b26292afaf6ec1dabe6fdd6a'
set_key(API)

from tmdb3 import set_cache
set_cache('null')
set_cache(filename='/full/path/to/cache')  # the 'file' engine is assumed
set_cache(filename='tmdb3.cache')  # relative paths are put in /tmp
set_cache(engine='file', filename='~/.tmdb3cache')

from tmdb3 import get_locale, set_locale
set_locale()
print(get_locale())
#locale has bet set to english and United States...yes
print
print
'''import urllib2 #import Request#, urlopen headers = {"Accept": "application/json"}

request = urllib2.Request("https://api.themoviedb.org/3/search/movie?api_key="+API+"&query=Foxx")
responsebody = urllib2.urlopen(request).read()
print responsebody
print
print'''

import tmdb3
search = 'Hanks'
a = tmdb3.searchPerson(search)
Ejemplo n.º 25
0
''' Define Movie class and backend code to get attributes '''

import webbrowser
from tmdb3 import set_key
# change name of imported class to avoid conflict with our class
from tmdb3 import Movie as theMovie
import os
import datetime

# Make sure this is set as an environment variable!
set_key(os.getenv('TMDB_API_KEY'))

# Movie class that takes TMDB ID to initialize,
# and fills in attributes through TMDB lookups


class Movie(object):
    def __init__(self, movie_ID):
        self.title = theMovie(movie_ID).title
        self.tagline = theMovie(movie_ID).tagline
        self.release_year = theMovie(movie_ID).releasedate.strftime("%Y")
        self.poster_image_url = theMovie(movie_ID).poster.geturl()
        self.trailer_youtube_url = theMovie(
            movie_ID).youtube_trailers[0].geturl()

    def show_trailer(self):
        webbrowser.open(self.trailer_youtube_url)
Ejemplo n.º 26
0
from csv import DictReader
from pprint import pprint
import pickle
from collections import Counter
import json

import tmdb3

RATINGS_PATH = './ratings-dominic.csv'
FILMS_WITH_KEYWORDS_PATH = './films-with-keywords.p'
KEYWORD_MAP_PATH = './keywords.json'

tmdb3.set_key('95a5e0f59034242b05d55145c16a1c35')


class Film(object):
    pass


def extract_films_from_ratings_file(path):
    with open(path) as f:
        reader = DictReader(f)
        films = []
        for row in reader:
            film = Film()
            film.imdb_id = row['const']
            film.rating = row['You rated']
            film.title = row['Title']
            films.append(film)
    return films
Ejemplo n.º 27
0
from tmdb3 import set_key
from tmdb3 import get_locale, set_locale
from tmdb3 import set_cache
from tmdb3 import Movie
import collections
import psycopg2
import csv
import tmdbsimple as tmdb
import distance
path="D:\hiwimov\meta_Movies_&_TV.txt"
path1='D:\hiwimov/tempo.txt'
import unicodedata
conn = psycopg2.connect(database="miner", user="******", password="******", host="192.168.32.161", port="5432")
cursor = conn.cursor()
temp = 1.0
set_key('**********')
tmdb.API_KEY = '*********'
set_cache('null')

with open(path,'r') as file:
    for i in file:
     asin_matches = re.findall("(?<=\"asin\"\: \")[0-9A-Za-z\'\s()-\:\;\.]{1,}",i)
     im_url=re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', i)
     title_matches = re.findall("(?<=\"title\"\: \")[0-9A-Za-z\'\s()\-\:\;\.]{1,}",i)
     for title_amazon in title_matches:
         for id_amazon in asin_matches:
           for url_amazon in im_url:

                search = tmdb.Search()
                response = search.movie(query=title_amazon)
                for s in search.results:
Ejemplo n.º 28
0
# web serve
import sqlite3
from flask import Flask, request, session, g, redirect, url_for, abort, render_template, flash
app = Flask(__name__)

# database config
DATABASE = os.path.dirname(__file__) + 'moviecat.db'
DEBUG = True
SECRET_KEY = '123omgsecret321'
USERNAME = '******'
PASSWORD = '******'

# movie
from tmdb3 import Movie, set_key
set_key('a158113d4e983474500180058409852c')


def updateGlobalPath():
    # get directory and set as GLOBALPATH
    cur = g.db.execute('select location from directories where id=1 limit 1')
    GLOBALPATH = cur.fetchone()


def recurseIt(path):
    # cur = g.db.execute('select id from movies where (filename=? and location=?) limit 1', [os.path.basename(path), os.path.dirname(path)])
    # result = cur.fetchone()

    # if result is not None:
    #     return {}
    # else:
Ejemplo n.º 29
0
import re
import tmdb3
import pymongo
import datetime
from urllib2 import Request, urlopen, URLError

api_key='7fb362b555787b7add015e35fcadad84'
tmdb3.set_key(api_key)
client = pymongo.MongoClient('localhost', 27017)
db = client['MoviesDB']
movies = db['Movies']

def findMovieById(mId):
  try:
    searchResults = movies.find({"_data.id": mId})
    #Return searchResults.toList or something equivalent
    return list(searchResults)
    ##for movie in searchResults:
    ##  print movie
    """
    request = Request('https://api.themoviedb.org/3/movie/'+mId+'?api_key='+api_key)
    movies.insert_one(); ///to be continued"""
  except pymongo.errors.PyMongoError as e:
    print "ERROR: ",e

def findMovieByKeyword(keyword):
  try:
    #Use search array
    keyword = keyword.lower()
    regx = re.compile(keyword, re.IGNORECASE)
Ejemplo n.º 30
0
##  but WITHOUT ANY WARRANTY; without even the implied warranty of
##  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
##  GNU General Public License for more details.
##
##  You should have received a copy of the GNU General Public License
##  along with this program; if not, write to the Free Software
##  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
##
##  I have added a copy of the GPL in the file LICENSE

import sys, os, os.path, optparse, lxml.etree, re, subprocess, types, urllib
from string import *
from cStringIO import StringIO
from t4.debug import log, debug
import tmdb3 as tmdb
tmdb.set_key("a888a20b801aeefde1ba41a932898d48")

options = None


def present_movie(idx, movie):
    print idx,
    if type(movie.releasedate) == types.UnicodeType:
        year = movie.releasedate

    elif not movie.releasedate:
        year = "unknown"
    else:
        year = str(movie.releasedate.year)

    print "%s (%s)" % (
Ejemplo n.º 31
0
import api_config
import nltk

from tmdb3 import set_key
from tmdb3 import searchPerson
from tmdb3 import searchMovie
from random import randrange

set_key(api_config.API_KEY)

articles = ['and', 'a', 'the', 'as']

def return_metadata(actor, genre):
  try:
    movies = searchMovie(str(genre))
    genre_movie = movies[randrange(len(movies))]
    featured_actor = searchPerson(str(actor))[0]
  except IndexError:
    print 'Genre or actor entered is not valid. Please try again'
    return None

  actor_roles = featured_actor.roles
  rand_role = actor_roles[randrange(len(actor_roles))]
  actor_movie = searchMovie(str(rand_role).split('\'')[-2])[0]


  output = ''
  output += str(genre_movie.title) + '\n' + str(actor_movie.title)
  output += '\n'
  output += genre_movie.overview + '\n' + actor_movie.overview
  
Ejemplo n.º 32
0
import media
from tmdb3 import set_key
from tmdb3 import set_cache
from tmdb3 import Movie as Movie_db
import os
import fresh_tomatoes

set_key('XXX')  #Insert API key for TMDB3 website
set_cache('null')

list_of_movies = []
for i in range(11, 23):

    #Taking 12 movies from Movie_db and storing the data in list_of movies

    curr_movie = Movie_db(i)

    title = (curr_movie.title)
    story_line = (curr_movie.overview)
    poster = (curr_movie.poster.geturl())
    trailer = (curr_movie.youtube_trailers[0].geturl())
    movie_instance = media.Movie(title, story_line, poster, trailer)

    list_of_movies.append(
        movie_instance)  #adding instances of Movie() class to list_of_movies

os.chdir(r"C:\Users\venkata.pushpak\Documents\Udacity\FSD\Project 1")
fresh_tomatoes.open_movies_page(list_of_movies)
Ejemplo n.º 33
0
from flask import Flask, session, redirect, url_for, request, render_template
from flask_debugtoolbar import DebugToolbarExtension
from flask.ext.mongoengine import MongoEngine


from tmdb3 import set_key

app = Flask('project') 
app.config['SECRET_KEY'] = 'random' 
app.config['MONGODB_SETTINGS'] = {'DB': 'my_movie_library'} 
app.config['SMTP_USER'] = "" 
app.config['SMTP_PASSWORD'] = "" 
app.config['SMTP_SERVER'] = "smtp.gmail.com:587" 
app.config['TMDB_API_KEY'] = "" 

set_key(app.config['TMDB_API_KEY']) 

# app.config["MONGODB_SETTINGS"] = {'DB': "my_movie_library",
								   # 'host': '192.168.1.89'}
# app.debug = True
# toolbar = DebugToolbarExtension(app)
db = MongoEngine(app)
# app.debug = True
# toolbar = DebugToolbarExtension(app)
def security(role=None):
	def wrapper(func):
		@wraps(func)
		def security_check(*args,**kwargs):
			import json	
			user = None
			if 'user' in session:
Ejemplo n.º 34
0
''' Define Movie class and backend code to get attributes '''

import webbrowser
from tmdb3 import set_key
# change name of imported class to avoid conflict with our class
from tmdb3 import Movie as theMovie
import os
import datetime

# Make sure this is set as an environment variable!
set_key(os.getenv('TMDB_API_KEY'))

# Movie class that takes TMDB ID to initialize, 
# and fills in attributes through TMDB lookups

class Movie(object):

    def __init__(self, movie_ID):
        self.title = theMovie(movie_ID).title
        self.tagline = theMovie(movie_ID).tagline
        self.release_year = theMovie(movie_ID).releasedate.strftime("%Y")
        self.poster_image_url = theMovie(movie_ID).poster.geturl()
        self.trailer_youtube_url = theMovie(
            movie_ID).youtube_trailers[0].geturl()

    def show_trailer(self):
        webbrowser.open(self.trailer_youtube_url)
Ejemplo n.º 35
0
 def __init__(self, api_key, movie_id):
     tmbd.set_key(api_key)
     tmbd.set_cache('null')
     tmbd.set_locale('en', 'US')
     self.movie = tmbd.Movie(movie_id)
Ejemplo n.º 36
0
	for p in d.cast[:10]:
		newPerson      = pmovie.person(m.cast)
		newPerson.id   = p.id
		newPerson.name = p.name
		m.cast         = newPerson

	return m

# Main

args = parseArguments()
db = psql.movieDB(dbFilename)

set_cache(engine='file', filename='/tmp/tmdb.cache')
set_key('f5a1e6218573b468f59d654ebe6269f9')

mFlask = Flask(__name__)
@mFlask.route('/')
def rootEndpoint():
	return 'Pvice root endpoint\n'

@mFlask.route('/search/<pattern>')
def searchEndpoint(pattern):
	return 'Search endpoint'

@mFlask.route('/movieSearch/<movie>')
def movieSearchEndpoint(movie):

	search = searchMovie(movie)
	start = 0
Ejemplo n.º 37
0
 def __init__(self):
     set_key('2bc810beb95dc1c694f6a935b16e4f16')
Ejemplo n.º 38
0
 def init_tmdb():
     """Initialize TMDb api"""
     tmdb3.set_key(config.cfg['API_KEY'])
     tmdb3.set_cache(engine='file', filename=config.cfg['CACHEPATH']+'/.tmdb3cache')
     tmdb3.set_locale(config.cfg['LANG'], config.cfg['COUNTRY'])
Ejemplo n.º 39
0
# encoding: utf-8

import csv
import tmdb3
from itertools import izip
from collections import defaultdict
from tmdb3 import searchMovie
from tmdb3 import set_key
from tmdb3 import Movie
set_key('')
'''
columns = defaultdict(list) # each value in each column is appended to a list

with open('movieTitle.csv') as f:
    reader = csv.DictReader(f) # read rows into a dictionary format
    for row in reader: # read a row as {column1: value1, column2: value2,...}
        for (k,v) in row.items(): # go over each column name and value
            columns[k].append(v) # append the value into the appropriate list
                                 # based on column name k
'''
imdbid = []
with open('imdb.csv', 'rb') as f:
    reader = csv.reader(f)
    next(reader)  # Ignore first row

    for row in reader:
        imdbid.append(row[0])

j = 0
imdb_real = []
name = []
Ejemplo n.º 40
0
import json
from random import shuffle

from .models import genre
from .models import customUser
# Create your views here.

from django.views.decorators.cache import cache_page
from django.core.cache import cache

from tmdb3 import Movie
from tmdb3 import Series
from tmdb3 import set_key
key = '79f8797f2c2e527e4e396dfe9816a3cd'
set_key(key)


def slide():
    movies_tv = popular.getPopular()
    shuffle(movies_tv)

    first_movie = movies_tv[0]
    movies_tv = movies_tv[1:]

    return first_movie, movies_tv


def popularMovies(GenreMovieList):
    popMovies = []
    for genre in GenreMovieList:
Ejemplo n.º 41
0
        'NAME': 'movienight/data/db.sqlite',
        # The following settings are not used with sqlite3:
        'USER': '',
        'PASSWORD': '',
        'HOST': '',
        'PORT': '',
    }
}

GAME_OF_THRONES = os.path.isfile(
    os.path.join(PROJECT_PATH, 'game.of.thrones.txt')
)

# The API key needs to be set as soon as possible, so why not here?
with open('tmdb3.api.txt') as _api:
    tmdb3.set_key(_api.read().strip())

# Hosts/domain names that are valid for this site; required if DEBUG is False
# See https://docs.djangoproject.com/en/1.5/ref/settings/#allowed-hosts
ALLOWED_HOSTS = []

# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be available on all operating systems.
# In a Windows environment this must be set to your system time zone.
TIME_ZONE = 'Europe/Stockholm'

# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
LANGUAGE_CODE = 'en-us'
Ejemplo n.º 42
0
    def __init__(self):
        log.trace('__init__ method: Started')

        super(CleanUp, self).__init__()

        trakt_auth_group = DadVision.cmdoptions.parser.add_argument_group(
            "Profiles", description=None)
        trakt_auth_group.add_argument("-y",
                                      "--grumpy",
                                      dest="HostName",
                                      action="append_const",
                                      const="grumpy",
                                      help="Entries for Grumpy")
        trakt_auth_group.add_argument("-t",
                                      "--tigger",
                                      dest="HostName",
                                      action="append_const",
                                      const="tigger",
                                      help="Entires for Tigger")
        trakt_auth_group.add_argument("-g",
                                      "--goofy",
                                      dest="HostName",
                                      action="append_const",
                                      const="goofy",
                                      help="Entries for Goofy")
        trakt_auth_group.add_argument("-e",
                                      "--eeyore",
                                      dest="HostName",
                                      action="append_const",
                                      const="eeyore",
                                      help="Entries for Eeore")
        trakt_auth_group.add_argument("-p",
                                      "--pluto",
                                      dest="HostName",
                                      action="append_const",
                                      const="pluto",
                                      help="Entries for Pluto")

        trakt_options_group = DadVision.cmdoptions.parser.add_argument_group(
            "Options", description=None)
        trakt_options_group.add_argument(
            "-c",
            "--clear",
            dest="Clear",
            nargs='*',
            action='store',
            default='None',
            help='Clear/Delete all entries in requested area: shows, movies')
        trakt_options_group.add_argument(
            "-l",
            "--list",
            dest="list",
            nargs='*',
            action='store',
            default='None',
            help='Clear/Delete all entries in requested area: shows, movies')

        tmdb3.set_key('587c13e576f991c0a653f783b290a065')
        tmdb3.set_cache(filename='tmdb3.cache')

        self.db = api.TVDB("959D8E76B796A1FB")
        #self.tmdbinfo = TMDBInfo()

        self._collectedShows = []
        self._watchedShows = []
        self._watchlistShows = []
        self._trakt_sdtv = []
        self._trakt_720P = []
        self._trakt_list = []

        self.errorLog = []

        return
Ejemplo n.º 43
0
from __future__ import unicode_literals

from django.conf import settings
import tmdb3


tmdb3.set_key(settings.TMDB_API_KEY)
tmdb3.set_locale('hu', 'hu')
Ejemplo n.º 44
0
import tmdb3 as t # uses https://github.com/wagnerrp/pytmdb3
import pickle
import sys

t.set_key('YOUR API KEY')
b = t.searchMovie('a')
movies = []
for y in range(len(b)):
    try:
        sys.stdout.write(str(y)+',')
        x = b[y]
        # we want recent movies
        if x.releasedate.year < 1970:
            continue
        # and movies in English
        if 'English' not in [y.name for y in x.languages]:
            continue
        # and decent movies
        if x.releases['US'].certification not in [u'G',u'PG',u'PG-13']:
            continue
        movie = dict()
        movie['title'] = x.title
        movie['year'] = x.releasedate.year
        movie['date'] = x.releasedate
        movie['director'] = [y.name for y in x.crew if y.job == 'Director'][0] or 'Director Unknown'
        movie['poster'] = x.poster.geturl('w185')
        movie['rating'] = x.userrating
        movie['overview'] = x.overview
        movies.append(movie)
        print len(movies)
    except KeyboardInterrupt:
Ejemplo n.º 45
0
##  This program is distributed in the hope that it will be useful,
##  but WITHOUT ANY WARRANTY; without even the implied warranty of
##  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
##  GNU General Public License for more details.
##
##  You should have received a copy of the GNU General Public License
##  along with this program; if not, write to the Free Software
##  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
##
##  I have added a copy of the GPL in the file LICENSE

import sys, os, os.path, optparse, lxml.etree, re, subprocess, types, urllib
from string import *
from cStringIO import StringIO
from t4.debug import log, debug
import tmdb3 as tmdb; tmdb.set_key("a888a20b801aeefde1ba41a932898d48")

options = None

def present_movie(idx, movie):
    print idx,
    if type(movie.releasedate) == types.UnicodeType:
        year = movie.releasedate
        
    elif not movie.releasedate:
        year = "unknown"
    else:
        year = str(movie.releasedate.year)
        
    print "%s (%s)" % ( movie.title, year, )
Ejemplo n.º 46
0
def getGenreList(genresMovie, genresTV):
    key = '79f8797f2c2e527e4e396dfe9816a3cd'
    set_key(key)

    #Movie
    GenreMovieList = {}
    for genre in genresMovie:
        url = 'https://api.themoviedb.org/3/discover/movie?api_key='
        extra = '&sort_by=popularity.desc&include_adult=true&with_genres='
        url += key
        genreID = genreNameDict[genre]

        extra += str(genreID)
        url += extra

        payload = "{}"
        response = requests.request("GET", url, data=payload)

        json1_data = json.loads(response.text)
        while (1):
            try:
                results = json1_data['results']
                break
            except KeyError:
                pass

        movie_list = []
        spare = []
        for i in results:
            if (i['genre_ids'][0] == genreID):
                try:
                    m = Movie(i['id'])
                    mx = Movies()
                    mx.set(movie=m, spGenre=genre)
                    movie_list.append(mx)
                except:
                    pass
            else:
                try:
                    if (i['genre_ids'][1] == genreID):
                        try:
                            m = Movie(i['id'])
                            mx = Movies()
                            mx.set(movie=m, spGenre=genre)
                            movie_list.append(mx)
                        except:
                            pass
                    else:
                        try:
                            m = Movie(i['id'])
                            mx = Movies()
                            mx.set(movie=m, spGenre=genre)
                            spare.append(mx)
                        except:
                            pass
                except:
                    pass

        movie_list += spare
        GenreMovieList[genre] = movie_list

    #TV
    GenreTVList = {}
    for genre in genresTV:
        url = 'https://api.themoviedb.org/3/discover/tv?api_key='
        extra = '&sort_by=popularity.desc&with_genres='
        url += key

        genreID = genreTVNameDict[genre]

        extra += str(genreID)
        url += extra

        payload = "{}"
        response = requests.request("GET", url, data=payload)

        json1_data = json.loads(response.text)
        while (1):
            try:
                results = json1_data['results']
                break
            except KeyError:
                pass

        tv_list = []
        spare = []
        for i in results:
            if (i['genre_ids'][0] == genreID):
                try:
                    m = Series(i['id'])
                    mx = TV()
                    mx.set(tv=m, spGenre=genre)
                    tv_list.append(mx)
                except:
                    pass
            else:
                try:
                    if (i['genre_ids'][1] == genreID):
                        try:
                            m = Series(i['id'])
                            mx = TV()
                            mx.set(tv=m, spGenre=genre)
                            tv_list.append(mx)
                        except:
                            pass
                    else:
                        try:
                            m = Series(i['id'])
                            mx = TV()
                            mx.set(tv=m, spGenre=genre)
                            spare.append(mx)
                        except:
                            pass
                except:
                    pass

        tv_list += spare
        GenreTVList[genre] = tv_list

    return GenreMovieList, GenreTVList
Ejemplo n.º 47
0
def add_tmdb_movie(id):
    set_key('c97c17e619252e35bad2e158d4211fcc')
    set_locale('ru', 'ru')
    set_cache(engine='file', filename='/home/swasher/kinobox/.tmdb3cache')

    m = Movi()

    try:
        mov = Movie(id)
    except:
        pass
        #обработать (не нашло фильм, или ппц ваще) sys.exc_info()[0].__dict__

    m.title=mov.title
    m.overview=mov.overview
    m.origtitle=mov.originaltitle
    m.tmdb_id=mov.id
    m.year=str(mov.releasedate)[0:4]
    m.seen=False
    m.seendate=datetime.date.today()
    m.myrating=0
    m.stored=True
    m.adddate=datetime.date.today()
    m.tagline=mov.tagline
    m.save()

    try:
        poster = urllib.urlretrieve(mov.poster.geturl(size='w92'))
        m.poster.save('poster_'+'w92_'+str(id)+'.jpg', File(open(poster[0])))
    except:
        #отсутствует постер
        #print sys.exc_info()[0].__dict__
        #{'__module__': 'tmdb3.tmdb_exceptions', '__doc__': None}
        #print 'cant retrieve'
        # если не обрабатывать - просто получается пустое поле, его можно обработать дальше
        poster = urllib.urlretrieve(mov.poster.geturl(size='w92'))
        m.poster.save('poster_'+'w92_'+str(id)+'.jpg', File(open(poster[0])))
        pass

    try:
        posterbig = urllib.urlretrieve(mov.poster.geturl(size='w500'))
        m.posterbig.save('poster_'+'w500_'+str(id)+'.jpg', File(open(posterbig[0])))
    except:
        pass

    #get counries
    countries = mov.countries
    l = ''
    for country in countries:
        if country.name=='United States of America':
            l+='USA'+', '
        else:
            l+=country.name+', '
    m.countries=l[:-2]

    genres = mov.genres
    genre_list=[]
    for genre in genres:
        genre_list.append(genre.name)

    for genre in genre_list:
        try:
            # пытаемся найти жанр по названию
            gen=Genre.objects.filter(genre=genre)[0]
        except:
            # Если не найден, возникает исключение, и мы создаем новый жанр.
            # Исключение возникает из-за попытки взять нулевой элемент пустого тупла
            g=Genre(genre=genre)
            g.save()
            gen=Genre.objects.filter(genre=genre)[0]
        m.genres.add(gen)
        m.save()

    cast=mov.cast
    for actor in cast:
        try:
            pers=Person.objects.filter(name=actor.name)[0]
        except:
            #если актера actor.name нет в базе, то вызывется исключение, актер добавляется, и обзывется как pers
            p = Person(name=actor.name, tmdb_id=actor.id)
            p.save()
            pers=Person.objects.filter(name=actor.name)[0]

            #если актера до сих пор небыло, то добавляем фото
            #todo в дальнейшем это убрать - сделать даунлоад фото, когда актер star-рится
            try:
                photo = urllib.urlretrieve(actor.profile.geturl(size='w45'))
                p.photo.save('photo_'+'w45_'+str(actor.id)+'.jpg', File(open(photo[0])))
            except:
                #отсутствует постер
                #print sys.exc_info()[0].__dict__
                #{'__module__': 'tmdb3.tmdb_exceptions', '__doc__': None}
                #print 'cant retrieve'
                # если не обрабатывать - просто получается пустое поле, его можно обработать дальше
                pass

        # В это месте у нас есть объекты фильма 'm' и актера 'pers'
        d = Duty(person=pers, movi=m, department='', character=actor.character, job='', order=actor.order)
        d.save()
Ejemplo n.º 48
0
from tmdb3 import searchMovie

from urlparse import urlparse

from flask import session as login_session
import random
import string
from oauth2client.client import flow_from_clientsecrets
from oauth2client.client import FlowExchangeError
import httplib2
import json
from flask import make_response
import requests
# Using the movie DB API to get info about the movie
# for more info visit https://www.themoviedb.org/
set_key('b42f313de752b4082729b83599e87b3f')

engine = create_engine('sqlite:///catalogmovi.db')
Base.metadata.bind = engine
DBSession = sessionmaker(bind=engine)
session = DBSession()

app = Flask(__name__)

CLIENT_ID = json.loads(open('client_secrets.json',
                            'r').read())['web']['client_id']


@app.route('/login')
def showLogin():
    state = ''.join(
Ejemplo n.º 49
0
# -*- coding: UTF-8 -*-
from urllib2 import urlopen, HTTPError
from HTMLParser import HTMLParser
from traceback import print_exc
from xml.dom import minidom
from sys import exit
import datetime
import re
import tmdb3
import tvdb_api
tmdb3.set_key('50d210cbe126f116d13b83239d0f18d0')
tmdb3.set_locale('en', 'US')


class rewiredBotPlugin():
    """IMDb.com plugin"""
    def __init__(self, parent, *args):
        self.parent = parent
        self.defines = "!imdb"
        self.privs = {'!imdb': 1}

    def run(self, params, *args):
        """!imdb: Usage: !imdb imdbid/Text
        Searches imdb.com for movies and tv shows.
        When a search term is given. It will respond with a list
        of results to choose from. When called with a imdbid instead:
        !imdb tt0099785
        the plugin will look up the movie on imdb and post a overview into chat.
        ___"""
        if not params:
            return "Usage: !imdb SearchText"
Ejemplo n.º 50
0
import sys

# Import the tmdb package.
try:
    from tmdb3 import set_key, searchMovie
except ImportError:
    print 'You need to install the pytmdb3 package!'
    sys.exit(1)

if len(sys.argv) != 2:
    print 'Only one argument is required:'
    print '  %s "movie title"' % sys.argv[0]
    sys.exit(2)

# This key is taken from the XBMC TMDb scraper
set_key('57983e31fb435df4df77afb854740ea9')

in_encoding = sys.stdin.encoding or sys.getdefaultencoding()
out_encoding = sys.stdout.encoding or sys.getdefaultencoding()

title = unicode(sys.argv[1], in_encoding, 'replace')

print "Retrieving movie \"%s\" from TMDb" % title

res = searchMovie(title)
if len(res) == 0:
    print "\"%s\" not found. Try a different one." % title
    sys.exit(0)

m = res[0]
Ejemplo n.º 51
0
class TMDB(Movie):

	tmdb3.set_key('587c13e576f991c0a653f783b290a065')
	tmdb3.set_cache(filename='tmdb3.cache')

	def __init__(self, **kwargs):

		super(TMDB, self).__init__(**kwargs)

		return

	def tmdb(self):

		if self.year:
			_movie = '{} ({})'.format(self.title, self.year)
			try:
				self.review_entries(list(tmdb3.searchMovieWithYear(_movie)))
				return
			except MovieNotFound:
				pass
		self.review_entries(list(tmdb3.searchMovie(self.title)))
		return self

	def review_entries(self, tmdb_results):

		"""
		:param tmdb_results:
		:param chkyear:
		:return: :raise MovieNotFound:
		"""

		try:
			for _movie in tmdb_results:
				_title = decode(_movie.title)
				if self.year:
					if matching(" ".join([_title.lower(), str(_movie.releasedate.year)]),
								" ".join([self.title.lower(), str(self.year)])):
						self.title = _title
						raise GetOutOfLoop(_movie)
				if matching(_title.lower(), self.title.lower()):
					self.title = _title
					raise GetOutOfLoop(_movie)
				else:
				# Check Alternate Titles: list(AlternateTitle) alternate_titles
					for _alternate_title in _movie.alternate_titles:
						log.trace('Check Alternate Titles: {}'.format(_alternate_title))
						_alternate_title = decode(_alternate_title)
						if matching(_alternate_title, self.title):
							_movie.alternate_titles.append(_title)
							self.title = _alternate_title
							self.alternate_title = _movie.alternate_titles
							raise GetOutOfLoop(_movie)
			log.warn("Movie Not Found in TMDb: {}".format(self.title))
			raise MovieNotFound("Movie Not Found in TMDb: {}".format(self.title))
		except GetOutOfLoop, e:
			_movie = e.message
			if _movie.releasedate:
				if self.year:
					if (-2 < (self.year - _movie.releasedate.year) < 2):
						self.year = _movie.releasedate.year
					else:
						msg = "Movie name found, Years too far apart: {} - {}/{}".format(self.title,
																						 self.year,
																						 _movie.releasedate.year)
						log.warning(msg)
						raise MovieNotFound(msg)
				else:
					self.year = _movie.releasedate.year

			log.trace("Movie Located in TMDB")
			self.tmdb_id = _movie.id
			self.imdb_id = _movie.imdb
			self.slug = self.title
			self.cast = _movie.cast
			if hasattr(_movie, "alternate_titles"):
				self.alternate_title = _movie.alternate_titles

		return
Ejemplo n.º 52
0
import urlparse
from flask import Flask, render_template, request
from tmdb3 import set_key, searchMovie, Movie

app = Flask(__name__)

# Set api key for TMDb
set_key('TMDB_API_KEY')

# Home page 
@app.route('/', methods=['GET', 'POST'])
def home():
    return render_template('index.html')


# Search & results
@app.route('/search/', methods=['GET', 'POST'])
def search():
    # Get query from url
    query = request.query_string[2:]

    if query != '':
        try:
            # TODO: Catch IO_err
            res = searchMovie(query)
            movies = []
            
            # Filter results
            for i in res:
                try:
                    i.img = i.poster.geturl('w342')
Ejemplo n.º 53
0
import SocketServer

from handler import HCIRequestHandler
from tmdb3 import set_key
from tmdb3 import set_cache

Handler = HCIRequestHandler
server = SocketServer.TCPServer(('0.0.0.0', 8080), Handler)
set_key('43b0a2c458adc3c7d5968151b9599958')
set_cache('null')  #TODO consider adding cache mechanism

server.serve_forever()
Ejemplo n.º 54
0
def init_movie():
    #set_cache('null')
    set_key(FB_SECRETS['tmdb_key'])
Ejemplo n.º 55
0
import media
# Visit https://github.com/wagnerrp/pytmdb3 for more info
from tmdb3 import set_key
from tmdb3 import set_cache
from tmdb3 import set_locale
from tmdb3 import List


# Set personal key to API access
set_key('0ba74440350bf374cee4a9b89f7249a8')

# Caches data to limit excessive usage against API server
set_cache('null')
set_cache(filename='/full/path/to/cache')
set_cache(filename='tmdb3.cfrom random import randintache')
set_cache(engine='file', filename='~/.tmdb3cache')

# Set language and country configuration for API data
set_locale('en', 'us')


now_playing = []
coming_soon = []
modern_classics = []
classics = []


for x in range(0, len(List(35555).members)):
    media_title = List(35555).members[x].title.replace(' ', '_')
    media_title = media.Media(
        List(35555).members[x].title,
Ejemplo n.º 56
0
def init_tmdb():
    tmdb3.set_key(settings.TMDB_KEY)
    tmdb3.set_cache(filename=settings.TMDB_CACHE_PATH)
    tmdb3.set_locale(*settings.LOCALES[settings.LANGUAGE_CODE])
    return tmdb3
if __name__ == '__main__':
    ## PREPARE
    args = parse_args()
    audioFile = os.path.abspath(args.audioFile)
    audioLen = len_audio(args.audioFile)    #s
    if audioLen < config.finalFrameTime + config.frameTime:
        die('Audio not long enough, quitting.')
    # audiolen becomes  longer the actual length of the audio file but the
    # length of audio to fill with backdrop images
    audioLen -= config.finalFrameTime + config.fadeInTime
    tempDir = tempfile.mkdtemp(prefix="moviepodcastslideshow")
    slideshowTextfile = os.path.join(tempDir, 'slideshow.txt')

    ## GET BACKDROPS
    # Find the movie we're looking for
    tmdb.set_key(tmdbauth.apiKey)
    res = tmdb.searchMovie(args.movieTitle, year=args.year)
    if not res:
        die('No results found for "' + args.movieTitle + '", qutting.')
    # If we're here then we have search results
    ourMovie = res[0]
    print('Selecting...')
    print('<<<', ourMovie.title,
          '(' + str(ourMovie.releasedate.year) + ')',
          '>>>')
    # We have the movie we want now
    # Get backdrops urls
    backdrops = ourMovie.backdrops
    if not backdrops: die('No backdrops found for this film, quitting.')
    # Get as many images as needed for our audio length, but no more.
    numFramesWanted = int(audioLen / config.frameTime)
Ejemplo n.º 58
0
from flask import Flask, request, render_template, redirect, url_for
app = Flask(__name__)

from tmdb3 import Movie, set_key, searchMovie, searchPerson, searchStudio
set_key('8756c376f367fb966d3c0dec2c69e1c5')

@app.route("/")
def root():
  return render_template('base.html', title='Main', pageActive='home')

#@app.route("/noresults/")
#def noresults():
#  return render_template('no_results.html')

@app.route("/movies/", methods=['POST', 'GET'])
def movies():
  if request.method == 'POST':
    keyword = request.form['search field']
    res = searchMovie(keyword)
    if len(res) == 0:
      return redirect(url_for('noresults'))
    else:
      #return ',,,'.join(m.title for m in res)  
      return render_template('movies.html', title='Moviesss', pageActive='movies', movies=res)
  else:
    return render_template('movies.html', title='Moviesss', pageActive='movies')

@app.route("/people/", methods=['POST', 'GET'])
def people():
  if request.method == 'POST':
    keyword = request.form['keyword']
# Movie Trailer Main File
# By Or Grunebaum
# Modified from Python Course
import fresh_tomatoes
import media

# enable api by setting key for movie database
from tmdb3 import set_key, set_cache
set_key('')
set_cache('null')

# import movie module from the movie database
from tmdb3 import Movie
# add all my favourite movies
list_movies = list()
list_movies.extend([Movie(862),Movie(1542),Movie(671),Movie(83542),Movie(957),
                    Movie(10156),Movie(8005),Movie(658), Movie(10671),
                    Movie(813),Movie(86838),Movie(640),Movie(98),
                    Movie(616),Movie(1669)])

# create movies list to store information needed for the movie trailer website
# (using the Fresh Tomatoes Script) provided by udacity
movies = list()

# loop through the list of movies selected, and add them to movies list to be 
# displayed. Specifically we are adding the title, poster, and youtube url. 
for number in range(len(list_movies)):
    movies.append(media.Movie(list_movies[number].title,
                        list_movies[number].poster.geturl(),
                        list_movies[number].youtube_trailers[0].geturl()))