แตกไฟล์แนบ PDF

ไฟล์ PDF ประกอบด้วยข้อความและกราฟิก และอาจมีไฟล์ทั้งหมดอยู่ภายในเป็นไฟล์แนบ ซึ่งทำให้การแลกเปลี่ยนชุดเอกสารทำได้ง่ายและเชื่อถือได้มากขึ้น แผง Attachments จะให้พื้นที่ส่วนกลางแก่คุณในการดู แทรก ลบ และส่งออกไฟล์แนบ โปรดทราบว่าหากคุณย้ายไฟล์ PDF ไปยังตำแหน่งใหม่ ไฟล์แนบภายในจะย้ายไปพร้อมกับไฟล์ด้วย ไฟล์แนบอาจมีลิงก์ไปยังหรือจากเอกสารหลักหรือไปยังไฟล์แนบอื่นๆ โปรดอย่าสับสนระหว่างความคิดเห็นที่แนบมากับไฟล์แนบ

ในบทความนี้ เราจะมาพูดถึงรายละเอียดเกี่ยวกับการอ่านข้อมูลเกี่ยวกับไฟล์แนบในเอกสาร PDF รวมถึงการดาวน์โหลดไฟล์แนบจาก PDF โดยใช้ Python โดยไม่ต้องดาวน์โหลดและติดตั้งซอฟต์แวร์ใดๆ และสามารถดำเนินการที่จำเป็นทั้งหมดบนคลาวด์ได้

API การประมวลผล PDF

Aspose.PDF Cloud คือ API ที่ใช้ REST ของเรา ซึ่งให้ความสามารถในการสร้าง แก้ไข และแปลงไฟล์ PDF ในรูปแบบต่างๆ รวมถึงแสดงไฟล์ PDF เป็นรูปแบบต่างๆ เช่น XLSX, PPTX, DOCX, EPUB, HTML, JPEG และอื่นๆ อีกมากมาย ด้วยสถาปัตยกรรม REST ทำให้สามารถเข้าถึง API ได้บนแพลตฟอร์มใดๆ ก็ได้ ดังนั้น คุณจึงสามารถใช้ความสามารถในการประมวลผล PDF ในแอปพลิเคชันเดสก์ท็อป เว็บ โมบาย คลาวด์ และไฮบริดได้

Python SDK สำหรับการประมวลผล PDF

เพื่ออำนวยความสะดวกแก่ลูกค้าของเรามากยิ่งขึ้น เราจึงได้สร้าง SDK การเขียนโปรแกรมเฉพาะเพื่อให้คุณได้รับความสามารถในการประมวลผล PDF ทั้งหมดภายในภาษาที่คุณเลือก ในทำนองเดียวกัน เพื่ออำนวยความสะดวกแก่ผู้พัฒนา Python เราจึงได้สร้าง SDK การเขียนโปรแกรม Python ชื่อ Aspose.PDF Cloud SDK for Python ซึ่งเป็นตัวห่อหุ้ม Aspose.PDF Cloud API เพื่อเริ่มต้น ขั้นตอนแรกคือการติดตั้ง SDK พร้อมให้ดาวน์โหลดฟรีที่ PIP และ GitHub จากนั้นให้ดำเนินการคำสั่งต่อไปนี้บนเทอร์มินัล/พรอมต์คำสั่งเพื่อติดตั้ง SDK เวอร์ชันล่าสุดบนระบบ

pip install asposepdfcloud

PyCharm IDE

หากคุณใช้ PyCharm IDE คุณสามารถเพิ่ม SDK เป็นส่วนที่ต้องมีในโปรเจ็กต์ของคุณได้โดยตรง

ไฟล์ ->การตั้งค่า ->โปรเจ็กต์ ->Python Interpreter ->asposepdfcloud

คำบรรยายภาพ

Image 1:- PyCharm settings option.

แพ็คเกจ Python ของ Aspose.PDF

รูปภาพ 2:- แพ็กเกจ Aspose.Pdf Cloud Python

บัญชีแดชบอร์ดคลาวด์ฟรี

หลังจากติดตั้งแล้ว ขั้นตอนสำคัญต่อไปคือการสมัครใช้บริการคลาวด์ฟรีผ่าน Aspose.Cloud Dashboard วัตถุประสงค์ของการสมัครใช้บริการนี้คือเพื่อให้เฉพาะบุคคลที่ได้รับอนุญาตเท่านั้นที่สามารถเข้าถึงบริการประมวลผลไฟล์ของเราได้ หากคุณมีบัญชี GitHub หรือ Google เพียงลงทะเบียนหรือคลิกปุ่ม สร้างบัญชีใหม่ แล้วระบุข้อมูลที่จำเป็น จากนั้นเข้าสู่ระบบแดชบอร์ดโดยใช้ข้อมูลรับรอง แล้วขยายส่วนแอปพลิเคชันจากแดชบอร์ด จากนั้นเลื่อนลงไปที่ส่วนข้อมูลรับรองไคลเอนต์เพื่อดูรายละเอียดรหัสไคลเอนต์และความลับไคลเอนต์

ข้อมูลประจำตัวลูกค้า

ภาพที่ 3: ข้อมูลประจำตัวลูกค้าบนแผงควบคุม Aspose.Cloud

อ่านข้อมูลแนบจาก PDF

โปรดปฏิบัติตามคำแนะนำต่อไปนี้เพื่ออ่านข้อมูลเอกสารแนบภายในเอกสาร PDF

  • ประการแรก เราต้องสร้างอินสแตนซ์ของคลาส ApiClient โดยระบุรหัสไคลเอนต์และรหัสลับไคลเอนต์เป็นอาร์กิวเมนต์
  • ประการที่สอง สร้างอินสแตนซ์ของคลาส PdfApi ซึ่งรับ ApiClient เป็นอาร์กิวเมนต์อินพุต
  • ตอนนี้เรียกวิธี getdocumentattachments(…) ของ PdfApi เพื่อดึงรายละเอียดไฟล์แนบ 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)

เพื่อเป็นการอ้างอิงของคุณ คุณสามารถดาวน์โหลดเอกสาร 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

  • ประการแรก เราต้องสร้างอินสแตนซ์ของคลาส ApiClient โดยระบุรหัสไคลเอนต์และรหัสลับไคลเอนต์เป็นอาร์กิวเมนต์
  • ประการที่สอง สร้างอินสแตนซ์ของคลาส 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 ได้เช่นกัน อย่างไรก็ตาม เป็นข้อกำหนดเบื้องต้น เราต้องสร้าง JSON Web Token (JWT) ตามข้อมูลประจำตัวไคลเอนต์แต่ละรายของคุณที่ระบุไว้บนแดชบอร์ด Aspose.Cloud ซึ่งเป็นสิ่งจำเป็นเนื่องจาก 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 แล้ว เราสามารถดำเนินการคำสั่งต่อไปนี้เพื่อดึงข้อมูล 7 รายการจากไฟล์แนบเฉพาะจากเอกสาร 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 แนบที่ 2 และบันทึกไว้ในไดรฟ์ภายในเครื่อง

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 สำหรับ Python ยังพร้อมให้ดาวน์โหลดผ่าน GitHub หากคุณพบปัญหาใดๆ ในขณะใช้ API หรือมีคำถามเพิ่มเติม โปรดติดต่อเราผ่าน ฟอรัมสนับสนุนผลิตภัณฑ์ฟรี

บทความที่เกี่ยวข้อง

เราขอแนะนำให้เยี่ยมชมลิงค์ต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ: