Titta i loggen vilka som gästat någon av mina sidor den senaste tiden:


...eller ta en titt på statistik-sidan.

#! /usr/bin/python # Loggern 2 # Michael Bjersander # mib@lysator.liu.se # 21.09 - 01.11.1996 03 Rasmus-hack import posix import os import urllib from string import * from time import * from socket import * print "Content-type: text/html" print print "" print "Rasmus Web-log Page" print "" separator = '\t' mannr = {'jan':0, 'feb':1, 'mar':2, 'apr':3, 'may':4, 'jun':5, 'jul':6, 'aug':7, 'sep':8, 'oct':9, 'nov':10, 'dec':11} manadsnamn = ["januari", "februari", "mars", "april", "maj", "juni", "juli", "augusti", "september", "oktober", "november", "december"] fillista = ['MCLOGO.GIF', 'Stjärtgräs', 'applets.html', 'background.jpeg', 'blue.jpeg', 'brumbrum.jpeg', 'classes', 'dbltab_zsh.patch','dino.jpeg', 'dos-mode.el','enghumor.html', 'fallskärm.html', 'friends.html', 'hello.html', 'humorsida.html', 'index.html', 'johanna.html', 'kalle.gif', 'kompisar.html', 'kravspec.bok.ps', 'litenrally.jpeg', 'loggen.html', 'purple.gif', 'rasmusbankomat.jpg', 'rasmuses.html', 'rasmuses.html.save', 'skydiving-faq','skydiving.html', 'smalldarkwing.gif', 'smalldino.gif', 'smalljag.gif', 'smallpet.gif', 'smallpink.gif', 'smallpound.gif', 'smallren.gif', 'smallstimpy.gif', 'smallvolt.gif', 'vem.html', 'volt.jpeg', 'whirl.jpeg', 'whoIam.html'] filnamn = {'MCLOGO.GIF':0, 'Stjärtgräs':0, 'applets.html':0, 'background.jpeg':0, 'blue.jpeg':0, 'brumbrum.jpeg':0, 'classes':0, 'dbltab_zsh.patch':0, 'dino.jpeg':0, 'dos-mode.el':0, 'enghumor.html':0, 'fallskärm.html':0, 'friends.html':0, 'hello.html':0, 'humorsida.html':0, 'index.html':0, 'johanna.html':0, 'kalle.gif':0, 'kompisar.html':0, 'kravspec.bok.ps':0, 'litenrally.jpeg':0, 'loggen.html':0, 'purple.gif':0, 'rasmusbankomat.jpg':0, 'rasmuses.html':0, 'rasmuses.html.save':0, 'skydiving-faq':0, 'skydiving.html':0, 'smalldarkwing.gif':0, 'smalldino.gif':0, 'smalljag.gif':0, 'smallpet.gif':0, 'smallpink.gif':0, 'smallpound.gif':0, 'smallren.gif':0, 'smallstimpy.gif':0, 'smallvolt.gif':0, 'vem.html':0, 'volt.jpeg':0, 'whirl.jpeg':0, 'whoIam.html':0} ustryk = "===========================================" # returnerar sträng med dagens datum och klockan def snyggdatum(): ar, mo, da, tim, min, dum, dum, dum, dum = localtime(time()) # räknar månaderna från noll mo = mo - 1 tim = str(tim) if len(tim) < 2: tim = '0'+tim min = str(min) if len(min) < 2: min = '0'+min snygg = str(da) + ' ' + manadsnamn[mo] + ' '+ str(ar) snygg = snygg + ' klockan ' + tim + ':' + min return(snygg) olddatum = '11 september 1975' datum = olddatum # Öppna loggen, och om den inte finns skapa en ny if not os.path.exists('statistik'): nyfil = open('statistik','w') nyfil.close() try: accessfil = open('../AccessLog') indata = accessfil.readlines() accessfil.close() statfil = open('statistik') statistik = statfil.readlines() statfil.close() except: indata = [] if not os.path.exists('nicelog'): nyfil = open('nicelog','w') nyfil.close() nicefil = open('nicelog','a') for fil in statistik: data = splitfields(fil, separator) filnamn[data[0]] = atoi(data[1]) for rad in indata: data = splitfields(rad, ' ') if len(data) > 2: sida = data[-4] sida = sida[1:] if (data[-2]=='200'): basename = splitfields(sida, '/') try: filnamn[basename[-1]] = filnamn[basename[-1]] + 1 except: foo = 0 if not (sida[-4:]=='.jpg' or sida[-4:]=='.gif' or sida[-5:]=='.jpeg' or sida[-5]=='.html'): host = data[0] # kollar om det är en IP-adress och översätter då till datornamn bhost = splitfields(host,'.') ip = 0 for z in bhost: if z >= '0' and z <= '255': ip = 1 if ip: try: host = gethostbyaddr(host) host = host[0] except: print host,"finns inte!" refsida = data[1] datum = data[-7] browsos = data[2:-7] datum = splitfields(datum, "/") dag = datum[0] dag = str(atoi(dag[1:])) # fixar så att 0or blir rätt man = lower(datum[1]) datum = splitfields(datum[2],":") ar = datum[0] tim = datum[1] min = datum[2] sek = datum[3] datum = dag + " " + manadsnamn[mannr[man]] + " " + ar tid = tim + ":" + min + ":" + sek refsida = refsida[7:] browsos = join(browsos) # snygga till %7E osv refsida = urllib.unquote(refsida) sida = urllib.unquote(sida) browsos = urllib.unquote(browsos) if datum != olddatum: nicefil.write('\n'+datum+'\n'+ustryk[:len(datum)]+'\n') olddatum = datum ut = '%-9s %-33s %-30s %-50s' % (tid,host,sida,refsida[:50]) ut = ut + ' ' + browsos + '\n' while len(refsida) > 49: refsida = refsida[49:] ut = ut + '%-75s %-49s' % ('',refsida[:49]) + '\n' nicefil.write(ut) nicefil.close() statfil = open('statistik','w'); for fil in filnamn.keys(): statfil.write(fil + separator + str(filnamn[fil]) + '\n') # tömmer Roxen-loggen accessfil = open('../AccessLog','w') accessfil.close() print "" nicefil = open('nicelog', 'r') indata = nicefil.readlines() print " Idag " print datum print " såg loggen ut så här: " print "
"
print "TID:      ANROPANDE DATOR                     BETITTAD SIDA:                TIDIGARE SIDA:                                        NÄTBLÄDDRARE / OPERATIVSYSTEM"
print
print

for rad in indata:
	print rad

print ""
print "
" print "" print ""

tack för besöket och välkommen åter!

Tack till mib

Tillbaks