
您是否曾遇到过需要以编程方式从 PDF 文件中提取文本的情况?以编程方式从 PDF 文件中提取文本可能是一个复杂的任务,尤其是在处理大型文档时。如果您是一名 Java 开发人员并寻找可靠的解决方案,GroupDocs.Parser Cloud SDK for Java 提供了一种从 PDF 文件中高效提取文本的方法。在本文中,我们将探讨如何使用 REST API 在 Java 中从 PDF 文件中提取文本。
本文将涵盖以下主题:
- Java REST API to Extract Text from PDF Files and SDK Installation
- 如何使用 REST API 从 PDF 文件中提取所有文本
- 从 PDF 中按页码范围提取特定文本
Java REST API to Extract Text from PDF Files and SDK Installation
GroupDocs.Parser Cloud SDK for Java 是一个强大、用户友好且功能丰富的软件开发工具包,提供了全面的 PDF 解析能力。凭借其全面的 API 集,您可以轻松提取文本、元数据、图像,并从超过 50 种 document formats 中解析数据。它还提供 C# .NET、Java、PHP、Ruby 和 Python SDK 作为其 document parser family members 的 Cloud API。该 SDK 可以集成到基于 Java 的应用程序中,以简化您的开发过程并提高生产力。
您可以选择 下载 API 的 JAR 文件,或者通过将以下仓库和依赖项添加到您项目的 pom.xml 文件中来使用 Maven 进行安装:
Maven Repository:
<repository>
<id>groupdocs-artifact-repository</id>
<name>GroupDocs Artifact Repository</name>
<url>https://repository.groupdocs.cloud/repo</url>
</repository>
Maven 依赖:
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser-cloud</artifactId>
<version>23.3</version>
<scope>compile</scope>
</dependency>
接下来,sign up 注册一个免费试用帐户或 purchase a subscription plan 在 GroupDocs 网站上,并 get your API key。一旦你获得了 Client Id 和 Client Secret,请将以下代码片段添加到基于 Java 的应用程序中:
# 从 https://dashboard.groupdocs.cloud 注册后获取您的 clientid 和 clientsecret。
String ClientId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
String ClientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
String MyStorage = "test-internal-storage";
Configuration configuration = new Configuration(ClientId, ClientSecret);
如何使用 REST API 从 PDF 文件中提取所有文本
使用 GroupDocs.Parser Cloud SDK 在 Java 中从 PDF 文件中提取文本是一个简单的过程。以下是操作步骤:
上传文件
首先,使用下面提供的代码示例将 PDF 文档上传到云中:
package com.groupdocsdev.classes;
import java.io.File;
import java.nio.file.Paths;
import com.groupdocs.cloud.Parser.api.*;
import com.groupdocs.cloud.Parser.client.ApiException;
import com.groupdocs.cloud.Parser.model.*;
import com.groupdocs.cloud.Parser.model.requests.*;
// 将文件上传到 Cloud Storage 使用 Java
public class App {
public static void main(String[] args) {
FileApi apiInstance = new FileApi(configuration);
try {
File fileStream = new File("H:\\groupdocs-cloud-data\\input-sample-file.pdf");
UploadFileRequest request = new UploadFileRequest("java-testing\\input-sample-file.pdf", fileStream, MyStorage);
FilesUploadResult response = apiInstance.uploadFile(request);
System.out.println("Expected response type is FilesUploadResult: " + response.getUploaded().size());
} catch (ApiException e) {
System.err.println("Exception while calling FileApi:");
e.printStackTrace();
}
}
}
因此,上传的 PDF 文件将在您的云仪表板的 [files section][https://dashboard.groupdocs.cloud/files] 中可用。
从PDF文档中提取文本的Java代码
按照步骤和示例代码片段,使用 GroupDocs.Parser Cloud SDK for Java 在 Java 中以编程方式提取 PDF 文件中的所有文本:
- 首先,将所需的类导入到您的 Java 文件中。
- 其次,创建一个 ParseApi 类的实例。
- 第三,创建一个 FileInfo 类的实例。
- 接下来,将 PDF 文件的路径设置为输入。
- 然后,创建一个 TextOptions() 类的实例。
- 接下来,将 fileInfo 分配给 setFileInfo 方法。
- 现在,创建一个 TextRequest() 类的实例并传递 TextOptions 参数。
- 最后,通过调用 ParseApi.text() 方法并传递 TextRequest 参数来获取结果。
以下代码示例演示了如何使用 Java 中的 REST API 从 PDF 文件中提取所有文本:
package com.groupdocsdev.classes;
import com.groupdocs.cloud.parser.client.*;
import com.groupdocs.cloud.parser.model.*;
import com.groupdocs.cloud.parser.model.requests.TextRequest;
import com.groupdocs.cloud.parser.api.ParseApi;
// 如何在 Java 中提取 PDF 文档中的文本。
public class App {
public static void main(String[] args) {
// 创建一个 Parse API 的实例
ParseApi apiInstance = new ParseApi(configuration);
try {
// 准备设置
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("java-testing/input-sample-file.pdf");
TextOptions options = new TextOptions();
options.setFileInfo(fileInfo);
TextRequest request = new TextRequest(options);
TextResult response = apiInstance.text(request);
// 获取输出文件路径
System.out.println("Output file path: " + response.getPath());
} catch (ApiException e) {
System.err.println("Exception while calling FileApi:");
e.printStackTrace();
}
}
}
您可以在下方的图像中查看输出:

从PDF文档中提取文本的Java代码
从PDF中按页面编号范围提取特定文本
本节提供了逐步的说明和一个示例代码片段,用于在 Java 中以编程方式从 PDF 文件中提取特定文本:
- 首先,将所需的类导入到您的 Java 文件中。
- 其次,创建一个 ParseApi 类的实例。
- 第三,创建一个 FileInfo 类的实例。
- 接下来,将 PDF 文件的路径设置为输入。
- 然后,创建一个 TextOptions() 类的实例。
- 现在,提供 setStartPageNumber 和 setCountPagesToExtract 的值。
- 然后,将 fileInfo 分配给 setFileInfo 方法。
- 现在,创建一个 TextRequest() 类的实例并传递 TextOptions 参数。
- 最终,通过调用 ParseApi.text() 方法并传递 TextRequest 参数来获得结果。
以下代码示例展示了如何在 Java 中使用 REST API 按页面范围提取 PDF 文件中的特定文本:
package com.groupdocsdev.classes;
import com.groupdocs.cloud.parser.client.*;
import com.groupdocs.cloud.parser.model.*;
import com.groupdocs.cloud.parser.model.requests.TextRequest;
import com.groupdocs.cloud.parser.api.ParseApi;
// 如何在 Java 中按页码范围从 PDF 文件中提取文本。
public class App {
public static void main(String[] args) {
// 创建 Parse API 实例
ParseApi apiInstance = new ParseApi(configuration);
try {
// 准备设置
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("java-testing/input-sample-file.pdf");
TextOptions options = new TextOptions();
options.setStartPageNumber(1);
options.setCountPagesToExtract(1);
options.setFileInfo(fileInfo);
TextRequest request = new TextRequest(options);
TextResult response = apiInstance.text(request);
// 获取输出文件路径
System.out.println("Output file path: " + response.getPath());
} catch (ApiException e) {
System.err.println("Exception while calling FileApi:");
e.printStackTrace();
}
}
}
免费的在线文档解析器
从网上免费提取 PDF 文本的最佳方法是什么?请尝试使用 online PDF document parser software 从 PDF 中提取文本。这个 PDF 解析工具是使用上述 Java 解析库开发的。
结论
总之,GroupDocs.Parser Cloud SDK for Java 是一个对 Java 开发者非常有价值的工具,它可以高效地提取文本、元数据和图像。以下是您从本文中学到的内容:
- 如何使用 Java 中的 REST API 从 PDF 文件中提取所有文本。
- 以 Java 程序化地将 PDF 文件上传到云端。
- 如何在Java中使用REST API提取PDF中的内容。
- 在线 PDF 文本提取工具,用于解析 PDF 文档。
此外,您可以通过 documentation 了解更多关于 GroupDocs.Parser Cloud API 的信息。我们还提供一个 API Reference 部分,允许您通过浏览器直接可视化和交互我们的 APIs。Java SDK 的完整源代码可在 Github 上免费获取。
最终,我们继续撰写关于不同文件格式和使用 REST API 进行解析的新博客文章。因此,请保持联系以获取最新更新。
Ask a question
如果您对如何从 PDF 文件中提取文本有任何疑问或困惑,请随时通过我们的 forum 联系我们。
常见问题解答
How do I extract all text from a PDF file using Java?
您可以使用 GroupDocs.Parser Cloud SDK for Java 在您的 Java 应用程序中提取 PDF 文件中的所有文本。这个强大的 SDK 提供了一种高效且简单的方法来使用 Java 从 PDF 文件中提取文本。
我能否使用 GroupDocs.Parser Cloud SDK for Java 从密码保护的 PDF 文件中提取文本?
是的, SDK 支持从受密码保护的 PDF 文件中提取文本。您可以在提取过程中提供密码作为选项。
从PDF文件的特定页面中提取文本是否可行?
是的, GroupDocs.Parser Cloud SDK for Java 允许您指定要提取文本的页面范围编号。通过这种方式,您可以轻松地从 PDF 文档的特定部分提取文本。
另见
这里有一些相关的文章,您可能会觉得有用: