Hợp nhất các tệp PDF bằng API REST trong Python

Bạn có thể dễ dàng kết hợp hai hoặc nhiều tài liệu PDF thành một tệp PDF duy nhất theo chương trình trên đám mây. Nó có thể hữu ích trong việc chia sẻ hoặc in nhiều tài liệu được kết hợp trong một tệp duy nhất thay vì xử lý từng tệp một. Là nhà phát triển Python, bạn có thể hợp nhất hai hoặc nhiều tệp PDF thành một tệp duy nhất trong các ứng dụng Python của mình. Trong bài viết này, bạn sẽ tìm hiểu cách hợp nhất các tệp PDF bằng API REST trong Python.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

Sáp nhập PDF API REST và Python SDK

Để hợp nhất hai hoặc nhiều tệp PDF, tôi sẽ sử dụng Python SDK của GroupDocs.Merger Cloud API. Nó cho phép bạn kết hợp hai hoặc nhiều tài liệu thành một tài liệu duy nhất hoặc chia một tài liệu nguồn thành nhiều tài liệu kết quả. Nó cũng cho phép bạn dịch chuyển, xóa, trao đổi, xoay hoặc thay đổi hướng trang theo hướng dọc hoặc ngang cho toàn bộ hoặc phạm vi trang ưa thích. SDK hỗ trợ hợp nhất và chia tách tất cả các định dạng tài liệu phổ biến như Word, Excel, PowerPoint, Visio, OneNote, PDF, HTML, v.v.

Bạn có thể cài đặt GroupDocs.Merger Cloud cho ứng dụng Python của mình bằng lệnh sau trong bảng điều khiển:

pip install groupdocs_merger_cloud

Vui lòng lấy Mã khách hàng và Bí mật của bạn từ bảng điều khiển trước khi làm theo các bước được đề cập. Khi bạn có ID và bí mật của mình, hãy thêm mã như hình bên dưới:

client_id = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5"
client_secret = "479db2b01dcb93a3d4d20efb16dea971"

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

Hợp nhất các tệp PDF bằng API REST trong Python

Bạn có thể kết hợp hai hoặc nhiều tệp PDF theo chương trình trên đám mây bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

  1. Tải lên các tệp PDF lên đám mây
  2. Hợp nhất nhiều tệp PDF bằng Python
  3. Tải xuống tệp đã hợp nhất

Tải lên tệp PDF

Đầu tiên, tải các tệp PDF lên đám mây bằng ví dụ mã được cung cấp bên dưới:

# Tạo phiên bản của API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)

# tải lên các tập tin mẫu
for filename in glob.iglob("C:\\Files\\upload\\*.pdf", recursive=True):
    destFile = filename.replace("C:\\Files\\upload", "", 1)           
    # kiểm tra xem tệp đã tồn tại chưa
    fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:
        # tạo yêu cầu tệp tải lên
        request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
        # cập nhật dử liệu
        file_api.upload_file(request)

Do đó, các tệp PDF đã tải lên sẽ có sẵn trong phần tệp của trang tổng quan của bạn trên đám mây.

Hợp nhất nhiều tệp PDF bằng Python

Bạn có thể dễ dàng hợp nhất nhiều tệp PDF thành một tệp theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của DocumentApi
  • Tạo một thể hiện của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem đầu tiên trong FileInfo
  • Tạo một phiên bản khác của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem thứ hai trong FileInfo
  • Thêm nhiều JoinItems để hợp nhất nhiều hơn hai tệp
  • Tạo một phiên bản của JoinOptions
  • Thêm danh sách các mục tham gia đã tạo được phân tách bằng dấu phẩy
  • Đặt đường dẫn tệp đầu ra
  • Tạo một phiên bản của JoinRequest với JoinOptions
  • Nhận kết quả bằng cách gọi phương thức join() của DocumentAPI với JoinRequest

Đoạn mã sau cho biết cách hợp nhất nhiều tệp PDF bằng API REST trong Python.

# khởi tạo api
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# tập tin nguồn 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("ten-pages_1.pdf")

# tập tin nguồn 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("ten-pages_2.pdf")

# xác định tùy chọn tham gia
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "Output/joined.pdf"

# tạo yêu cầu tham gia
request = groupdocs_merger_cloud.JoinRequest(options)

# hợp nhất các tập tin
result = documentApi.join(request)

Tải xuống tệp đã hợp nhất

Mẫu mã trên sẽ lưu tệp PDF đã hợp nhất trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

# khởi tạo API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# tạo yêu cầu file downlod
request = groupdocs_merger_cloud.DownloadFileRequest("Output/joined.pdf", my_storage)
# Tải tập tin
response = file_api.download_file(request)

# Di chuyển tệp đã tải xuống vào thư mục làm việc của bạn
shutil.move(response, "C:\\Files\\")

Hợp nhất các trang cụ thể của nhiều tệp PDF bằng Python

Bạn có thể dễ dàng kết hợp các trang cụ thể từ nhiều tệp PDF thành một tệp duy nhất theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của DocumentApi
  • Tạo một thể hiện của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem đầu tiên trong FileInfo
  • Xác định danh sách các số trang để hợp nhất
  • Tạo một phiên bản khác của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem thứ hai trong FileInfo
  • Xác định số trang bắt đầu và số trang kết thúc
  • Xác định chế độ phạm vi trang
  • Tạo một phiên bản của JoinOptions
  • Thêm danh sách các mục tham gia đã tạo được phân tách bằng dấu phẩy
  • Đặt đường dẫn tệp đầu ra
  • Tạo một phiên bản của JoinRequest với JoinOptions
  • Nhận kết quả bằng cách gọi phương thức join() của DocumentAPI với JoinRequest

Đoạn mã sau cho biết cách hợp nhất các trang cụ thể từ nhiều tệp PDF bằng API REST trong Python.

# khởi tạo api
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# tập tin nguồn 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("Output/joined.pdf")
# số trang của các trang cụ thể để hợp nhất
item1.pages = [1,2]

# tập tin nguồn 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("ten-pages.pdf")
# số trang bắt đầu
item2.start_page_number = 2
# số trang cuối
item2.end_page_number = 4
# chế độ phạm vi trang
item2.range_mode = "OddPages"

# xác định tùy chọn tham gia
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "Output/joined-pages.pdf"

# tạo yêu cầu tham gia
request = groupdocs_merger_cloud.JoinRequest(options)

# hợp nhất các trang
result = documentApi.join(request)

Thử trực tuyến

Vui lòng dùng thử công cụ hợp nhất PDF trực tuyến miễn phí sau đây, được phát triển bằng cách sử dụng API ở trên. https://products.groupdocs.app/merger/pdf

Phần kết luận

Trong bài viết này, bạn đã học cách hợp nhất nhiều tệp PDF trên đám mây. Bạn cũng đã học cách kết hợp các trang cụ thể của nhiều tài liệu PDF thành một tệp bằng Python. Ngoài ra, bạn đã học cách lập trình tải các tệp PDF lên đám mây và sau đó tải xuống tệp đã hợp nhất từ Đám mây. API REST hợp nhất PDF cũng cung cấp SDK .NET, Java, PHP, Ruby, Android và Node.js dưới dạng các thành viên gia đình hợp nhất tài liệu cho Cloud API. Bạn có thể tìm hiểu thêm về GroupDocs.Merge Cloud API bằng cách sử dụng tài liệu. Chúng tôi cũng cung cấp phần Tham khảo API cho phép bạn hình dung và tương tác trực tiếp với các API của chúng tôi thông qua trình duyệt. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm