Cómo analizar PDF en PHP

Cómo analizar PDF en PHP
¿Alguna vez ha intentado abrir un archivo PDF para buscar una línea o palabra específica?? No funciona. Todo lo que encontrará son datos binarios que no tienen absolutamente ningún sentido.

Analizar archivos PDF es muy tedioso y complicado para cualquier desarrollador de software, no porque sea complejo sino por la naturaleza de los archivos PDF. Los archivos PDF contienen objetos identificados por un número único. Los objetos PDF pueden recopilar información como imágenes, texto y más. Estos objetos están encriptados y comprimidos, lo que hace que sea casi imposible procesar PDF como documentos de texto.

Esta guía aprenderá cómo analizar los documentos PDF utilizando el lenguaje de programación PHP.

Configuración

El primer paso es configurar un entorno de desarrollo. Comenzaremos instalando PHP y las bibliotecas requeridas.

Para instalar PHP, abra el terminal e ingrese el comando:

$ sudo apt-get instalación php7.5 -y

Una vez que se instala PHP, úselo para instalar el compositor como se muestra en los comandos:

php -r "copy ('https: // getComposer.org/instalador ',' compositor-setup.php '); "
php -r "if (hash_file ('sha384', 'compositor -setup.php ') ===
'906A84DF04CEA2AA72F40B5F787E49F22D4C2F19492AC310E8CBA5B96AC8B64115AC402C8CD292B
8a03482574915d1a8 ') echo' instalador verificado '; else echo 'instalador corrupto';
Unlink ('compositor-setup.php '); echo php_eol; "
compositor de PHP.php
PHP -R "Unlink ('compositor -setup.php '); "

Una vez que tenemos el compositor instalado y configurado, podemos proceder a usar la biblioteca PDFParser.

Abra el terminal e ingrese el comando:

$ sudo PHP Composer.PHAR requiere Smalot/PDFParser

Generar el archivo PDF

El siguiente paso es seleccionar un archivo PDF para usar. Hay varias formas y recursos que puede usar para crear un archivo PDF. Por ejemplo, si está en Windows, puede exportar un .documento doc/docx a PDF.

Sin embargo, para este ejemplo, usaremos archivos gratuitos disponibles en Internet. Abra su navegador y navegue al recurso proporcionado a continuación:

https: // archivos muestras.com/formatos/pdf

Seleccione uno de los archivos PDF disponibles y guárdelo en su sistema.

NOTA: Asegúrese de verificar archivos maliciosos antes de usar dichos documentos. Herramientas como Virustotal son excelentes recursos.

https: // www.virusta.com/gui/

El siguiente es un informe de escaneo de la muestra1.archivo PDF.

https: // www.virusta.com/gui/file/6b22904a7de5b77bf40598c37e94e01771485e1b900651b58bf50af7009f8056

Extraer metadatos PDF

Para extraer metadatos del PDF utilizando la biblioteca de analizador PDF, podemos implementar el código de muestra como se muestra a continuación:

// Incluye el compositor Autoloader
incluir 'proveedor/autoload.php ';
// analizar PDF
$ parser = new \ smalot \ pdfParser \ parser ();
$ pdf = $ parser-> parsefile ("muestra1.pdf ");
// Obtener metadatos
$ metadata = $ pdf-getDetails ();
// bucle cada propiedad
foreach ($ metadata como meta => $ valor)
if (is_array ($ valor))
$ valor.Implicar (",", $ valor);

Echo $ meta . "=>" . $ valor . "\norte";

?>

El código anterior debe obtener información de metadatos sobre el archivo. Dicha información incluye:

CREATIONDATE: 2016-12-22T11: 43: 55-05: 00
Creador: Adobe InDesign CC 2015 (Macintosh)
Moddate: 2016-12-29T15: 47: 20-05: 00
Productor: Adobe PDF Biblioteca 15.0
Atrapado: Falso
Páginas 1

Extraer texto

Para extraer texto de cada página del PDF enviado, podemos implementar el código como se muestra a continuación:

incluir "Vendor/Autoload.php ";
$ parser = new \ smalot \ pdfParser \ parser ();
$ pdf = $ parser-> parsefile ("muestra1.pdf ");
$ text = $ pdf-> getText ();
echo $ texto;
?>

Una vez que ejecutamos el código anterior, deberíamos ver el texto extraído de la muestra1.archivo PDF. Ejemplo Outug es como se muestra a continuación:

Clausura

Esta guía le muestra cómo puede analizar los archivos PDF usando PHP y la biblioteca PDFParser. Consulte la documentación para obtener más información.