Пример #1
0
def addElementsmapsDetails(catalog, file1, file2):
    """
    Carga los elementos de los mapas relacionados con los details.
    """
    file1 = config.file_dir + file1
    dialect = csv.excel()
    dialect.delimiter = ";"
    input_file1 = csv.DictReader(open(file1, encoding="utf-8"),
                                 dialect=dialect)
    file2 = config.file_dir + file2
    dialect = csv.excel()
    dialect.delimiter = ";"
    input_file2 = csv.DictReader(open(file2, encoding="utf-8"),
                                 dialect=dialect)
    for movie1 in input_file1:
        lt.addLast(catalog['Data']['details'], movie1)
        md.addCompany(movie1, catalog)
        md.addGenre(movie1, catalog)
    iterator = it.newIterator(catalog['Data']['details'])
    for movie2 in input_file2:
        movie1 = it.next(iterator)
        lt.addLast(catalog['Data']['casting'], movie2)
        md.addDirector(movie2, movie1, catalog)
        md.addActor(movie2, movie1, catalog)
        md.addCountry(movie2, movie1, catalog)
Пример #2
0
def loadDirectors(catalog):
    """
    Carga todos los directores
    """
    t1_start = process_time() #tiempo inicial
    castingfile = cf.data_dir + 'themoviesdb/MoviesCastingRaw-small.csv'
    
    dialect = csv.excel()
    dialect.delimiter=";"
    with open(castingfile, encoding="utf-8") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        for row in spamreader: 
            model.addDirector (catalog, row)
    t1_stop = process_time() #tiempo inicial
    print("Tiempo de ejecución carga directores",t1_stop-t1_start," segundos")
Пример #3
0
def loadCasting(catalog):
    """
    Carga todos los directores
    """
    t1_start = process_time()  #tiempo inicial
    castingfile = cf.data_dir + 'MoviesCastingRaw-small.csv'

    dialect = csv.excel()
    dialect.delimiter = ";"
    with open(castingfile, encoding="utf-8-sig") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        for row in spamreader:
            model.addDirector(catalog, row)  #cargar los directores
            model.addActor(catalog, row)  #cargar los actores
            model.directorToId(catalog,
                               row)  #adicionar el director al mapa de ids
    t1_stop = process_time()  #tiempo final
    print("Tiempo de ejecución carga directores", t1_stop - t1_start,
          " segundos")
Пример #4
0
def loadDirectors(catalog, sep=';'):
    """
    Carga los libros del archivo.  Por cada libro se toman sus autores y por 
    cada uno de ellos, se crea en la lista de autores, a dicho autor y una
    referencia al libro que se esta procesando.
    """
    t1_start = process_time()  #tiempo inicial
    #castingfile = cf.data_dir + 'themoviesdb/MoviesCastingRaw-small.csv'
    castingfile = cf.data_dir + 'themoviesdb/AllMoviesCastingRaw.csv'
    dialect = csv.excel()
    dialect.delimiter = sep
    with open(castingfile, encoding="utf-8-sig") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        for row in spamreader:
            # Se adiciona el director al mapa  de directores
            model.addDirector(catalog, row)

    t1_stop = process_time()  #tiempo final
    print("Tiempo de ejecución carga directores:", t1_stop - t1_start,
          " segundos")
Пример #5
0
def loadDirectors(catalog):
    '''
    Carga todos los directores
    '''
    t1_start = process_time() #tiempo inicial
    castingfile = cf.data_dir + 'themoviesdb/MoviesCastingRaw-small.csv'
    
    dialect = csv.excel()
    dialect.delimiter=';'
    with open(castingfile, encoding='utf-8') as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        movie_counter = 1
        for row in spamreader:
            director_name = row['director_name']
            pos = lt.isPresent(director_name, catalog['directors'], equal)
            if pos != 0:
                model.updateDirector(catalog, pos, movie_counter)
            else:
                model.addDirector(catalog, row, movie_counter)
            movie_counter += 1
    t1_stop = process_time() #tiempo inicial
    print('Tiempo de ejecución carga directores',t1_stop-t1_start,' segundos')
    model.endDirectorslist(catalog['directors'])
Пример #6
0
def loadMovies(catalog, sep=';'):
    """
    Carga las películas del archivo.  Por cada película se toman sus directores y por 
    cada uno de ellos se crea una referencia a la película que se esta procesando.
    """
    t1_start = process_time()  #tiempo inicial
    moviesfile = cf.data_dir + '/Movies/MoviesCastingRaw-small.csv'
    dialect = csv.excel()
    dialect.delimiter = sep
    with open(moviesfile, encoding="utf-8-sig") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)
        for row in spamreader:
            """ AQUI SE AGREGA ÚNICAMENTE LA INFORMACIÓN DE CASTING """
            # Se obtienen los actores de la película
            # Se crea en la lista de actores del catalogo, y se
            # adiciona una película en la lista de dicho actor (apuntador a la película)

            actors = [
                "actor1_name", "actor2_name", "actor3_name", "actor4_name",
                "actor5_name"
            ]
            actors_movie = lt.newList("ARRAY_LIST")
            for actor in actors:
                if row[actor] != "none":
                    model.addActor(catalog, row[actor], row)
                    lt.addLast(actors_movie, row[actor])

            #tipo_de_estructura = "lista"
            tipo_de_estructura = "mapa"

            # Se adiciona la película a la lista de películas
            if tipo_de_estructura == "lista":
                model.addMovieList(catalog, row, actors_movie)

            # Se adiciona la película al mapa de películas (key=title)
            if tipo_de_estructura == "mapa":
                model.addMovieMap(catalog, row, actors_movie)

            # Se obtiene el director de la película
            model.addDirector(catalog, row["director_name"], row)

    moviesfile = cf.data_dir + '/Movies/SmallMoviesDetailsCleaned.csv'
    with open(moviesfile, encoding="utf-8-sig") as csvfile:
        spamreader = csv.DictReader(csvfile, dialect=dialect)

        actors = map.keySet(catalog["actors"])
        directors = map.keySet(catalog["directors"])
        """ AQUI SE DEBERÍA AGREGAR UNICAMENTE LA INFORMACIÓN DE VOTOS """
        for row in spamreader:
            """
            Con estructura de Lista
            """
            if tipo_de_estructura == "lista":
                addMovieListVoteData(catalog, row)
            """
            Con estructura de Mapa
            """
            if tipo_de_estructura == "mapa":
                model.addMovieMapVoteData(catalog, row)

            for actor in actors:
                model.addActorVoteData(catalog, actor, row)

            for director in directors:
                model.addDirectorVoteData(catalog, director, row)

            generos = row["genres"].split("|")
            for genero in generos:
                model.addGenre(catalog, genero, row)

    t1_stop = process_time()  #tiempo final
    print("Tiempo de ejecución carga películas:", t1_stop - t1_start,
          " segundos")