Apache Tika es una biblioteca que se utiliza para la detección de tipos de documentos y la extracción de contenido de varios formatos de archivo. Con esto, se puede desarrollar un detector de tipo universal y un extractor de contenido para extraer tanto texto estructurado como metadatos de diferentes tipos de documentos, como hojas de cálculo, documentos de texto, imágenes, PDF e incluso formatos de entrada multimedia hasta cierto punto. Tika-Python es un enlace de Python a los servicios REST de Apache TikaTM que permite llamar a tika de forma nativa en lenguaje python.
Instalación:
Para instalar Tika, escriba el siguiente comando en la terminal.
pip install tika
Nota: Tika está escrito en Java, por lo que necesita un tiempo de ejecución java (7 o 7+) instalado
Para extraer contenido de los archivos PDF, utilizaremos el método from_file() del objeto analizador . Así que veamos primero la descripción.
Sintaxis: parser.from_file(nombre de archivo, adicional)
Parámetros:
- nombre de archivo: esta es la ubicación del archivo, se abre en modo rb, es decir, modo de lectura binario
- adicional: servicio param: servicio solicitado desde el servidor tika, el valor predeterminado es ‘todos’, lo que da como resultado contenido de texto recursivo + metadatos.
- ‘meta’ devuelve solo metadatos. ‘texto’ solo devuelve contenido.
- param xmlContent: puede tener contenido XML, valor predeterminado: falso
Tipo de retorno: diccionario.
Ahora, veamos el programa python para extraer datos de pdf:
Ejemplo 1: Extracción de contenido del archivo pdf.
Python3
# import parser object from tike from tika import parser # opening pdf file parsed_pdf = parser.from_file("sample.pdf") # saving content of pdf # you can also bring text only, by parsed_pdf['text'] # parsed_pdf['content'] returns string data = parsed_pdf['content'] # Printing of content print(data) # <class 'str'> print(type(data))
Producción:
Ejemplo 2: extracción de metadatos de un archivo pdf.
Python3
# import parser object from tike from tika import parser parsed_pdf = parser.from_file("sample.pdf") # ['metadata'] attribute returns # key-value pairs of meta-data print(parsed_pdf['metadata']) # <class 'dict'> print(type(parsed_pdf['metadata']))
Producción:
Ejemplo 3: Extraer claves.
Python3
from tika import parser parsed_pdf=parser.from_file("sample.pdf") # Returns keys applicable for given pdf. print(parsed_pdf.keys())
Producción:
Ejemplo 4: Conocer el estado del servidor tika.
Python3
from tika import parser # You can also know the # status returned from tika # server, 200 for success parsed_pdf= parser.from_file("sample.pdf") print(parsed_pdf['status'],type(parsed_pdf['status'] ))
Producción:
200 <class 'int'>
Publicación traducida automáticamente
Artículo escrito por akshaypawar4 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA