Пример #1
0
        cantidadConnectedComponents = controller.connectedComponents(
            analyzer)  # REQ1
        controller.mstPRIM(analyzer)
        controller.loadBFS(analyzer)

    elif int(inputs[0]) == 2:  # Req 1
        print(
            f"\nTotal de clústeres en el grafo: {cantidadConnectedComponents}")

        vertexA = input(
            "\nIngrese el nombre del primer Landing Point(Ej. Redondo Beach):\n~ "
        )
        vertexB = input(
            "\nIngrese el nombre del segundo Landing Point(Ej. Vung Tau):\n~ ")

        resultadoREQ1 = controller.requerimiento1(analyzer, vertexA, vertexB)
        if (resultadoREQ1)[0]:

            print(f"\n{vertexA} y {vertexB} SÍ están en el mismo Cluster.")

            # Para el req 8:

            pathREQ1 = (controller.path(analyzer, resultadoREQ1[1][0],
                                        resultadoREQ1[1][1]))

        else:
            print(f"\n{vertexA} y {vertexB} NO están en el mismo Cluster.")

    elif int(inputs[0]) == 3:  # Req 2

        verticeMasArcosReq2 = printReq2(
Пример #2
0
        print("Cargando información en el catalogo.............")
        controller.loadData(diccionario)
        print("datos cargados correctamente")

        for i in range(1, 6):
            video = lt.getElement(diccionario['audio-events'], i)
            print(i, " : ", video)
        size = lt.size(diccionario['audio-events'])
        for i in range(size - 5, size + 1):
            video = lt.getElement(diccionario['audio-events'], i)
            print(i, " :", video)
        print("Se han cargado un total de : ",
              controller.events_size(diccionario), " eventos de escucha")
        print(" Total de Autores : ", controller.artists_size(diccionario))
        print(" Total de canciones: ", controller.songs_size(diccionario))
    elif int(inputs[0]) == 3:
        caracteristica = input("indique la caracteristica de contenido")
        minm = (input("Indique el valor minimo"))
        maxm = (input("Indique el valor maximo"))
        lista = controller.requerimiento1(diccionario, caracteristica, minm,
                                          maxm)
        print("Cantidad total de eventos de escucha : ", lista)
    elif int(inputs[0]) == 4:
        pass
    elif int(inputs[0]) == 5:
        pass
    elif int(inputs[0]) == 6:
        print("XD")
    else:
        sys.exit(0)
sys.exit(0)
Пример #3
0
        print("\nCargando información de eventos ....")
        controller.loadData(catalog)
        print('\n-Eventos cargados: ' + str(controller.sizeList(catalog, "eventos")))
        print('\n-Canciones únicas: ' + str(controller.sizeMap(catalog, "track_id")))
        printResults(catalog["eventos"])
        print('\n-Artistas únicos: ' + str(controller.sizeMap(catalog, "artist_id")))


    elif int(inputs[0]) == 3:
        caracteristica = input("Ingrese la característica: ")
        menor = float(input("Ingrese el rango menor: "))
        mayor = float(input("Ingrese el rango mayor: "))
        #
        caracteristica, menor, mayor = 'instrumentalness', 0.75, 1.0
        #
        respuesta = controller.requerimiento1(catalog, menor, mayor, caracteristica)

        printReq1(menor, mayor, respuesta[2])
        print("\nTiempo [ms]: ", f"{respuesta[0]:.3f}", "  ||  ",
              "Memoria [kB]: ", f"{respuesta[1]:.3f}")
        print("\nSe ejecutó el requerimiento 1\n")


    elif int(inputs[0]) == 4:
        menor1 = float(input("Ingrese el rango menor de Energy: "))
        mayor1 = float(input("Ingrese el rango mayor de Energy: "))
        menor2 = float(input("Ingrese el rango menor de Danceability: "))
        mayor2 = float(input("Ingrese el rango mayor de Danceability: "))
        #
        menor1, mayor1, menor2, mayor2 = 0.5, 0.75, 0.75, 1.0 
        #
Пример #4
0
        numero = int(input(("Indique tamaño de la muestra ")))
        tag = input("Indique el tag ")
        lista = controller.videosLikesCategory(catalog, tag)
        for i in range(1, numero):
            video = lt.getElement(lista, i)
            print("titulo: ", video["title"], " id: ", video["category_id"],
                  " likes: ", video["likes"])
    elif inputs == 3:
        tamano = int(input("Ingrese la cantidad de videos en el ranking "))
        pais = input("Ingrese el nombre del pais ")

        categoria = input("Ingrese la categoria que desea buscar ")

        print("cargando...")

        lista = controller.requerimiento1(catalog, pais, categoria)

        for i in range(1, tamano + 1):
            x = lt.getElement(lista[0], i)
            print(i, " : ", "Titulo: ", x["title"], " dia tendencia: ",
                  x["trending_date"], " canal:  ", x["channel_title"],
                  " fecha_publicación:  ", x["publish_time"], " vistas: ",
                  x["views"], " likes:  ", x["likes"], " dislikes: ",
                  x["dislikes"], " pais: ", x["country"], " categoria: ",
                  x["category_id"])
        print("el algoritmo se demora: ", lista[1], " ms")
    elif inputs == 4:
        pais = input("Ingrese el nombre del pais  ")
        print("cargando...")

        video_dias = controller.requerimiento2(catalog, pais)
Пример #5
0
"""
Menu principal
"""
while True:
    printMenu()
    inputs = input('Seleccione una opción para continuar\n')
    if int(inputs[0]) == 1:
        print("Cargando información de los archivos ....")
        catalog = initcatalog()

    elif int(inputs[0]) == 2:
        carac = input('Diga la característica que busca: ')
        val_min= float(input('Diga el valor mínimo que debe tener la característica: '))
        val_max= float(input('Diga el valor máximo que debe tener la característica: '))

        rta = controller.requerimiento1(catalog, carac, val_min, val_max)

        print(carac, " está entre ", val_min, " y ", val_max)
        print("Total de reproducciones: ", rta[1], " Total de artistas únicos: ", rta[0])

    elif int(inputs[0]) == 3:
        min_e = float(input("Diga el valor mínimo de energy."))
        max_e = float(input("Diga el valor máximo de energy."))
        min_d = float(input("Diga el valor mínimo de danceability."))
        max_d = float(input("Diga el valor máximo de danceability."))

        rta = controller.requerimiento2(catalog, min_e,max_e, min_d, max_d)
        total_tracks = rta[1]
        tracks = rta[0]
        track1 = tracks[0][0]
        track2 = tracks[1][0]
Пример #6
0
        catalog = controller.initCatalog()

    elif int(inputs[0]) == 2:
        print("Cargando información de los archivos ....")
        answer = controller.loadData(catalog)
        print('Videos cargados: ' + str(controller.videosSize(catalog)))
        print('Categorias cargados: ' + str(controller.categoSize(catalog)))
        print("Tiempo [ms]: ", f"{answer[0]:.3f}", "  ||  ", "Memoria [kB]: ",
              f"{answer[1]:.3f}")

    elif int(inputs[0]) == 3:
        categg = input("Indique la categoria: ")
        categ = controller.buscarcateporname(categg, catalog)
        pais = input("Indique el pais: ")
        siz = input("Indique tamaño de la muestra: ")
        result = controller.requerimiento1(catalog, int(siz), categ, pais)
        print("Los  ", siz, " videos con mas likes son:")
        printvieostop(result)

    elif int(inputs[0]) == 4:

        pais = input("Indique el pais: ")
        repuesta = controller.requerimiento2(catalog, pais)
        if lt.size(repuesta) <= 0:
            print("No hay sufiecientes videos que cumplan las condiciones ")
        else:
            primero = lt.firstElement(repuesta)
            print(" El video con mas dias en tendencia de " + str(pais) +
                  " es: ")
            print(" Titulo: " + str(primero['title']))
            print(" Nombre del canal: " + str(primero['channel_title']))
Пример #7
0
            gr.numVertices(analyzer['connections']),
            "\nEl total de conexiones entre landing points es de: ",
            gr.numEdges(analyzer['connections']),
            "\nEl total de países cargados es de: ",
            mp.size(analyzer['countries']),
            "\n\n ++++++ 1° Landing point cargado ++++++" + "\n" +
            result[0][1],
            "\n\n ++++++ Ultimo Pais cargado ++++++" + "\n" + result[0][0])
        print(mp.size(analyzer['countrypoints']))
        print("\nTiempo [ms]: ", f"{result[1][0]:.3f}", "  ||  ",
              "Memoria [kB]: ", f"{result[1][1]:.3f}")

    elif int(inputs[0]) == 2:
        origin = input("Ingresa el landing point origen: ")
        destination = input("Ingresa el landing point destino: ")
        result = controller.requerimiento1(analyzer, origin, destination)
        print('El número de componentes conectados es: ', result[0][0])
        if result[0][1]:
            print('Los landing point ' + origin,
                  ' y ' + destination + ' estan en el mismo cluster')
        else:
            print('Los landing point ' + origin,
                  ' y ' + destination + ' no estan en el mismo cluster')
        print("\nTiempo [ms]: ", f"{result[1][0]:.3f}", "  ||  ",
              "Memoria [kB]: ", f"{result[1][1]:.3f}")
    elif int(inputs[0]) == 3:
        result = controller.requerimiento2(analyzer)
        for value in lt.iterator(result[0][0]):
            print(value)
        print('El anterior landing point tiene un total de ', result[0][1],
              ' interconexiones con cables')
Пример #8
0
    printMenu()
    inputs = input('Seleccione una opción para continuar\n')
    if int(inputs[0]) == 1:
        catalog = initCatalog()
    elif int(inputs[0]) == 2:
        print('Cargando informacion.....')
        answer = controller.loadData(catalog, 375943)
        print('Videos Cargados: '+ str(controller.videosSize(catalog)))
        print('Categorias Cargadas: '+ str(controller.categoriesSize(catalog)))
        print('Paises Cargados: '+ str(controller.countriesSize(catalog)))

    elif int(inputs[0]) == 3:
        category_name = input('Ingrese el nombre de la categoria: ')
        country = input('Ingrese el nombre del pais: ')
        num_vids = input('Ingrese el numero de videos: ')
        controller.requerimiento1(catalog, category_name, country, num_vids)

    elif int(inputs[0]) == 4:
        x = input("Ingrese el país ")
        print(x)
        answer = controller.Requerimiento2(catalog,x.lower())
        print(answer['title']," " *10 ,answer['channel_title']," " *10 ,answer['country']," " *10 ,answer['trending_days'])
   
    elif int(inputs[0]) == 5:
        category_name = input('Ingrese el nombre de la categoria: ')
        print('Ejecutando requerimiento 3')
        ans = controller.requerimiento3(catalog, category_name)
        print(ans)
    
    elif int(inputs[0]) == 6:
        tag = input('Ingrese el tag: ')
