Нужен пример Apache Tika ePub - PullRequest
       80

Нужен пример Apache Tika ePub

0 голосов
/ 04 октября 2019

Я работаю над проектом, в котором нам нужно выполнить анализ текста файлов книг ePub. У меня есть базовое приложение Apache Tika, работающее с использованием EpubParser, которое будет читать файл ePub и распечатывать текстовое содержимое файла. Однако мне действительно нужен какой-то способ, по крайней мере, поддерживать порядок содержимого ePub / book. Например, содержимое страницы «Содержание» с именем «toc.xhtml» печатается после содержимого файла с именем «page99.xhtml».

Существуют ли какие-либо примеры, которые я, возможно, упустил из виду, как использовать Apache Tika для контролируемого захвата содержимого ePub, чтобы, по крайней мере, сохранить порядок содержимого, так как издатель намеревался его отобразить?

Ниже приведен пример версии "Hello, world", которую я пробовал до сих пор:

    String epubFilePath = System.getenv("EPUB_FILE_PATH");
    File epubFile = new File(epubFilePath);

    InputStream inputstream;
    try {
        inputstream = new FileInputStream(epubFile);
        ParseContext parseContext = new ParseContext();
        Metadata metadata = new Metadata();
        ContentHandler contentHandler = new BodyContentHandler(-1);
        EpubParser epubParser = new EpubParser();

        epubParser.parse(inputstream, contentHandler, metadata, parseContext);
        EmbeddedContentHandler embeddedContentHandler = new EmbeddedContentHandler(contentHandler);
        System.out.println(embeddedContentHandler.toString());
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (SAXException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (TikaException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
...