您可能需要出於各種目的從 Word 文檔中提取文本或圖像。您可以輕鬆地解析 Word 文檔並在 Node.js 應用程序中以編程方式閱讀文本。作為 Node.js 開發人員,您可以在雲端以編程方式從 DOCX 文件中提取所有文本和圖像。本文將重點介紹如何在 Node.js 中使用 REST API 解析 Word 文檔。
本文應涵蓋以下主題:
文檔解析器 REST API 和 Node.js SDK
為了解析 DOCX 文檔,我將使用 GroupDocs.Parser Cloud 的 Node.js SDK API。它允許您解析來自 50 多種文檔類型的數據。它還支持在 Node.js 應用程序中解析容器,如 ZIP 存檔、OST/PST 郵件數據文件、電子書、標記和 PDF 組合。您可以使用 SDK 通過模板提取文本、圖像和解析數據。它還為雲 API 提供 .NET、Java、PHP、Ruby 和 Python SDK 作為其文檔解析器家族成員。
您可以在控制台中使用以下命令將 GroupDocs.Parser Cloud 安裝到您的 Node.js 應用程序:
npm install groupdocs-parser-cloud
在執行上述步驟之前,請從 dashboard 獲取您的 Client ID 和 Secret。獲得 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 解析 Word 文檔和提取圖像
您可以按照以下步驟以編程方式解析 Word 文檔並提取圖像:
- 上傳Word文檔至雲端
- 使用 Node.js 從 Word 文檔中提取圖像
- 下載提取的圖片
上傳文件
首先,使用下面給出的代碼示例將 Word 文檔 (DOCX) 上傳到雲端:
// 初始化API
let fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);
let resourcesFolder = 'C:\\Files\\sample.docx';
// 讀取文件
fs.readFile(resourcesFolder, (err, fileStream) => {
// 創建文件上傳請求
let request = new groupdocs_parser_cloud.UploadFileRequest("sample.docx", fileStream, myStorage);
// 上傳文件
fileApi.uploadFile(request);
});
因此,上傳的 DOCX 文件將在雲端儀表板的 文件部分 中可用。
使用 Node.js 從 Word 文檔中提取圖像
您可以按照下面提到的步驟輕鬆地從 Word 文檔中提取所有圖像。
- 創建 ParseApi 的實例
- 創建 FileInfo 的實例
- 設置 DOCX 文件的路徑
- 創建 ImageOptions 的實例
- 將 FileInfo 分配給 ImageOptions
- 創建圖像請求
- 通過調用 ParseApi.images() 方法獲取結果
以下代碼示例展示瞭如何使用 REST API 從 DOCX 文件中提取圖像。
// 接口初始化
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);
// 示例文件信息
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.docx";
// 定義圖像選項
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;
// 創建圖像請求
let request = new groupdocs_parser_cloud.ImagesRequest(options);
// 獲取圖像
let result = await parseApi.images(request);
// 顯示圖片下載路徑
let images = result.images;
images.forEach(image => {
console.log("Image path in storage: " + image.path);
console.log("Download url: " + image.downloadUrl);
console.log("Image format: " + image.fileFormat + ". Page index: " + image.pageIndex);
});
下載提取的圖像
上面的代碼示例會將提取的圖像保存在雲端。您可以使用下面給出的代碼示例下載這些圖像:
// 初始化接口
var fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);
// 創建文件下載請求
let request = new groupdocs_parser_cloud.DownloadFileRequest("parser/images/sample_docx/image_0.png", myStorage);
// 下載文件
let response = await fileApi.downloadFile(request);
// 將圖像文件保存在工作目錄中
fs.writeFile("C:\\Files\\images\\image_0.png", response, "binary", function (err) { });
console.log(response);
使用 Node.js 從 Word 文檔中提取文本
按照下面提到的步驟,您可以輕鬆地從 Word 文檔中提取所有文本。
- 創建 ParseApi 的實例
- 創建 FileInfo 的實例
- 設置 DOCX 文件的路徑
- 創建 TextOptions 的實例
- 將 FileInfo 分配給 TextOptions
- 設置起始頁碼
- 定義 FormattedTextOptions
- 創建文本請求
- 通過調用 ParseApi.text() 方法獲取結果
以下代碼示例展示瞭如何使用 REST API 從 DOCX 文件中提取文本。
// 接口初始化
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);
// 示例文件信息
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.docx";
// 定義文本選項
let options = new groupdocs_parser_cloud.TextOptions();
options.fileInfo = fileInfo;
options.startPageNumber = 0;
options.countPagesToExtract = 1;
options.formattedTextOptions = new groupdocs_parser_cloud.FormattedTextOptions({
mode: "Html" // extract text in HTML
});
// 創建文本請求
let request = new groupdocs_parser_cloud.TextRequest(options);
// 獲取文本
let result = await parseApi.text(request);
// 顯示提取的文本
let pages = result.pages;
pages.forEach(page => console.log(page.text));
在線試用
請試用以下使用上述API開發的免費在線DOCX解析工具。 https://products.groupdocs.app/parser/docx
結論
在本文中,您了解瞭如何解析雲端的 Word 文檔。您還學習瞭如何使用 Node.js 中的 REST API 從 DOCX 文件中提取圖像和文本。本文還介紹瞭如何以編程方式將 DOCX 文件上傳到雲端並從雲端下載圖像文件。您可以使用 文檔 了解有關 GroupDocs.Parser Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。如有任何歧義,請隨時在論壇上與我們聯繫。