Пример #9
0
    printMenu()
    inputs = input('Seleccione una opción para continuar\n')
    if int(inputs[0]) == 1:
        print("Cargando información de los archivos ....")
        catalog = controller.initcatalog()
        Categoria = controller.intiCategoria()
        controller.loaddata(catalog, Categoria)
        print("Se cargo la informacion del catalogo")
        print("se cargaron:" + str(lt.size(catalog["videos"])) + "videos")

    elif int(inputs[0]) == 2:
        print("mejores videos por pais")
        categoria = input("Escoja una categoria: ").capitalize()
        pais = input("Escoja un pais: ")
        muestra = int(input("Cuantos videos quiere ver: "))
        for i in controller.requerimiento1(categoria, pais, muestra, catalog,
                                           Categoria):
            for k, v in i.items():
                if k == "trending_date" or k == "title" or k == "channel_title" or k == "publish_date" or k == "views" or k == "likes" or k == "dislikes":
                    print(k + ": " + v)

    elif int(inputs[0]) == 3:
        pais = input("Escoja un pais: ")
        for k, v in controller.requerimiento2(catalog, pais)[0].items():
            if k == "title" or k == "channel_title":
                print(k + " : " + v)
        print("Pais: " + pais + " ,Dias: " +
              str(controller.requerimiento2(catalog, pais)[1]))

    elif int(inputs[0]) == 4:
        print("Se ejecuto requerimiento 3 ")
        categoria = input("Escoja una categoria: ").capitalize()
