Trích xuất văn bản từ các tệp PDF là một yêu cầu thường gặp khi xây dựng các pipeline xử lý tài liệu, đặc biệt là cho việc lập chỉ mục tìm kiếm hoặc phân tích dữ liệu. GroupDocs.Parser Cloud SDK for Node.JS cung cấp một thư viện mạnh mẽ cho phép bạn trích xuất văn bản từ PDF trong Node.JS một cách lập trình mà không cần xử lý logic phân tích cấp thấp. Trong hướng dẫn này, bạn sẽ học cách trích xuất văn bản từ PDF trong Node.JS bằng một ví dụ mã hoàn chỉnh, một tùy chọn REST cURL, và các bước thiết lập cần thiết, bao gồm cả PDF thường và PDF được mã hóa.
Trích xuất văn bản từ PDF trong Node.JS - Ví dụ mã hoàn chỉnh
Ví dụ sau đây minh họa cách trích xuất văn bản từ PDF trong Node.JS bằng GroupDocs.Parser Cloud SDK. Nó bao gồm việc khởi tạo, xây dựng yêu cầu, thực thi và lưu kết quả vào tệp cục bộ.
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);
}
})();
Lưu ý: Ví dụ mã này minh họa chức năng cốt lõi. Trước khi sử dụng trong dự án của bạn, hãy chắc chắn cập nhật mọi đường dẫn tệp và giá trị cấu hình để phù hợp với môi trường thực tế của bạn, xác minh rằng tất cả các phụ thuộc cần thiết đã được cài đặt đúng cách, và kiểm tra kỹ lưỡng trong môi trường phát triển. Nếu bạn gặp bất kỳ vấn đề nào, vui lòng tham khảo tài liệu chính thức hoặc liên hệ với đội hỗ trợ để được trợ giúp.
Truy xuất văn bản PDF bằng cURL và REST API
Nếu bạn muốn một cách tiếp cận không phụ thuộc vào ngôn ngữ, bạn có thể đạt được kết quả tương tự bằng các lệnh cURL gọi GroupDocs.Parser Cloud REST API. Các bước dưới đây cho thấy cách xác thực, tải lên một PDF, trích xuất văn bản của nó và tải xuống kết quả.
# 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
Các lệnh này thực hiện cùng một thao tác trích xuất văn bản từ PDF trong Node.JS, nhưng thông qua API đám mây, giúp dễ dàng tích hợp với bất kỳ nền tảng nào. Để biết thêm chi tiết, xem tài liệu tham khảo API chính thức.
Phân Tích Trích Xuất Văn Bản Từ PDF trong Node.JS
Hiểu từng phần của mã giúp bạn điều chỉnh nó cho các kịch bản phức tạp hơn, chẳng hạn như xử lý các tệp PDF đã quét hoặc được mã hóa.
- Khởi tạo Cấu hình -
const config = new GroupDocsParserCloud.Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
Điều này tạo ra một đối tượng cấu hình chứa thông tin xác thực của bạn. Lớp này được tài liệu hoá trong Tham khảo API.
- Đối tượng Parser API -
const parserApi = new GroupDocsParserCloud.ParserApi(config);
Lớp ParserApi cung cấp các phương thức cho tất cả các thao tác phân tích, bao gồm extractText.
Xây dựng ExtractTextRequest -
const request = new GroupDocsParserCloud.ExtractTextRequest({ fileInfo: new GroupDocsParserCloud.FileInfo({ filePath: "input.pdf" }) });ExtractTextRequestcho dịch vụ biết tệp nào sẽ được xử lý. Bạn cũng có thể thiết lập các tùy chọn OCR ở đây cho các PDF đã quét.Thực hiện yêu cầu -
const result = await parserApi.extractText(request);
Phương thức extractText gửi yêu cầu tới đám mây và trả về một đối tượng phản hồi chứa văn bản thuần.
- Xử lý Kết quả -
console.log("Extracted Text:\n", result.text);
fs.writeFileSync("extracted.txt", result.text, "utf8");
Thuộc tính result.text chứa nội dung đã trích xuất, bạn có thể ghi log, lưu trữ hoặc xử lý tiếp.
Cài đặt và cấu hình GroupDocs.Parser Cloud SDK for Node.JS
Trước khi bạn có thể chạy mã, hãy cài đặt SDK và thiết lập môi trường của bạn.
npm install groupdocs-parser-cloud
Yêu cầu trước: Node.js 14 hoặc mới hơn, một tài khoản GroupDocs Cloud đang hoạt động và thông tin xác thực của khách hàng (client ID và client secret). Tải xuống gói mới nhất từ trang tải xuống chính thức. Sau khi cài đặt, tạo một tệp config.json (hoặc sử dụng biến môi trường) để lưu trữ thông tin xác thực của bạn một cách an toàn.
Kết luận
Việc trích xuất văn bản từ PDF trong Node.JS trở nên đơn giản với GroupDocs.Parser Cloud SDK for Node.JS. SDK này trừu tượng hoá sự phức tạp của việc phân tích PDF, hỗ trợ OCR cho các PDF đã quét, và xử lý tài liệu được mã hoá ngay từ đầu. Hãy nhớ lấy giấy phép hợp lệ cho việc sử dụng trong môi trường sản xuất; bạn có thể mua gói thuê bao hoặc yêu cầu một giấy phép tạm thời để đánh giá thư viện. Với ví dụ mã, tùy chọn cURL, và các bước cài đặt đã được trình bày, bạn đã sẵn sàng tích hợp việc trích xuất văn bản PDF vào quy trình công việc tài liệu của mình và mở khóa các khả năng tìm kiếm và phân tích mạnh mẽ.
Câu hỏi thường gặp
Làm thế nào để tôi trích xuất văn bản từ PDF trong Node.JS bằng GroupDocs.Parser?
Sử dụng phương thứcextractTextcủaParserApinhư được trình bày trong ví dụ mã đầy đủ. SDK tự động trả về văn bản thuần, và bạn có thể bật OCR cho các PDF đã quét.Tôi có thể trích xuất văn bản từ PDF đã quét trong Node.JS không?
Có. Đặt các tùy chọn OCR trongExtractTextRequestđể dịch vụ nhận dạng văn bản trên các trang dựa trên hình ảnh.Nếu PDF của tôi được bảo vệ bằng mật khẩu thì sao?
Bao gồm mật khẩu trong đối tượngFileInfo(password: "yourPassword"). SDK sẽ giải mã tệp trước khi trích xuất văn bản.Có cách nào gọi dịch vụ mà không cần viết Node.JS không?
Chắc chắn. Các lệnh cURL trong phần “Retrieve PDF Text Using cURL and the REST API” cho thấy một cách tiếp cận không phụ thuộc ngôn ngữ thông qua REST API.
