Cambios facilitar gui

parent 5750b522
class Cesta:
def __init__(self, registros):
def __init__(self, registros, directorios):
# Atributos
self.sesion = None
self.pagina = None
self.directorios = None
self.directorios = directorios
self.flags = None
self.transformarCesta(registros)
# Se obtienen los directorios con mas del 0.5 peticiones de pagina junto a sus paginas
def transformarCesta(self, registros):
umbral = int(len(registros) * 5 / 1000)
self.directorios = obtenerDirectorios(registros, umbral)
def obtenerDirectorios(registros, umbral):
# Se obtienen los directorios aquellos que cumplen el umbral
def obtenerDirectorios(registros):
directorios = []
contadores = []
# Obtenemos los registros diferentes con sus contadores
for r in registros:
if r.url not in directorios:
directorios.append(r.url)
......@@ -25,4 +20,14 @@ def obtenerDirectorios(registros, umbral):
pos = contadores.index(r.url)
contadores[pos] += 1
# Sacamos aquellas que no superan el umbral
umbral = int(len(registros) * 5 / 1000)
return directorios, contadores
# Se obtiene la cesta transformada final
def obtenerCestaTransformada(registros, directorios):
cesta = []
return cesta
\ No newline at end of file
from ObtencionRegistro import obtenerRegistros
from Cesta import Cesta
# Se crean los registros, identificando usuarios y sesiones
r = obtenerRegistros("../access_log_Aug95_reducido", True, [], [])
c = Cesta(r)
# Se muestran resultados log
informe = (
" - Registro {} -\nHost Remoto: {}\nFecha: {}\nMetodo de Petición: {}\nURL: {}\nProtocolo: {}\nStatus Code: {}\n"
"Volumen de Transferencia: {}Marca de Tiempo: {}\nId Usuario: {}\nId Sesion: {}\n")
print("Resultados: ")
for i in range(len(r)):
print(informe.format(i + 1, r[i].hostRemoto, r[i].fecha, r[i].metodoPeticion, r[i].url, r[i].vProtocolo,
r[i].statusCode,
r[i].volumenTransf, r[i].marcaTiempo, r[i].idUsuario, r[i].idSesion))
from Cesta import obtenerDirectorios
from Cesta import obtenerCestaTransformada
RUTA_ARCHIVO = "../access_log_Aug95_reducido"
E_SPIDERING = True
EXTENSIONES_ADMITIDAS = []
EXTENSIONES_NOADMITIDAS = []
UMBRAL_DIRECTORIOS = 0.5
def printRegistro(registros):
print("Resultados: ")
informe = (
" - Registro {} -\nHost Remoto: {}\nFecha: {}\nMetodo de Petición: {}\nURL: {}\nProtocolo: {}\nStatus Code: {}\n"
"Volumen de Transferencia: {}Marca de Tiempo: {}\nId Usuario: {}\nId Sesion: {}\n"
)
i = 0
for r in registros:
i += 1
print(informe.format(i, r.hostRemoto, r.fecha, r.metodoPeticion, r.url, r.vProtocolo,
r.statusCode, r.volumenTransf, r.marcaTiempo, r.idUsuario, r.idSesion)
)
def printDirectorios(d, num_dir, num_reg):
print("Directorios más solicitados: ")
informe = (
" - VALOR {} -\nDirectorio: {}\nP (%): {}\n Cuenta: {}\nProporción: {}\n"
)
barra = "*"
for i in range(num_dir):
barra += barra
print(informe.format("", float(num_dir * 100 / num_reg), num_dir, barra))
for di in d:
barra = "*"
c = cont[d.index(di)]
for i in range(c):
barra += barra
print(informe.format(di.url, float(num_dir * 100 / num_reg), c, barra))
def printCestaTransformada(c):
return
# Se crean los registros, identificando usuarios y sesiones y se muestran
r = obtenerRegistros(RUTA_ARCHIVO, E_SPIDERING, EXTENSIONES_ADMITIDAS, EXTENSIONES_NOADMITIDAS)
num_reg = len(r)
printRegistro(r)
# Se obtienen los directorios con contadores y la cesta
umbral = int(num_reg * UMBRAL_DIRECTORIOS)
d, cont = obtenerDirectorios(r)
num_dir = len(d)
printDirectorios(d, num_dir, num_reg)
# Obtiene cesta transformada y la muestra
cesta = obtenerCestaTransformada(r, d)
printCestaTransformada(cesta)
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