X-Git-Url: http://git.tomasm.cz/krypto.git/blobdiff_plain/042996fc950284d0eccc2237de6616291cdd4ee1..df0003e93591f53b015980aaaec0a68f8e565ead:/robot.py diff --git a/robot.py b/robot.py index 8fdbda6..e2b3820 100755 --- a/robot.py +++ b/robot.py @@ -33,7 +33,7 @@ predmet, _, opsny = mail['Subject'].strip().upper().partition(' ') odesilatel = mail['From'] if predmet != settings.subject: sys.exit() -if (opsny == 'H'): +if opsny == 'H': posli_mail(odesilatel, "Napoveda", "Napoveda:\n" "Prikazy robotovi vkladejte do predmetu zpravy zaslane na adresu " + settings.mail + ".\nNa velikosti pismen nezalezi." @@ -41,9 +41,10 @@ if (opsny == 'H'): "\"" + settings.subject + "\" Analyza zpravy z tela mailu.\n" "\"" + settings.subject + " L\" Opakovana analyza posledni zpravy.\n" + "\"" + settings.subject + " H\" Tato napoveda.\n" + "\nVolby (mimo \"H\") je mozno libovolne kombinovat.\n" "\nS pozdravem\nVas Robot\n") sys.exit() -if (opsny == 'L'): +if 'L' in opsny: mail = pickle.load(open('./msg_last.tmp')) if (mail['From'] != odesilatel): posli_mail(odesilatel, "Omluva", "Omlouvam se," @@ -59,17 +60,42 @@ analyza = [] analyza.append("Puvodni zprava:") analyza.append(telo) +# Prepinani spacemodu +if 'X' in opsny: + mod_m = True +elif 'M' in opsny: + mod_m = False +elif ' ' in ocesat(zprava, True): + mod_m = True +else: + mod_m = False +if mod_m: + analyza.append("\nAnalyza s mezerami.") +else: + analyza.append("\nAnalyza bez mezer.") + # Zakladni udaje -analyza.append("\nDelka zpravy (bez mezer a zvlastnich znaku):") -analyza.append(str(len(ocesat(zprava, False)))) +analyza.append("\nZakladni udaje:") +if mod_m: + analyza.append("Delka zpravy (vcetne mezer a zvlastnich znaku): " + str(len(zprava))) +analyza.append("Delka zpravy (bez mezer a zvlastnich znaku): " + str(len(ocesat(zprava, False)))) + +# Prumerna delka slova +if mod_m: + analyza.append("\nPrumerna delka slova:") + slova = ocesat(zprava, True).split() + analyza.append('{0:.3}'.format(float(sum([len(word) for word in slova]))/len(slova))) # Index koincidence -analyza.append("\nIndexy koincidence:") +# TODO verze s mezerami +analyza.append("\nIndexy koincidence (vzdy bez mezer):") analyza.append(koincidence.tabulka_indexu(zprava)) # Jakobsen -analyza.append("\nJakobsen:") -analyza.append(jakobsen.desifruj(zprava, './ref')) +# TODO verze bez mezer +if mod_m: + analyza.append("\nJakobsen:") + analyza.append(jakobsen.desifruj(zprava, './ref')) # Posuny v abecede analyza.append("\nPosuny v abecede:")