استخراج متن از فایلهای PDF یک نیاز مکرر هنگام ساخت خطوط پردازش سند است، بهویژه برای ایندکسگذاری جستجو یا تجزیه و تحلیل دادهها. GroupDocs.Parser Cloud SDK for Node.JS کتابخانهای قدرتمند فراهم میکند که به شما امکان میدهد بهصورت برنامهنویسی متن را از PDF در Node.JS استخراج کنید بدون اینکه به منطق تجزیه و تحلیل سطح پایین بپردازید. در این راهنما خواهید آموخت که چگونه متن را از PDF در Node.JS استخراج کنید با استفاده از یک مثال کامل کد، یک گزینه جایگزین cURL REST، و مراحل تنظیم لازم، که هر دو نوع PDF ساده و رمزگذاریشده را پوشش میدهد.
استخراج متن از PDF در Node.JS - مثال کامل کد
مثال زیر نشان میدهد که چگونه میتوان متن را از PDF در Node.JS با استفاده از GroupDocs.Parser Cloud SDK استخراج کرد. این مثال شامل مقداردهی اولیه، ساخت درخواست، اجرا و ذخیره نتایج در یک فایل محلی است.
const GroupDocsParserCloud = require("@groupdocs/parser-cloud");
const fs = require("fs");
(async () => {
// Initialize configuration with your credentials
const config = new GroupDocsParserCloud.Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
// Create Parser API instance
const parserApi = new GroupDocsParserCloud.ParserApi(config);
// Build request to extract text from a PDF file stored in cloud storage
const request = new GroupDocsParserCloud.ExtractTextRequest({
fileInfo: new GroupDocsParserCloud.FileInfo({
filePath: "input.pdf" // path to the PDF in GroupDocs cloud storage
})
});
try {
// Execute the request
const result = await parserApi.extractText(request);
// result.text contains the extracted plain text
console.log("Extracted Text:\n", result.text);
// Save extracted text to a local file
fs.writeFileSync("extracted.txt", result.text, "utf8");
console.log("Text saved to extracted.txt");
} catch (error) {
console.error("Error extracting text:", error);
}
})();
توجه: این مثال کد عملکرد اصلی را نشان میدهد. قبل از استفاده از آن در پروژه خود، اطمینان حاصل کنید که مسیرهای فایل و مقادیر پیکربندی را بهگونهای بهروزرسانی کنید که با محیط واقعی شما مطابقت داشته باشند، بررسی کنید که تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.
دریافت متن PDF با استفاده از cURL و REST API
اگر ترجیح میدهید از رویکردی مستقل از زبان استفاده کنید، میتوانید همان نتیجه را با دستورات cURL که API REST سرویس GroupDocs.Parser Cloud را فراخوانی میکنند، به دست آورید. مراحل زیر نشان میدهند که چگونه احراز هویت کنید، یک PDF را بارگذاری کنید، متن آن را استخراج کنید و نتیجه را دانلود کنید.
# 1. Get an access token
curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
# Response contains "access_token"
# 2. Upload the PDF to cloud storage
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input.pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/pdf" \
--data-binary @input.pdf
# 3. Extract text from the uploaded PDF
curl -X POST "https://api.groupdocs.cloud/v2.0/parser/extractText" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"fileInfo":{"filePath":"input.pdf"}}' \
-o result.json
# 4. Save the extracted text locally
jq -r '.text' result.json > extracted.txt
این دستورات همان عملیات استخراج متن از PDF در Node.JS را انجام میدهند، اما از طریق API ابری، که ادغام آن را با هر پلتفرمی آسان میکند. برای جزئیات بیشتر، به مرجع رسمی API مراجعه کنید.
تحلیل استخراج متن از PDF در Node.JS
درک هر بخش از کد به شما کمک میکند تا آن را برای سناریوهای پیچیدهتر، مانند پردازش PDFهای اسکنشده یا رمزگذاریشده، سازگار کنید.
- پیکربندی اولیه -
const config = new GroupDocsParserCloud.Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
این یک شیء پیکربندی ایجاد میکند که اعتبارنامههای احراز هویت شما را نگه میدارد. این کلاس در مرجع API مستند شده است.
- نمونهٔ Parser API -
const parserApi = new GroupDocsParserCloud.ParserApi(config);
ParserApi کلاس متدهایی برای تمام عملیات تجزیه فراهم میکند، از جمله extractText.
ساخت ExtractTextRequest -
const request = new GroupDocsParserCloud.ExtractTextRequest({ fileInfo: new GroupDocsParserCloud.FileInfo({ filePath: "input.pdf" }) });ExtractTextRequestبه سرویس میگوید که کدام فایل را پردازش کند. همچنین میتوانید گزینههای OCR را در اینجا برای PDFهای اسکنشده تنظیم کنید.اجرای درخواست -
const result = await parserApi.extractText(request);
متد extractText درخواست را به ابر ارسال میکند و یک شیء پاسخ حاوی متن ساده را برمیگرداند.
- مدیریت نتیجه -
console.log("Extracted Text:\n", result.text);
fs.writeFileSync("extracted.txt", result.text, "utf8");
ویژگی result.text حاوی محتوای استخراجشده است که میتوانید آن را لاگ کنید، ذخیره کنید یا بهطور بیشتر پردازش کنید.
نصب و پیکربندی GroupDocs.Parser Cloud SDK for Node.JS
قبل از اینکه بتوانید کد را اجرا کنید، SDK را نصب کنید و محیط خود را تنظیم کنید.
npm install groupdocs-parser-cloud
پیشنیازها: Node.js 14 یا بالاتر، یک حساب فعال GroupDocs Cloud، و اعتبارهای کلاینت (شناسه کلاینت و کلید محرمانه). آخرین بسته را از صفحه دانلود رسمی دریافت کنید. پس از نصب، یک config.json ایجاد کنید (یا از متغیرهای محیطی استفاده کنید) تا اعتبارهای خود را بهصورت ایمن ذخیره کنید.
نتیجهگیری
استخراج متن از PDF در Node.JS بهسادگی انجام میشود با GroupDocs.Parser Cloud SDK for Node.JS. SDK پیچیدگی تجزیه PDF را انتزاع میکند، از OCR برای PDFهای اسکنشده پشتیبانی میکند و اسناد رمزگذاریشده را بهصورت پیشفرض مدیریت میکند. بهخاطر داشته باشید که برای استفاده در محیط تولید یک لایسنس معتبر دریافت کنید؛ میتوانید یک اشتراک خریداری کنید یا برای ارزیابی کتابخانه یک مجوز موقت درخواست کنید. با مثال کد، جایگزین cURL و مراحل نصب پوشش دادهشده، آمادهاید تا استخراج متن PDF را در جریان کاری اسناد خود یکپارچه کنید و قابلیتهای قدرتمند جستجو و تحلیل را فعال کنید.
سوالات متداول
چگونه میتوانم متن را از PDF در Node.JS با استفاده از GroupDocs.Parser استخراج کنم؟
از متدextractTextدرParserApiهمانطور که در مثال کامل کد نشان داده شده است استفاده کنید. SDK بهصورت خودکار متن ساده را برمیگرداند و میتوانید OCR را برای PDFهای اسکنشده فعال کنید.آیا میتوانم متن را از PDF اسکنشده در Node.JS استخراج کنم؟
بله. گزینههای OCR را درExtractTextRequestتنظیم کنید تا سرویس بتواند متن را در صفحات مبتنی بر تصویر تشخیص دهد.اگر PDF من با رمز عبور محافظت شود چه میشود؟
رمز عبور را در شیءFileInfoقرار دهید (password: "yourPassword"). SDK قبل از استخراج متن، فایل را رمزگشایی میکند.آیا راهی برای فراخوانی سرویس بدون نوشتن کد Node.JS وجود دارد؟
مطمئناً. دستورات cURL در بخش “Retrieve PDF Text Using cURL and the REST API” نشاندهنده یک رویکرد زبان‑بیطرف از طریق REST API هستند.
