Identificacion Sesiones

parent 20f72c08
......@@ -14,6 +14,7 @@ class Dato:
self.statusCode = None
self.volumenTransf = None
self.marcaTiempo = None
self.idSesion = None
# Se obtienen todos los datos
self.obtenerDatos(cadena)
......
from IdentificacionUsuarios import IdentificacionUsuarios
from IdentificacionSesiones import IdentificacionSesiones
from ObtencionRegistro import ObtencionRegistro
registros = ObtencionRegistro("../access_log_Aug95_reducido", True, [], [])
idUsuarios = IdentificacionUsuarios(registros.registro)
informe = ("Host Remoto: {}. Url: {}")
idSesiones = IdentificacionSesiones(registros.registro, idUsuarios.identificaciones)
print("Registros:")
for i in registros.registro:
print(informe.format(i.hostRemoto, i.url))
print(i)
print("Usuarios:")
for i in idUsuarios:
print(i)
print("Sesiones:")
for i in idSesiones:
print(i)
\ No newline at end of file
class IdentificacionSesiones:
def __init__(self, usuarios, registros):
self.sesiones = identificacionSesiones(registros, usuarios)
# Obtenemos las identificaciones de sesiones
def identificacionSesiones(registros, usuarios):
# Quitamos duplicados
aux = asignarIDs(usuarios)
umbral = 0
aux = reasignacionIDs(registros, usuarios, aux, umbral, )
return ordenarEntradas(usuarios, aux)
# Asigna una única id para cada usuario distinto
def asignarIDs(registros, usuarios):
aux = []
unicos = set(usuarios)
# Para cada usuario distinto asignamos un ID único
for u in unicos:
aux.append(u.hostRemoto)
return aux
# Reasigna los ids para aquellos usuarios cuya diferencia de tiempo exceda el umbral
def reasignacionIDs(registros, usuarios, aux, umbral, reg):
entrada1 = 0
entrada2 = 0
for u in usuarios:
entrada1 =
diferenciaTiempo = entrada2.marcaTiempo - entrada1.marcaTiempo
if diferenciaTiempo > umbral:
aux.append(u.hostRemoto)
return aux
# Reordenamos la entradas por id de sesion
def ordenarEntradas(usuarios, aux):
return aux;
\ No newline at end of file
# Se obtienen la identificacion de los usuarios
class IdentificacionUsuarios:
def __init__(self, reg):
self.identificacionUsuarios = identificacion(reg)
self.identificaciones = identificacion(reg)
# Identifica a los usuarios
......@@ -14,6 +13,7 @@ def identificacion(reg):
return ordenaRegistros(reg, aux)
# Ordeno los distintos registros de cada usuario de mas antiguos a mas nuevos
def ordenaRegistros(reg, aux):
ret = []
......
......@@ -19,6 +19,7 @@ def leerFicheroLog(ruta, espidering, extensionesAdmitidas, extensionesNoAdmitida
return ret
# Obtengo los registros
def obtenerRegistros(ruta, extensionesAdmitidas, extensionesNoAdmitidas):
ret = []
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment