Wykres aktywności na IRCu, obejmujący wszystkie utworzone logi, z zaznaczonymi co ciekawszymi datami, w zgormadzeniu których pomagał mi adasiek-k.
Tego postanowiłem u siebie nie hostować, bo ogromna ilość odnośników prowadzi, jakby nie patrzeć, do pornuchów. Nawet pastebiny były podejrzliwe.
W każdym bądź razie, oto ta lista.
Jakby to kiedyś powtórzyć, to nie będzie trzeba kombinować, jak to było. Pewnie wszystko źle, jeśli znajdziesz błąd, daj znać — w końcu dopiero się uczę.
# -*- coding: utf-8 -*- import os from os.path import join, getsize for root, dirs, files in os.walk('.'): for curfile in files: print root.strip('./') + '/' + curfile.strip('.log') + '\t', print len(open(root + '/' + curfile).readlines())
Trzeba było trochę posegregować te dane, więc z lenistwa zrobiłem to w OpenOffice.
set encoding iso_8859_2 set terminal png size 2048,1536 set grid set output 'wykres.png' set xlabel "dzień" set ylabel "ilość linii w logu" set xdata time set timefmt "%d.%m.%Y" set format x "%Y-%m-%d" set boxwidth 1 # poniżej zaczynamy testy set style rect fc lt 10 fs solid 0.15 noborder set label "etest - fizyka\nkoło - AiR\nkoło - dyskretna\nkoło - różniczki" at "9.06.2009",5800 center set obj rect from "03.06.2009", graph 0 to "16.06.2009", graph 1 set label "egzamin - fizyka\negzamin - programowanie obiektowe" at "20.06.2009",5000 left set obj rect from "19.06.2009", graph 0 to "20.06.2009", graph 1 set label "egzamin - fizyka (II term.)" at "22.06.2009",4500 left set obj rect from "22.06.2009", graph 0 to "24.06.2009", graph 1 set label "egzamin - fizyka (III term.)" at "28.06.2009",4000 left set obj rect from "28.06.2009", graph 0 to "30.06.2009", graph 1 set label "koło - AK" at "16.12.2009",4000 center set obj rect from "15.12.2009", graph 0 to "17.12.2009", graph 1 # ---- koniec testów plot "./stats.csv" using 1:2 lt -1 lw 2 notitle with boxes
# -*- coding: utf-8 -*- import os import re import operator from os.path import join, getsize nicks = {} for root, dirs, files in os.walk('.'): for curfile in files: for line in open(root + '/' + curfile).readlines(): m = re.search('.< ([a-zA-Z0-9_-]+)>.', line) if m: nick = m.group(1) if not nick in nicks: nicks[nick] = 1 else: nicks[nick] += 1 nicksn = nicks.items() nicksn = sorted(nicksn, key=operator.itemgetter(1)) nicksn.reverse() n = 1 print '^ nr ^ wynik ^ nick ^' for element in nicksn: print '| ', n , ' |', element[1], ' |%%', element[0], '%% |' n += 1
# -*- coding: utf-8 -*- import os import re import operator from os.path import join, getsize nicks = {} for root, dirs, files in os.walk('.'): for curfile in files: for line in open(root + '/' + curfile).readlines(): m = re.search('http:////', line) if m: nick = m.group(1) msg = m.group(2) if not nick in nicks: nicks[nick] = len(msg) else: nicks[nick] += len(msg) nicksn = nicks.items() nicksn = sorted(nicksn, key=operator.itemgetter(1)) nicksn.reverse() n = 1 print '^ nr ^ wynik ^ nick ^' for element in nicksn: print '| ', n , ' |', element[1], ' |%%', element[0], '%% |' n += 1
# -*- coding: utf-8 -*- import os import re import operator from os.path import join, getsize nicks = {} urlcount = 0 for root, dirs, files in os.walk('.'): for curfile in files: for line in open(root + '/' + curfile).readlines(): m = re.search('(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?', line) if m: url = m.group(0) m = re.search('.< ([a-zA-Z0-9_-]+)>.', line) urlcount += 1 if m: nick = m.group(1) if not nick in nicks: nicks[nick] = 1 else: nicks[nick] += 1 nicksn = nicks.items() nicksn = sorted(nicksn, key=operator.itemgetter(1)) nicksn.reverse() n = 1 print "W sumie wysłanych linków: ", urlcount print '^ nr ^ wynik ^ nick ^' for element in nicksn: print '| ', n , ' |', element[1], ' |%%', element[0], '%% |' n += 1
# -*- coding: utf-8 -*- import os import re import operator from os.path import join, getsize nicks = {} for root, dirs, files in os.walk('.'): for curfile in files: for line in open(root + '/' + curfile).readlines(): m = re.search('(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?', line) if m: url = m.group(0) if not url in nicks: nicks[url] = 1 else: nicks[url] += 1 nicksn = nicks.items() nicksn = sorted(nicksn, key=operator.itemgetter(1)) nicksn.reverse() n = 1 print '^ nr ^ wynik ^ nick ^' for element in nicksn: print '| ', n , ' |', element[1], ' |%%', element[0], '%% |' n += 1