From 161d67088ee861b15739ebb262ad24184e811ca1 Mon Sep 17 00:00:00 2001 From: rusinthread Date: Fri, 23 Dec 2016 03:58:44 +0300 Subject: Decode more strings, change arguments, update readme --- README.md | 10 +++++++--- main.py | 45 +++++++++++++++++++++++++++++++++++++++------ 2 files changed, 46 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 75fd1ec..b72f24a 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,17 @@ # triumfalno # +Расшифровка АРГ про ВОЕННОЕ ВМЕШАТЕЛЬСТВО ЭРДОГАН ТРИУМФАЛЬНО. Специально для Русин-треда. ### Как пользоваться ### ``` -./main.py decode --remove-junk +./main.py --help ``` -Опция `--remove-junk` удаляет мусорные слова из текстов перед обработкой. + +Опция `--decode` расшифровывает и выводит все строчки из `data.json`. +Через `--decode-string "ВОЕННОЕ ВМЕШАТЕЛЬСТВО ТРИУМФАЛЬНО"` можно расшифровывать произвольные строки. +Опция `--with-junk` пропускает удаление мусорных слов (бывает полезно, чтобы посмотреть как будет без удаления, на случай если удаляется что-то лишнее). В файле `data.json` лежат тексты и метаинформация, собранные с архивов двача и фейсбука. Кроме `pic` там ничего полезного нет. В папке `img` лежат связанные с текстами изображения. -Работает на `Python 3`, рекомендуется установить модуль `termcolor` чтобы вывод был цветным. +Работает на Python 3, рекомендуется установить модуль `termcolor` чтобы вывод был цветным. diff --git a/main.py b/main.py index 4b8e0ac..5e50913 100755 --- a/main.py +++ b/main.py @@ -57,6 +57,30 @@ def clean_string(s, remove_junk=False): 'С ЛОКАЦИИ', #'КАЗНЬ', 'ГУБЕРНИЯ', + 'ПРОВЕРКИ', + 'УСТАНОВЛЕНО', + 'ПОБЕДИТЕЛЕМ', + #'СТАЛЬНЫЕ', + 'НЕРВЫ', + 'ДАРОВАНО', + #'ТРАНСПОРТИРОВКА', + 'ОДОБРЕНО', + 'ПРОЯВЛЕНИЯ', + 'УЗАКОНЕНО', + 'ИМЕЕТСЯ', + 'ЗНАЛ', + 'НЕ ПРИМЕЧЕНО', + 'НА СЕВЕР', + 'ПРИГОВОРИТЬ', + 'ШЕСТВУЕМ', + 'ДАГОН', + 'ДА МЕРЗНУЩИЙ', + 'КОФЕ', + #'РЕАГИРОВАНИЕ', + 'УКАЗАНО', + '- ВЫСОКИЙ ТИТУЛ', + 'ЗАКАЗ', + 'ЧЕРТЫ ЛИЦА' ] # только без пробелов @@ -67,7 +91,7 @@ def clean_string(s, remove_junk=False): if remove_junk: s = s.split(' ') - s = list(filter(lambda l: re.sub(r'\.$', '', l) not in junks_words, s)) + s = list(filter(lambda l: re.sub(r'\.|\!$', '', l) not in junks_words, s)) s = ' '.join(s) for j in junks_nwords: @@ -97,13 +121,15 @@ def decode(s): def main(): parser = argparse.ArgumentParser() - parser.add_argument('--remove-junk', action='store_true') - parser.add_argument('cmd', type=str) + parser.add_argument('--decode', action='store_true') + parser.add_argument('--stats', action='store_true') + parser.add_argument('--decode-string') + parser.add_argument('--with-junk', action='store_true') args = parser.parse_args() data = load_data() - if args.cmd == 'decode': + if args.decode: # ignore type2 data = list(filter(lambda i: 'type' not in i, data)) @@ -112,7 +138,7 @@ def main(): for obj in data: text = obj['text'] - text = clean_string(text, remove_junk=args.remove_junk) + text = clean_string(text, remove_junk=(not args.with_junk)) print(obj['text']) print_colored(text, 'green', fallback_prefix='[CLEANED] ') @@ -123,8 +149,15 @@ def main(): print_colored(', '.join(pic), 'red', fallback_prefix='[PICS] ') print("\n") + + elif args.decode_string: + text = clean_string(args.decode_string, remove_junk=(not args.with_junk)) + + print(args.decode_string) + print_colored(text, 'green', fallback_prefix='[CLEANED] ') + print_colored(decode(text), 'cyan', fallback_prefix='[DECODED] ') - elif args.cmd == 'stats': + elif args.stats: count = len(data) print("Total texts: %s" % count) -- cgit v1.2.3