API PHP ฟรีสำหรับสกัดข้อความและเมตาดาต้าจาก PDF และรูปภาพ
ไลบรารี OCR (Optical Character Recognition) PHP โอเพนซอร์สที่ช่วยสกัดข้อความ, เมตาดาต้าและ HTML จาก PDF, DOCX, รูปภาพ (JPEG, PNG) และเอกสารอื่นๆ ในหลายภาษา ภายในแอป PHP
ในสาขาการพัฒนาซอฟต์แวร์ การจัดการข้อความจากไฟล์ประเภทต่างๆ อาจเป็นเรื่องท้าทายแต่เป็นงานที่ทำบ่อย ไม่ว่าคุณจะสร้างระบบจัดการเอกสาร เครื่องมือวิเคราะห์เนื้อหา หรือเครื่องมือค้นหา การสามารถสกัดข้อความจาก PDF, เอกสาร Word, สเปรดชีต และไฟล์รูปแบบอื่นๆ ถือเป็นสิ่งสำคัญ นี่คือจุดที่ไลบรารี PHP-Apache-Tika มีคุณค่า Apache Tika เป็นชุดเครื่องมือที่ยืดหยุ่นออกแบบมาสำหรับจัดการงานวิเคราะห์เนื้อหา คุณสามารถใช้ Tika เพื่อดึงเมตาดาต้าและข้อความจากไฟล์ประเภทต่างๆ เช่น PDF, ไฟล์ Microsoft Office, และรูปภาพ Tika เริ่มต้นเขียนด้วยภาษา Java และมักจะทำงานเป็นเซิร์ฟเวอร์ของตนเอง ทำให้เข้าถึงได้ผ่าน HTTP วิธีนี้ทำให้ภาษาการเขียนโปรแกรมต่างๆ เช่น PHP สามารถใช้ความสามารถของ Tika ได้โดยไม่ต้องสร้างกระบวนการพาร์เซอร์ที่ซับซ้อนตั้งแต่ต้น
ไลบรารีนี้รองรับคุณลักษณะหลายอย่าง เช่น การสกัดข้อความและ HTML, การสกัดเมตาดาต้า, การจัดการข้อผิดพลาดที่ดีขึ้น, การจดจำ OCR, เมตาดาต้ามาตรฐานสำหรับเอกสาร, การสนับสนุนทรัพยากรภายในและภายนอก, และอื่นๆ อีกมากมาย ไลบรารี PHP-Apache-Tika ทำหน้าที่เชื่อม PHP แอปพลิเคชันกับเซิร์ฟเวอร์ Apache Tika แทนการสร้างพาร์เซอร์หรือคอนเวอร์เตอร์ของคุณเอง คุณสามารถใช้ไลบรารีนี้ส่งเอกสารไปยังเซิร์ฟเวอร์ Tika และรับข้อความหรือเมตาดาต้าที่สกัดอย่างสะอาดกลับมา สิ่งนี้ไม่เพียงทำให้กระบวนการพัฒนาง่ายขึ้น แต่ยังทำให้แอปของคุณได้รับประโยชน์จากการปรับปรุงอย่างต่อเนื่องของ Tika และการสนับสนุนรูปแบบไฟล์ที่กว้างขวาง ไม่ว่าคุณจะพัฒนาระบบจัดการเอกสารที่ซับซ้อนหรือเครื่องมือวิเคราะห์เนื้อหาที่เบา ไลบรารี PHP-Apache-Tika ให้โซลูชันที่เชื่อถือได้และยืดหยุ่น
เริ่มต้นใช้งาน PHP-Apache-Tika
วิธีที่แนะนำในการติดตั้ง PHP-Apache-Tika คือการใช้ Composer โปรดใช้คำสั่งต่อไปนี้เพื่อการติดตั้งที่ราบรื่น
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 คุณสามารถดาวน์โหลดไลบรารีที่คอมไพล์แล้วจาก Github repository.
การสกัดข้อความและ HTML ผ่าน PHP
หนึ่งในคุณลักษณะหลักของไลบรารี PHP-Apache-Tika คือความสามารถในการสกัดข้อความจากรูปแบบเอกสารต่างๆ ซึ่งเป็นประโยชน์อย่างยิ่งเมื่อทำฟังก์ชันการค้นหา หรือเครื่องมือวิเคราะห์เนื้อหา ไลบรารีนี้รองรับการสกัดข้อความธรรมดาจากเอกสาร ทำให้การทำดัชนี การค้นหา หรือการวิเคราะห์เนื้อหาง่ายขึ้น ตัวอย่างโค้ดต่อไปนี้แสดงให้เห็นว่า TikaClient ส่งเอกสารไปยังเซิร์ฟเวอร์ Tika และดึงข้อความธรรมดามา ทำให้พร้อมสำหรับการประมวลผลต่อหรือทำดัชนีต่อไป
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();
}
การสกัดเมตาดาต้าผ่านไลบรารี PHP
นอกจากข้อความแล้ว เอกสารมักมีเมตาดาต้าที่มีคุณค่า เช่น ข้อมูลผู้เขียน วันที่สร้าง และประเภทไฟล์ ไลบรารี PHP-Apache-Tika สามารถสกัดเมตาดาต้านี้ได้ ช่วยให้คุณสร้างแอปพลิเคชันที่มีความสมบูรณ์ยิ่งขึ้น ตัวอย่างต่อไปนี้แสดงวิธีดึงเมตาดาต้าจากเอกสาร ผลลัพธ์เป็นอาเรย์ที่อาจมีรายละเอียดต่างๆ ขึ้นอยู่กับประเภทไฟล์และเนื้อหาของมัน
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();
}
การจัดการหลายรูปแบบไฟล์
พลังของ Apache Tika อยู่ที่การสนับสนุนหลายรูปแบบไฟล์ ไม่ว่าคุณจะทำงานกับ PDF, DOC, รูปภาพ หรือแม้แต่ไฟล์ที่ไม่ค่อยพบบ่อย ไลบรารีนี้ช่วยให้คุณสกัดข้อมูลที่จำเป็นได้โดยไม่ต้องกังวลเรื่องข้อแตกต่างของรูปแบบ ตัวอย่างเช่น หากคุณกำลังพัฒนาระบบจัดการเอกสารที่ผู้ใช้สามารถอัปโหลดไฟล์ประเภทต่างๆ คุณอาจใช้ไลบรารีนี้เพื่อระบุทั้งเนื้อหาและเมตาดาต้าของแต่ละไฟล์: