
PDF 文件由文本和图形组成,其中可能包含整个文件作为附件。这使得交换文档集更加容易和可靠。附件窗格为您提供了一个查看、插入、删除和导出附件的中心位置。另请注意,如果您将 PDF 文件移动到新位置,其中的附件也会随之移动。附件可能包含指向或来自父文档或其他附件的链接。请不要将附加的注释与文件附件混淆。
在本文中,我们将详细讨论如何读取 PDF 文档中附件的信息以及如何使用 Python 从 PDF 下载附件。无需下载和安装任何特定软件,只需在云中执行所有必需的操作即可。
PDF处理API
Aspose.PDF Cloud 是我们基于 REST 的 API,提供创建、编辑和转换各种格式为 PDF 以及将 PDF 文件渲染为包括 XLSX、PPTX、DOCX、EPUB、HTML、JPEG 等格式的功能。由于采用 REST 架构,可以在任何平台上访问 API。因此,您可以在桌面、Web、移动、云和混合应用程序中实现 PDF 处理功能。
用于 PDF 处理的 Python SDK
为了进一步方便我们的客户,我们创建了特定的编程 SDK,以便您使用您选择的语言获得所有 PDF 处理功能。同样,为了方便 Python 开发人员,我们创建了名为 Aspose.PDF Cloud SDK for Python 的 Python 编程 SDK,它是 Aspose.PDF Cloud API 的包装器。现在开始,第一步是安装。SDK 可通过 PIP 和 GitHub 存储库免费下载。现在在终端/命令提示符上执行以下命令,在系统上安装最新版本的 SDK。
pip install asposepdfcloud
PyCharm IDE
如果您正在使用 PyCharm IDE,您可以直接将 SDK 作为依赖项添加到您的项目中。
文件 ->设置 ->项目 ->Python 解释器 ->asposepdfcloud

Image 1:- PyCharm settings option.

图2:- Aspose.Pdf Cloud Python 包。
免费云仪表板帐户
安装完成后,下一个重要步骤是通过 Aspose.Cloud 仪表板 免费订阅我们的云服务。此订阅的目的是仅允许授权人员访问我们的文件处理服务。如果您有 GitHub 或 Google 帐户,只需注册或单击 创建新帐户 按钮并提供所需信息。现在使用凭据登录仪表板并从仪表板展开应用程序部分,然后向下滚动到客户端凭据部分以查看客户端 ID 和客户端密钥详细信息。

图 3:- Aspose.Cloud 仪表板上的客户端凭证。
从 PDF 读取附件信息
请按照以下说明阅读PDF文档中的附件信息。
- 首先,我们需要创建一个 ApiClient 类的实例,并提供客户端 ID 客户端密钥作为参数。
- 其次,创建一个 PdfApi 类的实例,该实例以 ApiClient 对象作为输入参数。
- 现在调用 PdfApi 的 getdocumentattachments(…) 方法来获取 PDF 附件详细信息。
def readAttachmentDetails():
try:
#Client credentials
client_secret = "1c9379bb7d701c26cc87e741a29987bb"
client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"
#initialize PdfApi client instance using client credetials
pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)
# 创建 PdfApi 实例并传递 PdfApiClient 作为参数
pdf_api = PdfApi(pdf_api_client)
#source image file
input_file = 'PdfWithEmbeddedFiles.pdf'
# 调用 API 提取附件详细信息
response = pdf_api.get_document_attachments(name = input_file)
print(response)
# 在控制台中打印消息(可选)
print('PDF Attachment details successfully retrieved !')
except ApiException as e:
print("Exception while calling PdfApi: {0}".format(e))
print("Code:" + str(e.code))
print("Message:" + e.message)
供您参考,可以从 PdfWithEmbeddedFiles.pdf 下载上述示例中使用的示例 PDF 文档。
阅读具体附件信息
该 API 还方便我们读取 PDF 文档中特定附件的信息。为此,请尝试使用 GetDocumentAttachmentByIndex 方法。请参阅下面检索到的第一个附件的详细信息。
{'attachment': {'check_sum': '33DCE2EE8BD095A3C4E2A67058104D35',
'creation_date': '11/24/2008 02:02:36.000 PM',
'description': None,
'links': [{'href': '/PdfWithEmbeddedFiles.pdf/attachments/1',
'rel': 'self',
'title': None,
'type': None}],
'mime_type': 'application/pdf',
'modification_date': '05/03/2007 10:37:41.000 AM',
'name': 'example1.pdf',
'size': 10984},
'code': 200,
'status': 'OK'}
从 PDF 下载特定附件
请按照下面指定的说明从 PDF 文档中下载特定附件。
- 首先,我们需要创建一个 ApiClient 类的实例,并提供客户端 ID 客户端密钥作为参数。
- 其次,创建一个 PdfApi 类的实例,该实例以 ApiClient 对象作为输入参数。
- 现在调用 GetDownloadDocumentAttachmentByIndex(…) 方法从 PDF 文件下载附件。
def downloadAttachment():
try:
#Client credentials
client_secret = "1c9379bb7d701c26cc87e741a29987bb"
client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"
#initialize PdfApi client instance using client credetials
pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)
# 创建 PdfApi 实例并传递 PdfApiClient 作为参数
pdf_api = PdfApi(pdf_api_client)
#source image file
input_file = 'PdfWithEmbeddedFiles.pdf'
# 调用 API 从 PDF 文件下载第一个附件
response = pdf_api.get_download_document_attachment_by_index(name = input_file, attachment_index=1)
print(response)
# 在控制台中打印消息(可选)
print('PDF Attachment successfully downloaded !')
except ApiException as e:
print("Exception while calling PdfApi: {0}".format(e))
print("Code:" + str(e.code))
print("Message:" + e.message)
使用 cURL 命令读取附件信息
REST API 可通过 cURL 命令轻松访问,我们可以使用简单的终端应用程序来执行它们。由于 Aspose.PDF Cloud 是按照 REST 架构开发的,因此我们也可以通过 cURL 命令访问它们。但是,作为先决条件,我们需要根据您在 Aspose.Cloud 仪表板上指定的个人客户端凭据生成 JSON Web 令牌 (JWT)。这是强制性的,因为我们的 API 仅供注册用户访问。请执行以下命令来生成 JWT 令牌。
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
现在我们有了 JWT 令牌,我们可以执行以下命令从 PDF 文档中获取特定附件的信息。
curl -v -X GET "https://api.aspose.cloud/v3.0/pdf/PdfWithEmbeddedFiles.pdf/attachments/1" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
使用 cURL 命令下载特定附件
请执行以下命令下载 PDF 文件的第二个附件并将其保存在本地驱动器上。
curl -v -X GET "https://api.aspose.cloud/v3.0/pdf/PdfWithEmbeddedFiles.pdf/attachments/2/download" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o Attachment.txt
结论
本文介绍了如何从 PDF 文档读取和下载附件的详细信息和步骤。我们探索了使用 Python 代码片段以及使用 cURL 命令的步骤。除了处理附件之外,API 还提供了大量与 PDF 文件其他元素相关的功能,其详细信息可在 开发人员指南 中找到。此外,Aspose.PDF Cloud SDK for Python 的完整源代码已在 GitHub 上提供下载。如果您在使用 API 时遇到任何问题或有任何其他疑问,请随时通过 免费产品支持论坛 与我们联系。
相关文章
我们还建议您访问以下链接以了解更多信息: