RSS
Новости
Реклама

ЗДЕСЬ МОГЛА БЫТЬ ВАША РЕКЛАМА!

Балаболка Утилита для извлечения текста из файлов

Программа предназначена для извлечения текста из файлов различных форматов. Извлеченный текст может быть объединен в один файл и/или разбит на несколько файлов. К тексту могут быть применены правила из словарей коррекции произношения программы "Балаболка".

Поддерживаются форматы файлов: AZW, AZW3, CHM, DjVu, DOC, DOCX, EML, EPUB, FB2, FB3, HTML, LIT, MHT, MOBI, ODS, ODT, PDB, PDF, PRC, RTF, TCR, TXT, WPD, WRI, XLS, XLSX. Интерфейс IFilter будет использован для неизвестных программе форматов файлов.

Утилита не имеет графического интерфейса и выполняется в текстовом режиме. Режим работы программы может быть задан при помощи параметров командной строки или файла конфигурации.

Программа выполняет операции в следующем порядке:

  1. Извлечь текст из файла или нескольких файлов.
  2. Форматировать текст: удалить лишние пробелы, разрывы строк и т.д. (если заданы соответствующие параметры).
  3. Объединить текст в один файл (если задан соответствующий параметр).
  4. Разбить текст на части (если заданы соответствующие параметры).
  5. Применить правила коррекции произношения (если заданы соответствующие параметры).
  6. Сохранить текстовый файл или файлы на диске.

Загрузить утилиту


Размер файла: МБ
 
Версия:
 
Тип лицензии: Freeware
 
Операционная система:
Командная строка

Программа может быть настроена с помощью параметров командной строки. Они отделяются друг от друга пробелом и начинаются с символа "-" (дефис). Полный список параметров командной строки можно получить, введя команду blb2txt.exe с параметрами -? или -h.


-f имя_файла
Имя файла или маска для имен файлов, из которых требуется извлечь текст. Командная строка может содержать несколько параметров -f.
-v имя_папки
Имя папки для сохранения файла с извлеченным текстом.
-p имя_файла
Шаблон для имени файла с извлеченным текстом (например, "Текстовый документ"). Если параметр не задан, используется имя исходного файла.
  • Используйте переменную %FirstLine% в шаблоне для имени файла, чтобы вставить первую строку текста из документа.
  • Используйте переменную %Header% в шаблоне для имени файла, чтобы вставить заголовок из оглавления документа.
  • Используйте переменную %Number% в шаблоне, чтобы поменять позицию порядкового номера внутри имени файла.
