Free PHP API to Extract Text & Metadata from PDF and Images
Open Source PHP Optical Character Recognition Library allows to Extract Text, Metadata and HTML from PDF, DOCX, Images (JPEG, PNG) & Other Documents in Multiple Languages inside PHP Apps.
În domeniul dezvoltării software, gestionarea textului din diferite tipuri de fișiere poate fi complicată, dar este o sarcină frecventă. Indiferent dacă creați un sistem pentru gestionarea documentelor, un instrument pentru analizarea conținutului sau un motor de căutare, capacitatea de a extrage text din PDF-uri, documente Word, foi de calcul și alte formate de fișiere este esențială. Aici intervine biblioteca PHP-Apache-Tika. Apache Tika este un set de instrumente flexibil conceput pentru a gestiona sarcini de analiză a conținutului. Puteți folosi Tika pentru a extrage metadate și text din diverse tipuri de fișiere, cum ar fi PDF-uri, fișiere Microsoft Office și imagini. Tika a fost inițial scrisă în Java. De obicei este configurată ca propriul său server, accesibil prin HTTP. Această metodă permite diferitelor limbaje de programare, cum ar fi PHP, să acceseze capabilitățile puternice ale Tika fără a fi nevoie să creeze procese complexe de parsare de la zero.
Biblioteca suportă numeroase funcționalități, cum ar fi extragerea de text și HTML, extragerea de metadate, gestionarea îmbunătățită a erorilor, recunoaștere OCR, metadate standardizate pentru documente, suport pentru resurse locale și la distanță și multe altele. Biblioteca PHP-Apache-Tika conectează aplicațiile PHP cu serverul Apache Tika. În loc să construiți proprii parsere sau convertoare, puteți conta pe această bibliotecă pentru a trimite documente către serverul Tika și a primi înapoi text curat sau metadate extrase. Acest lucru simplifică procesul de dezvoltare și asigură că aplicația dumneavoastră beneficiază de îmbunătățirile continue ale Tika și de suportul larg pentru formate. Indiferent dacă dezvoltați un sistem complex de gestionare a documentelor sau un instrument ușor de analiză a conținutului, biblioteca PHP-Apache-Tika oferă o soluție fiabilă și flexibilă.
Getting Started with PHP-Apache-Tika
The recommend way to install PHP-Apache-Tika is using Composer. Please use the following command for a smooth installation.
Install PHP-Apache-Tika via Composer
composer require vaites/php-apache-tikaInstall PHP-Apache-Tika via Github
git clone https://github.com/fizzday/OcrPHP.git You can download the compiled shared library from Github repository.
Text and HTML Extraction via PHP
One of the primary features of the PHP-Apache-Tika library is its ability to extract text from various document formats. This can be particularly useful when implementing search functionalities or content analysis tools. The library supports extracting plain text from documents, making it easier to index, search, or analyze content. Here is a code snippet that demonstrates how TikaClient sends the document to the Tika server and retrieves the plain text content, making it ready for further processing or indexing.
How to Extract Text from a Document inside PHP Apps?
require_once 'vendor/autoload.php';
use Vaites\ApacheTika\TikaClient;
// Initialize the Tika client with the Tika server URL
$client = new TikaClient('http://localhost:9998');
// Define the path to the document (e.g., PDF, DOCX, etc.)
$filePath = '/path/to/your/document.pdf';
try {
// Extract text content from the document
$extractedText = $client->extract($filePath);
echo "Extracted Text:\n" . $extractedText;
} catch (\Exception $e) {
echo "Error extracting text: " . $e->getMessage();
}
Metadata Extraction via PHP Library
Beyond just text, documents often contain valuable metadata such as author information, creation dates, and file types. The PHP-Apache-Tika library can extract this metadata, allowing you to build richer applications. This example demonstrates how to retrieve metadata from a document. The resulting array can include various details depending on the file type and its contents.
How to Extract Metadata using PHP Library?
require_once 'vendor/autoload.php';
use Vaites\ApacheTika\TikaClient;
// Initialize the Tika client
$client = new TikaClient('http://localhost:9998');
// Specify the document file path
$filePath = '/path/to/your/document.pdf';
try {
// Extract metadata from the document
$metadata = $client->getMetadata($filePath);
echo "Extracted Metadata:\n";
print_r($metadata);
} catch (\Exception $e) {
echo "Error extracting metadata: " . $e->getMessage();
}
Handling Multiple File Formats
The power of Apache Tika lies in its support for multiple file formats. Whether you’re dealing with PDFs, DOCs, images, or even less common file types, this library helps ensure you can extract the necessary data without worrying about format-specific quirks. Imagine you’re developing a document management system where users can upload different file types. You might use the library to determine both the content and metadata for each file: