УВАГА: в онлайнових українських текстах дуже часто вживають латинські літери замість українських, різні символи апострофів тощо. Для якісного аналізу текстів дуже важливо очистити на «нормалізувати» тексти. Тому майже завжди перед аналізом текстів варто прогнати їх утилітою CleanText.groovy
Скрипти в цій теці дозволяють опрацьовувати українські тексти в пакетному режимі:
-
ExtractText.groovy [<src_dir> [<txt_dir>]]
(типово:pdf/
таtxt/
)Витягує тексти з різних форматів у теці <src_dir> і складає в теку <txt_dir>. Підтримувані формати:
- .pdf (вимагає pdftotext)
- .djvu (вимагає djvutxt)
- .fb2 (вимагає unoconv)
- .epub (вимагає ebook-convert)
- .doc, .docx, .rtf (вимагає unoconv)
Також відсіює файли, в яких визначено два ствопчики в теку
<txt_dir>/multicol/
(в майбутньому плануємо об'єднувати стовпчики в один) -
CleanText.groovy [<txt_dir>] {-wc <min_word_limit>}
(типово:txt/
)Читає всі файли .txt в теці й намагається знайти ті, що відповідають крітеріям українського тексту (напр. задана мінімальна кількість українських слів, наразі 80), вивід йде в
<txt_dir>/good/
Перед застосуванням критерію намагається почистити і виправити типові проблеми:
- поламані/мішані кодування (лише при читанні з файлу)
- мішанину латиниці та кирилиці
- цифри замість літер (напр. 3а з цифрою замість літери З)
- виправляє «ї» та «й» записані через комбіновані символи
- нетипові апострофи (міняє на прямий — ')
- вилучає м'який дефіс (00AD)
- об'єднує перенесення слів на новий рядок (використовуючи орфографічний словник)
- розділяє зліплені тире/дефіси на початку (перев. прямої мови)
- може позначати абзаци російською
-
EvaluateText [<txt_dir>]
(типово: ./)Читає всі файли .txt в теці й генерує файли
*.err.txt
для кожного з описом помилок знайдених перевіркою граматики LanguageTool (деякі правила вимкнені)Також генерує файл
<txt_dir>/err/ratings.txt
зі статистикою для кожного файлу