Пример #10
0
    inputs = input('Seleccione una opción para continuar\n')
    
    if int(inputs[0]) == 1:
        print("Cargando información de los archivos ....")
        cont = controller.initcatalog()
        catalog = controller.loaddata(cont)
        print('Videos cargados: ', lt.size(cont['videos']))
        print("Tiempo [ms]: ", f"{catalog[1]:.3f}", "  ||  ",
              "Memoria [kB]: ", f"{catalog[2]:.3f}")

    # Requerimiento 1.
    elif int(inputs[0]) == 2:
        pais = input("Ingrese el pais: ")
        categoria = input("Ingrese la categoria: ")
        cantidad = input("Ingrese la cantidad de videos que desea ver: ") 
        sol = controller.requerimiento1(cont, str(pais), str(categoria), int(cantidad))

        if sol:
            for video in lt.iterator(sol):
                print( '--> '+ 
                    'trending_date: '  + video['trending_date']            + ' ||' +
                    ' Title: '         + video['title']                    + ' ||' +
                    ' Channel_title: ' + video['channel_title']            + ' ||' +
                    ' Publish_time: '  + video['publish_time']             + ' ||' +
                    ' Views: '         + video['views']                    + ' ||' + 
                    ' Likes: '         + video['likes']                    + ' ||' +
                    ' Dislikes: '      + video['dislikes'])
            print("\n")
        else:
            print('Es posible que el pais o categoria que busque no existe.\n')   
    
Пример #11
0
        print(" Titulo: "+ str(primero['title'])+"\n Nombre del canal: "+ str(primero['channel_title'])+"\n Fecha de popularidad: "+ str(primero['trending_date'])+"\n Pais: "+ str(primero['country'])+"\n Vistas: "+ str(primero['views']) + "\n Likes: "+ str(primero['likes'])+"\n Dislikes: "+ str(primero['dislikes'])+"\n Categoria: "+ str(primero['category_id'])+"\n")
        print("Categorias :")
        print("Nombre , id" )
        for i in range(0,lt.size(catalog['categorias'])):
            cate = lt.getElement(catalog['categorias'], i)
            print(str(cate['name'])+" , "+str(cate['id']))

        
            
    elif int(inputs[0]) == 2:
        categg = input("Indique la categoria: ")
        categ = buscarcateporname(categg)
        pais = input("Indique el pais: ")
        size = input("Indique tamaño de la muestra: ")
        tipodeorden = input("Indique el tipo de ordenamiento que quiere aplicar: ( selection, insertion, shell, quick o merge ) \n")
        result = controller.requerimiento1(catalog, int(size), tipodeorden, categ, pais, tipo)
        if lt.size(result[1])<=0:
            print("No hay sufiecientes videos que cumplan las condiciones ")
        else:
            printResults1(result[1], size)
        print("Para la muestra de", size, " elementos, el tiempo (mseg) es: ",
                                          str(result[0]))

    elif int(inputs[0]) == 3:
        
        pais = input("Indique el pais: ")
        tipodeorden = input("Indique el tipo de ordenamiento que quiere aplicar: ( selection, insertion, shell, quick o merge ) \n")
        repuesta = controller.requerimiento2(catalog,pais,tipodeorden,tipo)
        if lt.size(repuesta)<=0:
            print("No hay sufiecientes videos que cumplan las condiciones ")
        else:
Пример #12
0
        catalog = controller.initcatalog(estructuradedatos)
        controller.cargardatos(catalog)
        print("Se cargó la información del catalogo")
        print("Se cargaron " + str(lt.size(catalog["videos"])) + " videos")
        controller.cargardatoss(catalog)
        print("Se cargó la información del category id")
        print("Se cargaron " + str(lt.size(catalog["category"])) +
              " categorias")
        print(catalog["category"])
        printResults(catalog, 1)

    elif int(inputs[0]) == 2:
        Nombrecategoria = input(" Digite el nombre de la categoria ")
        Pais = input(" Digite el pais ")
        n = int(input(" Digite el numero de videos que quiere listar "))
        req1 = controller.requerimiento1(Nombrecategoria, Pais, n, catalog)
        printreq1(req1)
        print("Se ejecuto requerimiento 1")

    elif int(inputs[0]) == 3:
        Pais = input(" Digite el pais ")
        req2 = controller.requerimiento2(catalog, Pais)
        printreq2(req2)
        print("Se ejecuto requerimiento 2")

    elif int(inputs[0]) == 4:
        nombrecategoria = input(" Digite el nombre de la categoria ")
        req3 = controller.requerimiento3(catalog, nombrecategoria)
        printreq3(req3)
        print("Se ejecuto requerimiento 3")
