Преамбула.
Мне нужны текстовые корпусы из Википедии на разных языках.
Википедия предоставляет дампы в своем формате xml, а также html. С их утилитами парсинга xml я не смог подружиться, поэтому накачал html-файлов.
Задача не хитрая: надо переконвертировать множество html-страниц в директории и поддиректориях в один огромный текстовый файл.
Я воспользовался утилитой html2text, которая не плохо работает, но у меня возникли проблемы с кодировкой.
На примере арабского. Вот команда, которой я собираю все в 1 файл и попутно вывожу в консоль:
tarik@tarik-virtual-machine ~/ARA $ find . -type f -name "*.html" -exec html2text -nobs -nometa -utf8 {} \; | tee ARA.txt
Redirecting to إخناتون
****** نقاش المستخدم:اخناتون ******
**** من ويكيبيديا، الموسوعة الحرة ****
مرحبا بك يا اخناتون في ويكيبيديا الموسوعة الحرة!
نتمنى لك مشاركة طيبة. هذه بعض الوصلات التي قد تكون مفيدة لك:
* دروس
...............................................
Далее идут килотонны правильно отображенного арабского текста.
Но вот не задача: сам выходной файл не в utf-8:
tarik@tarik-virtual-machine ~/ARA $ file -i ARA.txt
ARA.txt: text/plain; charset=unknown-8bit
Если копировать из консоли кусок текста мышой и вставлять в редактор, то все ок, и при дальнейшем сохранении файла, по крайней мере редактором xed, файл определяется как utf-8. Но я не могу себе позволить такое копирование в связи с большими объемами данных.
При этом есть небольшая странность. На домашней системе Линукс Минт редактор категорически отказывается показывать содержимое файла. На работе стоит Минт чуть посвежее, и редактор отображает текст, но ругается. В конечном итоге, меня не особо волнует, как новый xed распознал этот недоформат, все равно файл будет обрабатываться под виндой, которая само собой его не понимает.