Wie man PDF in PHP analysiert

Wie man PDF in PHP analysiert
Haben Sie jemals versucht, eine PDF -Datei zu öffnen, um nach einer bestimmten Zeile oder einem bestimmten Wort zu suchen? Es funktioniert nicht. Alles, was Sie finden, sind binäre Daten, die absolut keinen Sinn ergeben.

Das Parsen von PDF -Dateien ist für jeden Softwareentwickler sehr mühsam und kompliziert, nicht weil sie komplex sind, sondern aufgrund der Art von PDF -Dateien. PDF -Dateien enthalten Objekte, die durch eine eindeutige Nummer identifiziert werden. PDF -Objekte können Informationen wie Bilder, Text und mehr sammeln. Diese Objekte sind verschlüsselt und komprimiert, sodass es fast unmöglich ist, PDFs als Textdokumente zu verarbeiten.

In diesem Leitfaden lernen Sie, wie Sie PDF -Dokumente mithilfe der PHP -Programmiersprache analysieren.

Aufstellen

Der erste Schritt besteht darin, eine Entwicklungsumgebung einzurichten. Wir werden zunächst PHP und die erforderlichen Bibliotheken installieren.

Öffnen Sie zum Installieren von PHP den Terminal und geben Sie den Befehl ein:

$ sudo apt-Get Installieren Sie Php7.5 -y

Sobald PHP installiert ist, installieren Sie es, um den Komponisten wie in den Befehlen gezeigt zu installieren:

PHP -r "copy ('https: // getComposer.Org/Installer ',' Composer-Setup.PHP '); "
PHP -r "if (Hash_file ('SHA384', Composer -Setup.PHP ') ===
'906A84DF04CEA2AAA72F40B5F787E49F22D4C2F19492AC310E8CBA5B96AC8B64115AC402C8CD292B
8A03482574915d1a8 ') echo' Installer verifiziert '; else echo 'Installer korrupt';
Unglück ('Komponistsetup.PHP '); echo php_eol; "
PHP-Komponist-Setup.Php
PHP -r "UNLINK ('Composer -Setup.PHP '); "

Sobald wir den Komponisten installieren und eingerichtet haben, können wir die PDFParser -Bibliothek verwenden.

Öffnen Sie den Terminal und geben Sie den Befehl ein:

$ sudo Php Komponist.PHAR benötigt Smalot/PDFParser

Generieren Sie die PDF -Datei

Der nächste Schritt besteht darin, eine PDF -Datei zur Verwendung auszuwählen. Es gibt verschiedene Möglichkeiten und Ressourcen, mit denen Sie eine PDF -Datei erstellen können. Wenn Sie beispielsweise unter Windows sind, können Sie a exportieren .DOC/DOCX -Dokument zu PDF.

In diesem Beispiel werden wir jedoch kostenlose Dateien verwenden, die im Internet leicht verfügbar sind. Öffnen Sie Ihren Browser und navigieren Sie zu der unten angegebenen Ressource:

https: // filesAmples.com/formate/pdf

Bitte wählen Sie eine der verfügbaren PDF -Dateien aus und speichern Sie sie in Ihrem System.

NOTIZ: Stellen Sie sicher, dass Sie auf böswillige Dateien suchen, bevor Sie solche Dokumente verwenden. Tools wie Virustotal sind großartige Ressourcen.

https: // www.virustotal.com/gui/

Das Folgende ist ein Scan -Bericht von Sample11.PDF Datei.

https: // www.virustotal.com/GUI/Datei/6B22904A7DE5B77BF40598C37E94E01771485E1B900651B58BFF50AF7009F8056

PDF -Metadaten extrahieren

Um Metadaten aus der PDF unter Verwendung der PDF -Parser -Bibliothek zu extrahieren, können wir den unten gezeigten Beispielcode implementieren:

// Composer Autoloader einschließen
Halten Sie 'Hersteller/Autoload ein.PHP ';
// PDF analysieren
$ parser = new \ smalot \ pdfParser \ parser ();
$ pdf = $ parser-> parsefile ("sample1.pdf ");
// Metadaten holen
$ metadata = $ PDF-GetDetails ();
// Jede Eigenschaft schleifen
foreach ($ metadata als meta => $ value)
if (is_array ($ value))
$ Wert.implode (",", $ value);

Echo $ meta . "=>" . $ Wert . "\N";

?>

Der obige Code sollte Metadateninformationen zur Datei abrufen. Solche Informationen umfassen:

CreationDate: 2016-12-22T11: 43: 55-05: 00
Schöpfer: Adobe Indesign CC 2015 (Macintosh)
Moddate: 2016-12-29T15: 47: 20-05: 00
Produzent: Adobe PDF Library 15.0
Gefangen: Falsch
Seiten 1

Text extrahieren

Um Text aus jeder Seite des eingereichten PDF zu extrahieren, können wir den Code wie unten gezeigt implementieren:

Halten Sie "Verkäufer/Autoload ein.PHP ";
$ parser = new \ smalot \ pdfParser \ parser ();
$ pdf = $ parser-> parsefile ("sample1.pdf ");
$ text = $ pdf-> getText ();
echo $ text;
?>

Sobald wir den obigen Code ausführen, sollten wir den aus dem Beispiel1 extrahierten Text sehen.PDF Datei. Beispiel OUPUT ist wie unten gezeigt:

Schließen

Diese Anleitung zeigt, wie Sie PDF -Dateien mithilfe von PHP und der PDFParser -Bibliothek analysieren können. Überprüfen Sie die Dokumentation, um mehr zu erfahren.