Пример #13
0
        print('\nvideos cargados por paises: ' +
              str(lt.size(catalog['paises'])))
        firstvideo = lt.firstElement(catalog['videos'])
        print('Informacion del primer video cargado: ', firstvideo['title'],
              ",", firstvideo['channel_title'], ",",
              firstvideo['trending_date'], ",", firstvideo['country'], ",",
              firstvideo['views'], ",", firstvideo['likes'], ",",
              firstvideo['dislikes'], ".")

    # requerimiento 1

    elif int(inputs[0]) == 2:
        pais = input("buscando en el pais: ")
        categoria = input("buscando en la categoria: ")
        cantidad = input("cantidad de videos: ")
        print(controller.requerimiento1(catalog, pais, categoria, cantidad))

    #requerimiento 2

    elif int(inputs[0]) == 3:
        pais = input("buscando en el pais: ")
        print(controller.requerimiento2(catalog, pais))

    # requerimiento 3.

    elif int(inputs[0]) == 4:
        pass

    # requerimiento 4.

    elif int(inputs[0]) == 5:
Пример #14
0
def thread_cycle():
    while True:
        printMenu()
        inputs = input('Seleccione una opción para continuar\n')
        if int(inputs[0]) == 1:
            print("Inicializando .... \n")
            catalog = controller.iniciar()
            print("Cargando información de los archivos ....\n")
            controller.loadArchivos(catalog)
            print("Total landing points: " + str(controller.totalVer(catalog)))
            print("Total conexiones entre landing points: " +
                  str(controller.totalConnections(catalog)))
            print("Total paises: " + str(controller.totalPaises(catalog)))
            primero = controller.primerVer(catalog)
            print("Primer landing point: ")
            print("     Identificador: " + str(primero['landing_point_id']))
            print("     Nombre: " + str(primero['name']))
            print("     Latitud: " + str(primero['latitude']))
            print("     Longitud: " + str(primero['longitude']))
            print("Ultimo pais cargado: ")
            pais = controller.primerPai(catalog)
            print("     Nombre: " + str(pais['CountryName']))
            print("     Poblacion: " + str(pais['Population']))
            print("     Usuarios de internet: " + str(pais['Internet users']))
            print('El limite de recursion actual: ' +
                  str(sys.getrecursionlimit()))
        elif int(inputs[0]) == 2:
            point1 = input(
                'Ingrese el primer Landing Point (ej Redondo Beach): ')
            point2 = input('Ingrese el segundo Landing Point (ej Vung Tau): ')
            res = controller.requerimiento1(catalog, point1, point2)
            print('El total de clusters presentes es: ' + str(res[0]))
            if res[1]:
                print('Los dos landing points estan en el mismo cluster ')
            else:
                print('Los dos landing points noooo estan en el mismo cluster')
        elif int(inputs[0]) == 3:
            resp = controller.requerimiento2(catalog)
            for r in lt.iterator(resp):
                print("Nombre: " + str(r[1]))
                print("País:" + str(r[2]).split(',')[1])
                print("Identificador: " + str(r[0]))
                print("Total cables conectados: " + str(r[3]))
                print("\n")
        elif int(inputs[0]) == 4:
            pais1 = input('Ingrese el primer Pais (ej Colombia): ')
            pais2 = input('Ingrese el segundo Pais (ej Indonesia): ')
            puesta = controller.requerimiento3(catalog, pais1, pais2)
            print("Ruta mas corta: ")
            respuestaxd(puesta[0])
            print('Total distancia de la ruta ' + str(puesta[1]) + ' Km')
        elif int(inputs[0]) == 5:
            r = controller.requerimiento4(catalog)
            print('Numero de nodos conectados a la red de expancion minima: ' +
                  str(r[0]))
            print('Costo totaal de la red de expancion minima: ' + str(r[1]) +
                  ' Km')
            print('Rama mas larga: ')
            respuestaxd(r[2])
        elif int(inputs[0]) == 6:
            poin = input('Ingrese el Nombre del landing point: ')
            rere = controller.requerimiento5(catalog, poin)
            print('Afecta un total de: ' + str(lt.size(rere)) + ' pises')
            print('Lista paises')
            for p in lt.iterator(rere):
                print(str(p[0]))
        elif int(inputs[0]) == 7:
            pass

        elif int(inputs[0]) == 8:
            pass

        else:
            sys.exit(0)
    sys.exit(0)