-out имя_файла
Полное имя файла с извлеченным текстом. Рекомендуется применять параметр только в тех случаях, когда утилита используется в составе другого программного продукта. Если утилита применяется как внешняя программа для извлечения текста, команда запуска утилиты будет содержать имя входного файла и имя файла с извлеченным текстом.
-i
Читать данные из стандартного потока ввода (STDIN). Формат файла будет автоматически определен по содержимому потока данных. Если параметр задан, параметр -f игнорируется.
-o
Записать текст в стандартный поток вывода (STDOUT). Если параметр задан, параметры -v и -p игнорируются.
-u
Объединить текст из нескольких файлов в один файл.
-b
Добавить порядковый номер перед именем файла (при разбиении текста на части).
-a
Добавить порядковый номер после имени файла (при разбиении текста на части).
-n число
Установить стартовый порядковый номер файла (при разбиении текста на части). По умолчанию значение равно 1.
-e кодировка
Кодировка файла с извлеченным текстом ("ansi", "utf8" или "unicode"). По умолчанию значение равно "ansi".
-t число
Задать способ разбиения текста: использование заданного размера файла. Число обозначает количество килобайт.
-k ключевое_слово
Задать способ разбиения текста: поиск ключевого слова в исходном файле. Параметр является регистрозависимым. Командная строка может содержать несколько параметров -k.
-r ключевое_слово
Поделить текст на ключевом слове и удалить его из текста. Параметр является регистрозависимым. Командная строка может содержать несколько параметров -r.
-w
Задать способ разбиения текста: поиск двух пустых строк подряд.
-l
Задать способ разбиения текста: поиск строки, где все буквы заглавные.
-c
Задать способ разбиения текста: использовать оглавление документа. Программа извлечет позиции начал глав из электронной книги (если файл книги содержит такую информацию).
-toc
Задать способ разбиения текста: создать оглавление и разбить на части. Программа поделит текст при помощи найденных ключевых слов ("глава", "том" и др.). Если параметр используется совместно с параметром -c, программа сначала попытается извлечь оглавление из документа; если это не удастся, будет создано новое оглавление.
-m число
Игнорировать начало следующей главы при делении текста, если размер предыдущей части текста меньше заданного размера. Число обозначает количество символов (включая пробелы и знаки препинания). Параметр используется совместно с параметрами -c или -toc.
-d имя_файла
Использовать словарь для коррекции произношения (файл с расширением *.BXD, *.REX или *.DIC). Командная строка может содержать несколько параметров -d.
-if
Использовать интерфейс IFilter для извлечения текста. Если фильтр для формата файла отсутствует в системе, программа использует свой метод извлечения текста.
-g имя_папки
Имя папки для сохранения графических файлов, извлеченных из документа.
-cvr имя_папки
Имя папки для сохранения обложки книги, извлеченной из документа.
-pwd текст
Задать пароль для извлечения текста из файла формата PDF.
-? или -h
Показать описание параметров командной строки.
--remove-spaces или -rs
Удалить лишние пробелы (два и более пробела подряд, неразрывные пробелы).
--remove-hyphens или -rh
Удалить знаки переноса на концах строк в тексте.
--remove-linebreaks или -rl
Удалить разрывы строк внутри абзацев.
--remove-empty-lines или -rm
Удалить все пустые строки.
--replace-empty-lines или -rp
Заменить несколько пустых строк одной пустой строкой.
--remove-square-brackets или -rsb
Удалить текст внутри [квадратных скобок].
--remove-curly-brackets или -rcb
Удалить текст внутри {фигурных скобок}.
--remove-angle-brackets или -rab
Удалить текст внутри <угловых скобок>.
--fix-ocr-errors или -ocr
Исправить ошибки, возникшие при оптическом распознавании текста (только для языков с кириллическими алфавитами).
--fix-letter-spacing или -ls
Убрать разрядку в словах (например: п р о б е л, _с_л_о_в_о).
--skip-summary или -ss
Пропускать аннотацию при извлечении текста из файлов форматов FB2/FB3.
--skip-notes или -sn
Пропускать сноски и примечания при извлечении текста из файлов форматов DOCX/FB2/FB3/ODT.
--include-notes число или -in число
Добавить сноски и примечания из файлов форматов DOCX/FB2/FB3/ODT внутрь текста.
Возможные значения для числового параметра:
  • 0 - удалить ссылки на примечания из текста;
  • 1 - сохранить текущие позиции сносок и примечаний в тексте;
  • 2 - переместить сноски и примечания в конец предложений;
  • 3 - переместить сноски и примечания в конец абзацев.
--csv-comma
Использовать запятую как разделитель значений колонок при извлечении данных из файлов форматов XLS/XLSX/ODS (используется по умолчанию).
--csv-semicolon
Использовать точку с запятой как разделитель значений колонок при извлечении данных из файлов форматов XLS/XLSX/ODS.
--csv-space
Использовать пробел как разделитель значений колонок при извлечении данных из файлов форматов XLS/XLSX/ODS.
--csv-tab
Использовать табуляцию как разделитель значений колонок при извлечении данных из файлов форматов XLS/XLSX/ODS.
--csv-double-quote
Использовать двойные кавычки как ограничитель строк при извлечении данных из файлов форматов XLS/XLSX/ODS (используются по умолчанию).
--csv-single-quote
Использовать одиночные кавычки как ограничитель строк при извлечении данных из файлов форматов XLS/XLSX/ODS.
--eml-save имя_папки
Извлечь файлы, прикрепленные к сообщению, из документов формата EML и сохранить в заданной папке.
--eml-att
Извлечь список имен файлов, прикрепленных к сообщению, из документов формата EML. Имена файлов будут перечислены через запятую.
--eml-cc
Извлечь поле "Cc" из заголовка сообщения в файле формата EML ("carbon copy": имена и адреса вторичных получателей письма, которым направляется копия).
--eml-date формат_даты
Извлечь поле "Date" из заголовка сообщения в файле формата EML (дата и время отправки письма). Формат даты задан при помощи специальных символов ("d", "m", "y" и др.). Например: "dd.mm.yyyy hh:nn:ss".
--eml-from
Извлечь поле "From" из заголовка сообщения в файле формата EML (имя и адрес отправителя).
--eml-org
Извлечь поле "Organization" из заголовка сообщения в файле формата EML (название организации, которая предоставила доступ к сети для отправки письма).
--eml-rt
Извлечь поле "Reply-To" из заголовка сообщения в файле формата EML (имя и адрес, куда следует адресовать ответы на письмо).
--eml-subj
Извлечь поле "Subject" из заголовка сообщения в файле формата EML (тема письма).
--eml-to
Извлечь поле "To" из заголовка сообщения в файле формата EML (имя и адрес получателя).



