PDF 첨부 파일 추출

PDF 파일은 텍스트와 그래픽으로 구성되어 있으며, 첨부 파일로 전체 파일을 포함할 수 있습니다. 이를 통해 문서 세트를 교환하는 것이 더 쉽고 안정적입니다. 첨부 파일 창은 첨부 파일을 보고, 삽입하고, 삭제하고, 내보낼 수 있는 중앙 위치를 제공합니다. 또한 PDF 파일을 새 위치로 이동하면 해당 파일 내의 첨부 파일도 함께 이동한다는 점에 유의하십시오. 첨부 파일에는 부모 문서 또는 다른 첨부 파일에 대한 링크가 포함될 수 있습니다. 첨부된 주석을 파일 첨부 파일과 혼동하지 마십시오.

이 글에서는 PDF 문서의 첨부 파일에 대한 정보를 읽는 방법과 Python을 사용하여 PDF에서 첨부 파일을 다운로드하는 방법에 대한 세부 정보를 논의합니다. 특별한 소프트웨어 다운로드 및 설치가 필요하지 않으며 클라우드에서 필요한 모든 작업을 수행합니다.

PDF 처리 API

Aspose.PDF Cloud는 다양한 형식을 PDF로 생성, 편집 및 변환하고 PDF 파일을 XLSX, PPTX, DOCX, EPUB, HTML, JPEG 등의 형식으로 렌더링하는 기능을 제공하는 REST 기반 API입니다. REST 아키텍처 덕분에 모든 플랫폼에서 API에 액세스할 수 있습니다. 따라서 데스크톱, 웹, 모바일, 클라우드 및 하이브리드 애플리케이션에서 PDF 처리 기능을 구현할 수 있습니다.

PDF 처리를 위한 Python SDK

고객의 편의를 위해 특정 프로그래밍 SDK를 만들어 선택한 언어로 모든 PDF 처리 기능을 사용할 수 있도록 했습니다. 마찬가지로 Python 개발자의 편의를 위해 Aspose.PDF Cloud API를 래퍼로 사용한 Aspose.PDF Cloud SDK for Python이라는 Python 프로그래밍 SDK를 만들었습니다. 이제 시작하려면 첫 번째 단계는 설치입니다. SDK는 PIPGitHub 저장소에서 무료로 다운로드할 수 있습니다. 이제 터미널/명령 프롬프트에서 다음 명령을 실행하여 시스템에 최신 버전의 SDK를 설치합니다.

pip install asposepdfcloud

파이참 IDE

PyCharm IDE를 사용하는 경우 SDK를 프로젝트에 종속성으로 직접 추가할 수 있습니다.

파일 ->설정 ->프로젝트 ->Python 인터프리터 ->asposepdfcloud

캡션

Image 1:- PyCharm settings option.

Aspose.PDF 파이썬 패키지

이미지 2: Aspose.Pdf Cloud Python 패키지.

무료 클라우드 대시보드 계정

설치 후 다음 주요 단계는 Aspose.Cloud 대시보드를 통한 클라우드 서비스의 무료 구독입니다. 이 구독의 목적은 권한이 있는 사람만 파일 처리 서비스에 액세스할 수 있도록 하는 것입니다. GitHub 또는 Google 계정이 있는 경우 간단히 가입하거나 새 계정 만들기 버튼을 클릭하고 필요한 정보를 제공하세요. 이제 자격 증명을 사용하여 대시보드에 로그인하고 대시보드에서 애플리케이션 섹션을 확장하고 클라이언트 자격 증명 섹션으로 스크롤하여 클라이언트 ID 및 클라이언트 비밀 세부 정보를 확인하세요.

클라이언트 자격 증명

이미지 3: Aspose.Cloud 대시보드의 클라이언트 자격 증명.

PDF에서 첨부 파일 정보 읽기

PDF 문서 내의 첨부 파일 정보를 읽으려면 아래 지침을 따르세요.

  • 먼저, 클라이언트 ID와 클라이언트 비밀번호를 인수로 제공하면서 ApiClient 클래스의 인스턴스를 생성해야 합니다.
  • 둘째, ApiClient 객체를 입력 인수로 사용하는 PdfApi 클래스의 인스턴스를 생성합니다.
  • 이제 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)

        # PdfApiClient를 인수로 전달하면서 PdfApi 인스턴스를 생성합니다.
        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)

참고로, 위 예에서 사용된 샘플 PDF 문서는 PdfWithEmbeddedFiles.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 문서에서 특정 첨부 파일을 다운로드하려면 아래 지정된 지침을 따르세요.

  • 먼저, 클라이언트 ID와 클라이언트 비밀번호를 인수로 제공하면서 ApiClient 클래스의 인스턴스를 생성해야 합니다.
  • 둘째, ApiClient 객체를 입력 인수로 사용하는 PdfApi 클래스의 인스턴스를 생성합니다.
  • 이제 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)

        # PdfApiClient를 인수로 전달하면서 PdfApi 인스턴스를 생성합니다.
        pdf_api = PdfApi(pdf_api_client)

        #source image file
        input_file = 'PdfWithEmbeddedFiles.pdf'
        
        # PDF 파일에서 첫 번째 첨부 파일을 다운로드하기 위해 API를 호출합니다.
        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 웹 토큰(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를 사용하는 동안 문제가 발생하거나 추가 질문이 있는 경우 무료 제품 지원 포럼을 통해 언제든지 문의해 주십시오.

관련기사

자세한 내용을 알아보려면 다음 링크를 방문해 보세요.