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.
সফটওয়্যার ডেভেলপমেন্টের ক্ষেত্রে, বিভিন্ন ধরনের ফাইল থেকে টেক্সট হ্যান্ডল করা চ্যালেঞ্জিং হতে পারে, তবে এটি একটি সাধারণ কাজ। আপনি ডকুমেন্ট ম্যানেজমেন্ট সিস্টেম, কন্টেন্ট বিশ্লেষণ টুল, অথবা সার্চ ইঞ্জিন তৈরি করুক না কেন, PDF, ওয়ার্ড ডকুমেন্ট, স্প্রেডশিট এবং অন্যান্য ফাইল ফরম্যাট থেকে টেক্সট এক্সট্র্যাক্ট করা অত্যন্ত গুরুত্বপূর্ণ। এখানেই PHP‑Apache‑Tika লাইব্রেরি কাজের সাথী হয়ে ওঠে। Apache Tika একটি নমনীয় টুলকিট, যা কন্টেন্ট বিশ্লেষণ কাজের জন্য তৈরি। আপনি Tika ব্যবহার করে PDF, মাইক্রোসফট অফিস ফাইল এবং ইমেজসহ বিভিন্ন ফাইলের মেটাডেটা ও টেক্সট বের করতে পারেন। Tika মূলত জাভা দিয়ে লেখা হয়েছে এবং সাধারণত একটি আলাদা সার্ভার হিসেবে চালু থাকে, যা HTTP এর মাধ্যমে অ্যাক্সেসযোগ্য। এই পদ্ধতি বিভিন্ন প্রোগ্রামিং ভাষা, যেমন PHP, কে Tika‑এর শক্তিশালী ক্ষমতায় প্রবেশের সুযোগ দেয়, নিজে থেকে জটিল পার্সিং প্রক্রিয়া তৈরি না করেও।
লাইব্রেরিটি টেক্সট ও HTML এক্সট্র্যাকশন, মেটাডেটা এক্সট্র্যাকশন, উন্নত ত্রুটি হ্যান্ডলিং, OCR স্বীকৃতি, ডকুমেন্টের জন্য স্ট্যান্ডার্ডাইজড মেটাডেটা, লোকাল ও রিমোট রিসোর্স সাপোর্ট এবং আরও অনেক ফিচার সমর্থন করে। PHP‑Apache‑Tika লাইব্রেরি PHP অ্যাপ্লিকেশনকে Apache Tika সার্ভারের সঙ্গে সংযুক্ত করে। নিজের পার্সার বা কনভার্টার তৈরি করার বদলে, আপনি এই লাইব্রেরি ব্যবহার করে ডকুমেন্ট Tika সার্ভারে পাঠাতে পারেন এবং পরিষ্কার টেক্সট বা মেটাডেটা ফিরে পেতে পারেন। এটি ডেভেলপমেন্ট প্রক্রিয়াকে সহজ করে এবং আপনার অ্যাপ্লিকেশনকে Tika‑এর ক্রমাগত আপডেট ও বিস্তৃত ফরম্যাট সাপোর্টের সুবিধা দেয়। আপনি যদি জটিল ডকুমেন্ট ম্যানেজমেন্ট সিস্টেম বা হালকা কন্টেন্ট বিশ্লেষণ টুল তৈরি করেন, PHP‑Apache‑Tika একটি নির্ভরযোগ্য ও নমনীয় সমাধান প্রদান করে।
PHP‑Apache‑Tika দিয়ে শুরু করা
PHP‑Apache‑Tika ইনস্টল করার সুপারিশকৃত পদ্ধতি হল Composer ব্যবহার করা। মসৃণ ইনস্টলেশনের জন্য নিচের কমান্ডটি ব্যবহার করুন।
Composer দিয়ে PHP‑Apache‑Tika ইনস্টল করুন
composer require vaites/php-apache-tikaGithub দিয়ে PHP‑Apache‑Tika ইনস্টল করুন
git clone https://github.com/fizzday/OcrPHP.git আপনি Github রিপোজিটরি থেকে কম্পাইল করা শেয়ার্ড লাইব্রেরি ডাউনলোড করতে পারেন।
PHP দিয়ে টেক্সট এবং HTML এক্সট্র্যাকশন
PHP‑Apache‑Tika লাইব্রেরির প্রধান ফিচারগুলোর একটি হল বিভিন্ন ডকুমেন্ট ফরম্যাট থেকে টেক্সট এক্সট্র্যাক্ট করার ক্ষমতা। এটি সার্চ ফাংশনালিটি বা কন্টেন্ট বিশ্লেষণ টুল বাস্তবায়নের সময় বিশেষভাবে উপকারী। লাইব্রেরি ডকুমেন্ট থেকে প্লেইন টেক্সট এক্সট্র্যাক্ট সমর্থন করে, যা ইনডেক্সিং, সার্চ বা কন্টেন্ট বিশ্লেষণকে সহজ করে। নিচে একটি কোড স্নিপেট আছে যা দেখায় কীভাবে TikaClient ডকুমেন্টটি Tika সার্ভারে পাঠায় এবং প্লেইন টেক্সট কন্টেন্ট রিট্রিভ করে, যাতে তা আরও প্রসেসিং বা ইনডেক্সিংয়ের জন্য প্রস্তুত হয়।
PHP অ্যাপের মধ্যে ডকুমেন্ট থেকে টেক্সট কীভাবে এক্সট্র্যাক্ট করবেন?
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 লাইব্রেরি এই মেটাডেটা এক্সট্র্যাক্ট করতে পারে, যা আপনাকে আরও সমৃদ্ধ অ্যাপ্লিকেশন তৈরি করতে সহায়তা করে। এই উদাহরণটি দেখায় কীভাবে ডকুমেন্ট থেকে মেটাডেটা রিট্রিভ করা যায়। রেজাল্টিং অ্যারে ফাইলের ধরন ও কন্টেন্টের ওপর নির্ভর করে বিভিন্ন বিস্তারিত অন্তর্ভুক্ত করতে পারে।
PHP লাইব্রেরি ব্যবহার করে মেটাডেটা কীভাবে এক্সট্র্যাক্ট করবেন?
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, ইমেজ অথবা কম প্রচলিত ফাইল টাইপের সঙ্গে কাজ করেন, এই লাইব্রেরি আপনাকে ফরম্যাট-নির্দিষ্ট জটিলতা নিয়ে চিন্তা না করে প্রয়োজনীয় ডেটা এক্সট্র্যাক্ট করতে সহায়তা করে। ধরুন আপনি একটি ডকুমেন্ট ম্যানেজমেন্ট সিস্টেম তৈরি করছেন যেখানে ব্যবহারকারীরা বিভিন্ন ফাইল টাইপ আপলোড করতে পারে। আপনি লাইব্রেরি ব্যবহার করে প্রতিটি ফাইলের কন্টেন্ট এবং মেটাডেটা উভয়ই নির্ধারণ করতে পারেন: