def index_busqueda(request): #Se generan las lista que se van a generar en el index usuario_activo = request.user usuario = Users.objects.get(pk=usuario_activo.id) nombre_usuario = usuario.Nombre + " " + usuario.Apellido_p # Carrusel de resultados de busqueda texto_busqueda = "" if request.GET.get('busqueda_main') is not None: texto_busqueda = request.GET.get('busqueda_main') productos_busqueda = busqueda.coincidencia(texto_busqueda) productoExtra = Product_extras() for cada_producto in productos_busqueda: productoExtra = productoExtra.calculaPromedio(cada_producto) # Carrusel de productos que te han gustado productos_calificados = recomendaciones_contenido.productos_calificados(usuario) for productoEvaluado in productos_calificados: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Carrusel de productos similares productos_similares = recomendaciones_contenido.recomendacion_similares(usuario) for productoEvaluado in productos_similares: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Recomendaciones por perfil productos_perfil, metadatos_recomendacion4 = recomendaciones_conocimiento.recomendacion_por_reglas(usuario) for productoEvaluado in productos_perfil: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Recomendaciones productos_fc productos_fc = recomendaciones_filtrado_colaborativo.recomendaciones_fc(usuario) for productoEvaluado in productos_fc: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Recomendaciones hibridas recomendaciones_predictivas = recomendaciones_filtrado_colaborativo.recomendaciones_hibridas(productos_fc) for productoEvaluado in recomendaciones_predictivas: productoExtra = productoExtra.calculaPromedio(productoEvaluado) template = loader.get_template('products/index.html') perfil_usuario = recomendaciones_conocimiento.perfil_usuario(usuario) context = { 'nombre_usuario_saludo': nombre_usuario, 'perfil': perfil_usuario, 'productos_busqueda': productos_busqueda, 'productos_calificados': productos_calificados, 'productos_similares': productos_similares, 'productos_perfil': productos_perfil, 'productos_predictivos': recomendaciones_predictivas, 'productos_fc': productos_fc } return HttpResponse(template.render(context, request))
def index_busqueda(request): texto_busqueda = "" if request.GET.get('busqueda_main') is not None: texto_busqueda = request.GET.get('busqueda_main') print texto_busqueda if request.user.is_authenticated(): usuario = Users.objects.get(pk=request.user.id) nombre_usuario = usuario.Nombre + " " + usuario.Apellido_p else: usuario = Users.objects.all()[3] nombre_usuario = "Usuario anónimo" # Carrusel de resultados de busqueda productos_busqueda = busqueda.coincidencia(texto_busqueda) # Carrusel de productos que te han gustado calificaciones = Calificaciones.objects.filter( users=usuario.id).values_list('product_id', flat=True) print "lista:: ", calificaciones productos_calificados = Product.objects.filter(pk__in=list(calificaciones)) # Carrusel de productos similares productos_similares = clasificador_k_vecinos.k_vecinos_lista_productos( productos_calificados, 15) # Recomendaciones por perfil productos_perfil, metadatos_recomendacion4 = recomendaciones_conocimiento.recomendacion_por_reglas( usuario) # Recomendaciones de usuarios similares recomendaciones_usuarios_similares = clasificador_k_vecinos.recomendaciones_usuarios_similares( usuario) # Recomendaciones productos_fc productos_fc = clasificador_k_vecinos.recomendaciones_fc(usuario) template = loader.get_template('products/index.html') perfil_usuario = recomendaciones_conocimiento.perfil_usuario(usuario) context = { 'nombre_usuario_saludo': nombre_usuario, 'perfil': perfil_usuario, 'productos_busqueda': productos_busqueda[:50], 'productos_calificados': productos_calificados, 'productos_similares': productos_similares[:50], 'productos_perfil': productos_perfil[:50], 'productos_contenido': recomendaciones_usuarios_similares[:50], 'productos_fc': productos_fc[:50] } return HttpResponse(template.render(context, request))
def index_busqueda(request): texto_busqueda = "" if request.GET.get('busqueda_main') is not None: texto_busqueda = request.GET.get('busqueda_main') print texto_busqueda if request.user.is_authenticated(): usuario = Users.objects.get(pk=request.user.id) nombre_usuario = usuario.Nombre + " " + usuario.Apellido_p else: usuario = Users.objects.all()[3] nombre_usuario = "Usuario anónimo" # Carrusel de resultados de busqueda productos_busqueda = busqueda.coincidencia(texto_busqueda) # Carrusel de productos que te han gustado calificaciones = Calificaciones.objects.filter(users=usuario.id).values_list('product_id', flat=True) print "lista:: ", calificaciones productos_calificados = Product.objects.filter(pk__in=list(calificaciones)) # Carrusel de productos similares productos_similares = clasificador_k_vecinos.k_vecinos_lista_productos(productos_calificados, 15) # Recomendaciones por perfil productos_perfil, metadatos_recomendacion4 = recomendaciones_conocimiento.recomendacion_por_reglas(usuario) # Recomendaciones de usuarios similares recomendaciones_usuarios_similares = clasificador_k_vecinos.recomendaciones_usuarios_similares(usuario) # Recomendaciones productos_fc productos_fc = clasificador_k_vecinos.recomendaciones_fc(usuario) template = loader.get_template('products/index.html') perfil_usuario = recomendaciones_conocimiento.perfil_usuario(usuario) context = { 'nombre_usuario_saludo': nombre_usuario, 'perfil': perfil_usuario, 'productos_busqueda': productos_busqueda[:50], 'productos_calificados': productos_calificados, 'productos_similares': productos_similares[:50], 'productos_perfil': productos_perfil[:50], 'productos_contenido': recomendaciones_usuarios_similares[:50], 'productos_fc': productos_fc[:50] } return HttpResponse(template.render(context, request))
def index_busqueda(request): # Se generan las lista que se van a generar en el index usuario_activo = request.user usuario = Users.objects.get(pk=usuario_activo.id) nombre_usuario = ( usuario.Nombre.encode("utf-8").lower().capitalize() + " " + usuario.Apellido_p.encode("utf-8").lower().capitalize() ) ciudad_usuario = usuario.Ciudad.encode("utf-8").lower().capitalize() contacto_usuario = usuario.Contacto.encode("utf-8").lower() # Carrusel de resultados de busqueda productos_busqueda = [] reco_listas = [] if "recomendaciones_sesion" not in request.session.keys(): reco_listas = recomendaciones_xti(usuario) request.session["recomendaciones_sesion"] = reco_listas else: reco_listas = request.session.get("recomendaciones_sesion", None) if request.GET.get("busqueda_main") is not None: texto_busqueda = request.GET.get("busqueda_main").encode("utf-8") productos_busqueda = busqueda.coincidencia(texto_busqueda) if len(productos_busqueda) > 0: reco_listas.insert( 0, {"titulo": "Resultados de búsqueda para: " + str(texto_busqueda), "productos": productos_busqueda} ) else: print "No hay productos en Resultados de búsqueda" template = loader.get_template("products/index.html") context = { "nombre_usuario": nombre_usuario, "ciudad_usuario": ciudad_usuario, "contacto_usuario": contacto_usuario, "recomendaciones": reco_listas, } return HttpResponse(template.render(context, request))
def index_busqueda(request): #Se generan las lista que se van a generar en el index usuario_activo = request.user usuario = Users.objects.get(pk=usuario_activo.id) nombre_usuario = usuario.Nombre.encode("utf-8").lower().capitalize( ) + " " + usuario.Apellido_p.encode("utf-8").lower().capitalize() ciudad_usuario = usuario.Ciudad.encode("utf-8").lower().capitalize() contacto_usuario = usuario.Contacto.encode("utf-8").lower() # Carrusel de resultados de busqueda productos_busqueda = [] reco_listas = [] if 'recomendaciones_sesion' not in request.session.keys(): reco_listas = recomendaciones_xti(usuario) request.session['recomendaciones_sesion'] = reco_listas else: reco_listas = request.session.get('recomendaciones_sesion', None) if request.GET.get('busqueda_main') is not None: texto_busqueda = request.GET.get('busqueda_main') productos_busqueda = busqueda.coincidencia(texto_busqueda) if len(productos_busqueda) > 0: reco_listas.insert( 0, { 'titulo': 'Resultados de búsqueda para: ' + str(texto_busqueda), 'productos': productos_busqueda }) else: print "No hay productos en Resultados de búsqueda" template = loader.get_template('products/index.html') context = { 'nombre_usuario': nombre_usuario, 'ciudad_usuario': ciudad_usuario, 'contacto_usuario': contacto_usuario, 'recomendaciones': reco_listas } return HttpResponse(template.render(context, request))
def index_busqueda(request): #Se generan las lista que se van a generar en el index usuario_activo = request.user usuario = Users.objects.get(pk=usuario_activo.id) nombre_usuario = str(usuario.Nombre).lower().capitalize() + " " + str(usuario.Apellido_p).lower().capitalize() print "----->", usuario.Ciudad.encode("utf-8") ciudad_usuario = str(usuario.Ciudad).lower().capitalize() contacto_usuario = str(usuario.Contacto).lower() # Carrusel de resultados de busqueda productos_busqueda = [] reco_listas =[] if 'recomendaciones_sesion' not in request.session.keys(): reco_listas = recomendaciones_xti(usuario) request.session['recomendaciones_sesion'] = reco_listas else: reco_listas = request.session.get('recomendaciones_sesion', None) if request.GET.get('busqueda_main') is not None: texto_busqueda = request.GET.get('busqueda_main') productos_busqueda = busqueda.coincidencia(texto_busqueda) if len(productos_busqueda) > 0: reco_listas.insert(0,{'titulo': 'Resultados de búsqueda para: ' + str(texto_busqueda), 'productos': productos_busqueda}) else: print "No hay productos en Resultados de búsqueda" template = loader.get_template('products/index.html') context = { 'nombre_usuario': nombre_usuario, 'ciudad_usuario': ciudad_usuario, 'contacto_usuario': contacto_usuario, 'recomendaciones': reco_listas } return HttpResponse(template.render(context, request))
def index(request): #Se generan las lista que se van a generar en el index usuario_activo = request.user usuario = Users.objects.get(pk=usuario_activo.id) nombre_usuario = usuario.Nombre + " " + usuario.Apellido_p ## populate comments # se insertan 10,000 comentarios de 1000 usuarios sobre 1000 productos, 10 por usuario # se colectan 1000 usuarios al azar #todos_usuarios = Users.objects.order_by('?')[:1000] #todos_productos = Product.objects.order_by('?')[:1000] #calificaciones_por_usuario = 10 #for cada_usuario in todos_usuarios: # print "HEY: Ho ", cada_usuario.Nombre # for i in range(0, calificaciones_por_usuario): # valorCalificacion = random.randint(1, 5) # producto_calificar = todos_productos[random.randint(0, len(todos_productos)-1)] # comentario = comentarios_predefinidos[valorCalificacion] # calificacionExistente = Calificaciones(product=producto_calificar, users=cada_usuario, calificacion_producto=valorCalificacion, comentario=comentario) # print "cali: ", calificacionExistente # calificacionExistente.save() #valorCalificacion = request.POST.get('calificacion') #calificacionExistente.calificacion_producto=valorCalificacion #calificacionExistente.comentario=comentario #calificacionExistente.save() # Carrusel de resultados de busqueda texto_busqueda = "" if request.GET.get('busqueda_main') is not None: texto_busqueda = request.GET.get('busqueda_main') productos_busqueda = busqueda.coincidencia(texto_busqueda) productoExtra = Product_extras() for cada_producto in productos_busqueda: productoExtra = productoExtra.calculaPromedio(cada_producto) # Carrusel de productos que te han gustado productos_calificados = recomendaciones_contenido.productos_calificados(usuario) for productoEvaluado in productos_calificados: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Carrusel de productos similares productos_similares = recomendaciones_contenido.recomendacion_similares(usuario) for productoEvaluado in productos_similares: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Recomendaciones por perfil productos_perfil, metadatos_recomendacion4 = recomendaciones_conocimiento.recomendacion_por_reglas(usuario) for productoEvaluado in productos_perfil: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Recomendaciones productos_fc productos_fc = recomendaciones_filtrado_colaborativo.recomendaciones_fc(usuario) for productoEvaluado in productos_fc: productoExtra = productoExtra.calculaPromedio(productoEvaluado) # Recomendaciones hibridas recomendaciones_predictivas = recomendaciones_filtrado_colaborativo.recomendaciones_hibridas(productos_fc) for productoEvaluado in recomendaciones_predictivas: productoExtra = productoExtra.calculaPromedio(productoEvaluado) template = loader.get_template('products/index.html') perfil_usuario = recomendaciones_conocimiento.perfil_usuario(usuario) context = { 'nombre_usuario_saludo': nombre_usuario, 'perfil': perfil_usuario, 'productos_busqueda': productos_busqueda, 'productos_calificados': productos_calificados, 'productos_similares': productos_similares, 'productos_perfil': productos_perfil, 'productos_predictivos': recomendaciones_predictivas, 'productos_fc': productos_fc } return HttpResponse(template.render(context, request))