[java] Apache Tika XML 추출

Apache Tika는 다양한 형식의 문서에서 텍스트를 추출하는 데 사용되는 오픈 소스 라이브러리입니다. 이를 사용하여 XML 문서에서 텍스트를 추출하는 방법에 대해 살펴보겠습니다.

Apache Tika 라이브러리 추가

Apache Tika를 사용하기 위해 먼저 해당 라이브러리를 프로젝트에 추가해야 합니다. Maven을 사용하는 경우, 다음과 같이 의존성을 추가할 수 있습니다:

<dependency>
    <groupId>org.apache.tika</groupId>
    <artifactId>tika-core</artifactId>
    <version>1.27</version>
</dependency>

Gradle을 사용하는 경우, 다음과 같이 의존성을 추가할 수 있습니다:

implementation 'org.apache.tika:tika-core:1.27'

XML 문서에서 텍스트 추출하기

다음은 Apache Tika를 사용하여 XML 문서에서 텍스트를 추출하는 간단한 예제 코드입니다.

import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.Parser;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.SAXException;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

public class XmlTextExtractor {
    public static void main(String[] args) {
        try {
            InputStream input = new FileInputStream("path/to/your/xml/file.xml");
            Parser parser = new AutoDetectParser();
            BodyContentHandler handler = new BodyContentHandler();
            Metadata metadata = new Metadata();
            ParseContext context = new ParseContext();
            parser.parse(input, handler, metadata, context);
            String text = handler.toString();
            System.out.println("Extracted Text: " + text);
        } catch (IOException | TikaException | SAXException e) {
            e.printStackTrace();
        }
    }
}

위 예제 코드에서는 Apache Tika를 사용하여 XML 문서에서 텍스트를 추출하고 그 결과를 출력합니다.

결론

Apache Tika를 사용하면 XML과 같은 다양한 형식의 문서에서 텍스트를 추출할 수 있습니다. 이를 활용하여 텍스트 기반의 데이터를 처리하거나 분석하는 작업을 보다 쉽게 수행할 수 있습니다.

참고 자료