在 Node.js 中使用 REST API 從 PDF 中提取文本

您可以輕鬆地解析 PDF 文檔並以編程方式在雲端提取所有文本。在本文中,您將學習如何在 Node.js 中使用 REST API 從 PDF 文檔中提取文本。

本文應涵蓋以下主題:

用於提取文本的 PDF 解析器 REST API 和 Node.js SDK

為了解析 PDF 文檔,我將使用 GroupDocs.Parser Cloud 的 Node.js SDK API。它允許您解析來自 50 多種支持的文檔格式 的數據。它還支持在 Node.js 應用程序中解析容器,如 ZIP 檔案、OST 郵件數據文件、電子書、標記和 PDF 組合。您可以使用 SDK 通過模板提取文本、圖像和解析數據。它還為雲 API 提供 .NET、Java、PHP、Ruby 和 Python SDK 作為其文檔解析器家族成員

您可以在控制台中使用以下命令將 GroupDocs.Parser Cloud 安裝到您的 Node.js 應用程序:

npm install groupdocs-parser-cloud

在執行上述步驟之前,請從儀表板獲取您的客戶端 ID 和密碼。獲得 ID 和密碼後,添加如下所示的代碼:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const configuration = new groupdocs_parser_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

在 Node.js 中使用 REST API 從 PDF 中提取文本

您可以按照下面提到的簡單步驟從 PDF 文檔中提取文本:

上傳文件

首先,使用下面給出的代碼示例將 PDF 文檔上傳到雲端:

// 構造FileApi
let fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);
let filePath = 'C:\\Files\\Parser\\sample.pdf';

fs.readFile(filePath, (err, fileStream) => {
  // 創建文件上傳請求
  let request = new groupdocs_parser_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  // 上傳文件
  fileApi.uploadFile(request);
});

因此,上傳的 PDF 文件將在雲端儀表板的 文件部分 中可用。

使用 Node.js 從 PDF 文檔中提取文本

您可以按照以下步驟輕鬆地以編程方式從 PDF 文檔中提取所有文本:

  • 創建 ParseApi 的實例。
  • 創建 FileInfo 的實例。
  • 然後,設置 PDF 文件的路徑。
  • 創建 TextOptions 的實例。
  • 然後,將 FileInfo 分配給 TextOptions。
  • 現在,使用 TextOptions 創建 TextRequest 的實例。
  • 最後,通過使用 TextRequest 調用 ParseApi.text() 方法來獲取結果。

以下代碼示例展示瞭如何在 Node.js 中使用 REST API 從 PDF 文檔中提取所有文本。

// 接口初始化
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// 輸入文件
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// 定義文本選項
let options = new groupdocs_parser_cloud.TextOptions();
options.fileInfo = fileInfo;

// 創建文本請求
let request = new groupdocs_parser_cloud.TextRequest(options);

// 提取文本
let result = await parseApi.text(request);
console.log(result.text);
在 Node.js 中使用 REST API 從 PDF 中提取文本

在 Node.js 中使用 REST API 從 PDF 中提取文本

使用 Node.js 從 PDF 文檔中按頁碼獲取文本

您可以按照以下步驟以編程方式從 PDF 文件的特定頁面中提取文本:

  • 創建 ParseApi 的實例。
  • 創建 FileInfo 的實例。
  • 然後,設置 PDF 文件的路徑。
  • 創建 TextOptions 的實例。
  • 然後,將 FileInfo 分配給 TextOptions。
  • 設置起始頁碼和要提取的總頁數。
  • 現在,使用 TextOptions 創建 TextRequest 的實例。
  • 最後,通過使用 TextRequest 調用 ParseApi.text() 方法來獲取結果。

以下代碼示例顯示瞭如何使用 REST API 按頁碼從 PDF 文檔中提取文本。

// 接口初始化
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// 輸入文件路徑
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// 定義文本選項
let options = new groupdocs_parser_cloud.TextOptions();
options.fileInfo = fileInfo;
options.startPageNumber = 0;
options.countPagesToExtract = 1;

// 創建文本請求
let request = new groupdocs_parser_cloud.TextRequest(options);

// 提取文本
let result = await parseApi.text(request);

// 顯示結果
let pages = result.pages;
pages.forEach(page => console.log("Page No: " + page.pageIndex + 1 + " - " + page.text));
使用 Node.js 從 PDF 文檔中按頁碼獲取文本

使用 Node.js 從 PDF 文檔中按頁碼獲取文本

使用 Node.js 從 PDF 附件中提取文本

您可以按照下面提到的步驟從容器內的文檔中提取文本,以編程方式作為 PDF 文件中的附件提供。

  • 創建 ParseApi 的實例。
  • 創建 FileInfo 的實例。
  • 然後,設置 PDF 文件的路徑。
  • 或者,提供文件密碼。
  • 現在,創建 ContainerItemInfo 的一個實例
  • 然後,設置附件的相對路徑
  • 創建 TextOptions 的實例。
  • 然後,將 FileInfo 和 ContainerItemInfo 分配給 TextOptions。
  • 現在,使用 TextOptions 創建 TextRequest 的實例
  • 最後,通過使用 TextRequest 調用 ParseApi.text() 方法獲得結果

以下代碼示例顯示瞭如何使用 REST API 從 PDF 文檔中的文檔中提取文本。

// 接口初始化
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// 輸入文件
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "PDF_with_Attachments.pdf";
fileInfo.password = "password";

// 輸入容器項目
let containerInfo = new groupdocs_parser_cloud.ContainerItemInfo();
containerInfo.relativePath = "template-document.pdf";

// 定義文本選項
let options = new groupdocs_parser_cloud.TextOptions();
options.fileInfo = fileInfo;
options.containerItemInfo = containerInfo;

// 創建文本請求
let request = new groupdocs_parser_cloud.TextRequest(options);

// 提取文本
let result = await parseApi.text(request);
console.log(result.text);
使用 Node.js 從 PDF 附件中提取文本

使用 Node.js 從 PDF 附件中提取文本

在線試用

請試用以下使用上述 API 開發的免費在線 PDF 解析工具。 https://products.groupdocs.app/parser/pdf

結論

在本文中,您學習瞭如何解析雲端 PDF 文檔。此外,您還了解瞭如何使用 Node.js 中的 REST API 按頁碼和 PDF 文件的容器項提取文本。本文還介紹瞭如何以編程方式將 PDF 文件上傳到雲端。此外,您可以使用 文檔 了解有關 GroupDocs.Parser Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。如有任何歧義,請隨時在論壇上與我們聯繫。

也可以看看