Примеры команд

Извлечь текст из документа "book.doc" и сохранить как текстовый файл "book.txt":

blb2txt -f "d:\Docs\book.doc" -v "d:\Text\"



Также, такой вариант может быть использован в случае необходимости (когда указан только один входной файл):

blb2txt -f "d:\Docs\book.doc" -out "d:\Text\book.txt"



Извлечь текст из файлов форматов DOC и RTF, удалить пустые строки и сохранить как текстовые файлы в кодировке UTF-8:

blb2txt -f "d:\Docs\*.doc" -f "d:\Docs\*.rtf" -v "d:\Text\" -e utf8 --replace-empty-lines



Извлечь текст из всех файлов, объединить и сохранить как текстовый файл "Документ.txt":

blb2txt -f "d:\Docs\*.*" -v "d:\Text\" -p "Документ" -u



Извлечь текст из документа "1.doc", разбить на части размером 100 Кб и сохранить как файлы с именами "Документ 20.txt", "Документ 21.txt":

blb2txt -f "d:\Docs\1.doc" -v "d:\Text\" -p "Документ" -a -n 20 -t 100



Извлечь текст из книги "book.fb2", найти слова "ГЛАВА" и "ОГЛАВЛЕНИЕ" для того, чтобы разбить текст на части и сохранить как файлы с именами "Книга 1.txt", "Книга 2.txt":

blb2txt -f "d:\Book\book.fb2" -v "d:\Text\" -p "Книга" -k "ГЛАВА" -k "ОГЛАВЛЕНИЕ"



Извлечь текст из книги "book.epub", найти символы "###" для того, чтобы разбить его на части, и удалить символы из текста:

blb2txt -f "d:\Book\book.epub" -v "d:\Text\" -p "Книга" -r "###"



Извлечь текст из книги "book.fb2", разбить текст на части, используя оглавление, и сохранить как файлы с именами "Книга 1.txt", "Книга 2.txt". Размер нового текстого файла не должен быть меньше одного килобайта:

blb2txt -f "d:\Book\book.fb2" -v "d:\Text\" -p "Книга" -c -m 1024



Прочесть текст из стандартного потока ввода, удалить лишние пробелы, разрывы строк внутри абзацев и пустые строки, записать текст в стандартный поток вывода:

blb2txt -i -o --remove-spaces --remove-linebreaks --replace-empty-lines



Файл конфигурации

Параметры можно сохранить как файл конфигурации blb2txt.cfg в той же папке, что и консольное приложение.

Пример содержимого файла:

-f d:\Docs\*.rtf
-f d:\Books\*.epub
-f d:\Books\*.fb2
-v d:\Text
-b
-n 1
-t 25
-e utf8
-d d:\Dict\rules.bxd
--remove-spaces
--remove-linebreaks
--replace-empty-lines

Программа может комбинировать параметры из файла конфигурации и командной строки.




Лицензия

Право на некоммерческое использование программы:

  • для физических лиц - без ограничений;
  • для юридических лиц - с учетом ограничений, перечисленных в "Лицензионном соглашении" программного продукта "Балаболка".

Коммерческое использование программы допускается только с разрешения правообладателя.