PDFMiner es una herramienta de extracción de texto para documentos PDF.
Advertencia : a partir de 2020, PDFMiner no se mantiene activamente . El código todavía funciona, pero este proyecto está en gran medida inactivo. Para ver el proyecto activo, consulte su bifurcación pdfminer.six.
Python puro (3.6 o superior).
Admite PDF-1.7. (bueno, casi)
Obtiene la ubicación exacta del texto, así como otra información de diseño (fuentes, etc.).
Realiza análisis de diseño automático.
Puede convertir PDF a otros formatos (HTML/XML).
Puede extraer un esquema (TOC).
Puede extraer contenidos etiquetados.
Admite cifrado básico (RC4 y AES).
Admite varios tipos de fuentes (Type1, TrueType, Type3 y CID).
Admite lenguajes CJK y scripts de escritura vertical.
Tiene un analizador de PDF extensible que se puede utilizar para otros fines.
> pip install pdfminer
> pdf2txt.py samples/simple1.pdf
pdf2txt.py extrae todos los textos que se representan mediante programación. También extrae las ubicaciones correspondientes, nombres de fuentes, tamaños de fuente y dirección de escritura (horizontal o vertical) para cada segmento de texto. No reconoce texto en imágenes. Es necesario proporcionar una contraseña para documentos PDF restringidos.
> pdf2txt.py [-P password] [-o output] [-t text|html|xml|tag] [-O output_dir] [-c encoding] [-s scale] [-R rotation] [-Y normal|loose|exact] [-p pagenos] [-m maxpages] [-S] [-C] [-n] [-A] [-V] [-M char_margin] [-L line_margin] [-W word_margin] [-F boxes_flow] [-d] input.pdf ...
-P password
: contraseña de PDF.
-o output
: nombre del archivo de salida.
-t text|html|xml|tag
: tipo de salida. (predeterminado: se infiere automáticamente del nombre del archivo de salida).
-O output_dir
: directorio de salida para imágenes extraídas.
-c encoding
: codificación de salida. (predeterminado: utf-8)
-s scale
: escala de salida.
-R rotation
: Gira la página en grados.
-Y normal|loose|exact
: especifica el modo de diseño. (solo para salida HTML).
-p pagenos
: Procesa solo ciertas páginas.
-m maxpages
: limita el número máximo de páginas a procesar.
-S
: Tiras de control de personajes.
-C
: Desactiva el almacenamiento en caché de recursos.
-n
: deshabilita el análisis de diseño.
-A
: Aplica análisis de diseño para todos los textos, incluidas las figuras.
-V
: Detecta automáticamente la escritura vertical.
-M char_margin
: especifica el margen de caracteres.
-W word_margin
: especifica la palabra margen.
-L line_margin
: especifica el margen de la línea.
-F boxes_flow
: especifica la relación de flujo de la caja.
-d
: activa la salida de depuración.
dumppdf.py se utiliza para depurar archivos PDF. Vuelca todo el contenido interno en formato pseudo-XML.
> dumppdf.py [-P password] [-a] [-p pageid] [-i objid] [-o output] [-r|-b|-t] [-T] [-O directory] [-d] input.pdf ...
-P password
: contraseña de PDF.
-a
: Extrae todos los objetos.
-p pageid
: extrae un objeto de página.
-i objid
: extrae un determinado objeto.
-o output
: nombre del archivo de salida.
-r
: modo sin procesar. Vuelca las transmisiones sin procesar comprimidas/codificadas.
-b
: modo binario. Vuelca los flujos sin comprimir/decodificar.
-t
: modo texto. Vuelca las transmisiones en formato de texto.
-T
: Modo etiquetado. Vuelca el contenido etiquetado.
-O output_dir
: directorio de salida para transmisiones extraídas.
Reemplace la variable STRICT con algo mejor.
Mejorar las funciones de depuración.
Utilice el módulo de registro en lugar de sys.stderr.
Casos de prueba adecuados.
Conformidad con PEP-8 y PEP-257.
Mejor documentación.
Soporte de filtro de flujo criptográfico.
pypdf
xpdf
caja pdf
mupdf