[java] Apache Tika 와 자동화

Apache Tika는 Java 기반의 오픈 소스 라이브러리로, 다양한 형식의 파일에서 텍스트와 메타데이터를 추출하는 기능을 제공합니다. 이러한 기능을 활용하여 파일 처리 및 데이터 추출 작업을 자동화할 수 있습니다.

Apache Tika 사용하기

Apache Tika를 사용하려면 다음과 같이 라이브러리를 프로젝트에 추가해야합니다:

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

파일에서 텍스트 추출하기

다음은 Apache Tika를 사용하여 텍스트를 추출하는 간단한 예제입니다:

import org.apache.tika.Tika;
import java.io.File;
import java.io.IOException;

public class TextExtractor {
    public static void main(String[] args) {
        Tika tika = new Tika();
        File file = new File("path/to/file");
        
        try {
            String text = tika.parseToString(file);
            System.out.println(text);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 예제는 지정된 파일로부터 텍스트를 추출하여 출력합니다.

파일 형식에 따라 메타데이터 추출하기

Apache Tika는 파일 형식에 따라 다양한 메타데이터를 추출할 수 있습니다. 다음은 예제 코드입니다:

import org.apache.tika.Tika;
import java.io.File;
import java.io.IOException;

public class MetadataExtractor {
    public static void main(String[] args) {
        Tika tika = new Tika();
        File file = new File("path/to/file");
        
        try {
            String metadata = tika.parseToString(file);
            System.out.println(metadata);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 예제는 지정된 파일로부터 메타데이터를 추출하여 출력합니다.

자동화 예제

Apache Tika를 사용하여 파일 처리를 자동화하는 예제 코드입니다:

import org.apache.tika.Tika;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class FileProcessor {
    public static void main(String[] args) {
        Tika tika = new Tika();
        String directoryPath = "path/to/files";
        File directory = new File(directoryPath);
        List<String> results = new ArrayList<>();
        
        if (directory.exists() && directory.isDirectory()) {
            File[] files = directory.listFiles();
            
            for (File file : files) {
                try {
                    String text = tika.parseToString(file);
                    results.add(text);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        
        System.out.println(results);
    }
}

위의 예제는 지정된 디렉토리에 있는 파일들로부터 텍스트를 추출하고, 추출된 결과를 리스트에 저장한 후 출력합니다.

결론

Apache Tika는 파일 처리 및 데이터 추출 작업을 자동화하는 데 사용할 수 있는 강력한 도구입니다. 다양한 파일 형식에서 텍스트와 메타데이터를 추출하여 다양한 용도로 활용할 수 있습니다. 자동화된 파일 처리를 위해 Apache Tika를 사용해보세요!