Тика - получить основной контент из документов - PullRequest
4 голосов
/ 07 февраля 2012

Утилита графического интерфейса Apache Tika предоставляет возможность получения основного содержимого (кроме форматированного текста и структурированного текста) данного документа или URL-адреса.Я просто хочу знать, какой метод отвечает за извлечение основного содержимого документации / URL.Так что я могу включить этот метод в моей программе.Также, используют ли они какой-либо эвристический алгоритм при извлечении данных из HTML-страниц.Потому что иногда в извлеченном контенте я не могу видеть рекламу.

ОБНОВЛЕНИЕ: Я обнаружил, что BoilerPipeContentHandler отвечает за это.

Ответы [ 3 ]

8 голосов
/ 08 февраля 2012

Функция «основного контента» в графическом интерфейсе Tika реализована с использованием класса BoilerpipeContentHandler , который опирается на библиотеку шаблонной трубы для тяжелых работ.

0 голосов
/ 13 августа 2014
public String[] tika_autoParser() {
    String[] result = new String[3];
    try {
        InputStream input = new FileInputStream(new File(path));
        ContentHandler textHandler = new BodyContentHandler();
        Metadata metadata = new Metadata();
        AutoDetectParser parser = new AutoDetectParser();
        ParseContext context = new ParseContext();
        parser.parse(input, textHandler, metadata, context);
        result[0] = "Title: " + metadata.get(metadata.TITLE);
        result[1] = "Body: " + textHandler.toString();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (SAXException e) {
        e.printStackTrace();
    } catch (TikaException e) {
        e.printStackTrace();
    }

    return result;
}
0 голосов
/ 07 февраля 2012

Я полагаю, что он работает на BodyContentHandler , который выбирает только HTML-содержимое тела документа. Это может дополнительно быть объединено с другими обработчиками, чтобы возвратить только простой текст тела, если требуется.

...