在 Python 中使用 REST API 合并不同类型的文档

合并相同或不同类型的不同文档允许将分散的数据或信息收集到一个文件中。我们可以轻松地将多个不同文件类型的文档合并到云端的一个文件中。在本文中,我们将学习如何使用 Python 中的 REST API 将不同文件类型的文档合并为 PDF。

本文应涵盖以下主题:

文件合并 REST API 和 Python SDK

为了合并多个文件,我们将使用 GroupDocs.Merger Cloud 的 Python SDK API。它使我们能够从 WordExcelPowerPoint支持的文档格式 中组合、拆分、删除和重新排列单个页面或一组页面, Visio 绘图PDFHTML。请在控制台中使用以下命令安装它:

pip install groupdocs-merger-cloud

在执行上述步骤之前,请从仪表板获取您的客户端 ID 和密码。获得 ID 和密码后,添加如下所示的代码:

# 此代码示例演示如何在代码中添加客户端 ID 和密码。
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

在 Python 中使用 REST API 合并多个文件类型

我们可以按照以下给出的步骤以编程方式在云上组合多种文件类型的文档:

  1. 上传文件到云端
  2. 合并不同文件类型的文件
  3. 下载合并文件

上传文件

首先,我们将使用下面给出的代码示例将文件上传到云端:

# 此代码示例演示如何将文件上传到云端。
# 创建 API 实例
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# 上传示例文件
for filename in glob.iglob("C:\\Files\\Merger\\upload\\*.*", recursive=True):
    destFile = filename.replace("C:\\Files\\Merger\\upload", "", 1)           
    # 创建上传文件请求
    request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
    # 上传文件
    file_api.upload_file(request)

因此,上传的文件将在云端仪表板的 文件部分 中可用。

在 Python 中合并不同文件类型的文档

现在,我们可以按照以下步骤轻松地将不同类型的上传文件合并为一个文件:

  • 首先,创建 DocumentApi 的实例。
  • 接下来,为第一个 JoinItem 提供输入文件路径。
  • 然后,为第二个 JoinItem 提供输入文件路径。
  • 或者,重复上述步骤以添加更多文件。
  • 之后,定义 JoinOptions 并设置输出文件的路径。
  • 最后,调用 join() 方法并保存合并后的文档。

以下代码示例展示了如何在 Python 中使用 REST API 合并不同的文件类型。

# 此代码示例演示如何在 Python 中合并不同文件类型的文档。
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# 第一个文件
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample.pdf")

# 第二档
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample.docx")

# 加入选项
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.pdf"

# 使用 JoinOptions 创建加入请求
request = groupdocs_merger_cloud.JoinRequest(options)

# 加入文件
result = documentApi.join(request)        

下载合并文件

最后,上面的代码示例会将合并后的 PDF 文件保存在云端。可以使用以下代码示例下载它:

# 此代码示例演示如何从云端下载合并文件。
# API初始化
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# 创建下载文件请求
request = groupdocs_merger_cloud.DownloadFileRequest("joined.pdf", my_storage)

# 下载文件
response = file_api.download_file(request)

# 将下载的文件移动到您的工作目录
shutil.move(response, "C:\\Files\\Merger\\")

如何将 PDF 和 Excel 合并为 PDF

我们可以按照前面提到的步骤将PDF和Excel文件合并成一个PDF。但是,我们只需要提供 PDF 和 Excel 文档路径作为第一个和第二个 JoinItems。以下代码示例展示了如何在 Python 中使用 REST API 将 PDF 文档和 Excel 工作表合并为 PDF 文件。

# 此代码示例演示如何使用 Python 将 Word 和 Excel 文件合并为 PDF。
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# 第一个文件
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample.pdf")

# 第二档
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample.xlsx")

# 加入选项
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.pdf"

# 使用 JoinOptions 创建加入请求
request = groupdocs_merger_cloud.JoinRequest(options)

# 加入文件
result = documentApi.join(request)        

如何将 PDF 和 PowerPoint 合并为 PDF

我们也可以按照前面提到的步骤将PDF文档和PowerPoint演示文稿合并成PDF。但是,我们只需要提供 PDF 和 PowerPoint 文档路径作为第一个和第二个 JoinItems。以下代码示例展示了如何使用 Python 中的 REST API 将 PDF 文档和 PowerPoint 演示文稿合并为 PDF 文件。

# 此代码示例演示如何使用 Python 将 Word 和 PowerPoint 演示文稿合并为 PDF。
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# 第一个文件
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample.pdf")

# 第二档
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample.pptx")

# 加入选项
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.pdf"

# 使用 JoinOptions 创建加入请求
request = groupdocs_merger_cloud.JoinRequest(options)

# 加入文件
result = documentApi.join(request)        

在 Python 中组合不同文件类型的特定页面

我们可以按照以下步骤将不同类型文档中的选定页面合并到一个文件中:

  • 首先,创建 DocumentApi 的实例。
  • 接下来,为第一个 JoinItem 提供输入文件路径。
  • 然后,提供要合并的特定页码。
  • 接下来,为第二个 JoinItem 提供输入文件路径。
  • 然后,定义要与起始页码和结束页码合并的页面范围。
  • 之后,定义 JoinOptions 并设置输出文件的路径。
  • 最后,调用 join() 方法并保存合并后的文档。

以下代码示例展示了如何在 Python 中使用 REST API 合并不同文件类型的特定页面。

# 此代码示例演示如何在 Python 中合并不同文件类型的文档。
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# 第一个文件
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample.pdf")
# 要从第一个文档合并的页码
item1.pages = [1, 2]

# 第二档
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample.docx")
# 从第二个文档合并的页面范围
item2.start_page_number = 1
item2.end_page_number = 3
  
# 加入选项
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.pdf"

# 使用 JoinOptions 创建加入请求
request = groupdocs_merger_cloud.JoinRequest(options)

# 加入文件
result = documentApi.join(request)        

在线试用

请试用以下使用上述API开发的免费在线合并工具。 https://products.groupdocs.app/merger/

结论

在本文中,我们了解到:

  • 如何在 Python 中合并多种文件类型的文档;
  • 如何在 Python 中合并来自不同文件类型文档的特定页面;
  • 将多个文件上传到云端;
  • 如何从云端下载合并的 PDF。

此外,您可以使用 文档 了解有关 GroupDocs.Merge Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。如有任何歧义,请随时通过 fo 与我们联系。

也可以看看