Chuyển đổi HTML sang PDF bằng API REST trong Python

Là nhà phát triển Python, bạn có thể dễ dàng chuyển đổi các tệp HTML của mình thành tài liệu PDF theo chương trình trên đám mây. Việc chuyển đổi như vậy có thể hữu ích trong việc lưu giữ hồ sơ hoặc chia sẻ tệp HTML ở dạng di động. Trong bài viết này, bạn sẽ tìm hiểu cách chuyển đổi tài liệu HTML sang PDF bằng API REST trong Python.

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

API REST chuyển đổi HTML sang PDF và SDK Python

Để chuyển đổi các tệp HTML thành PDF, tôi sẽ sử dụng Python SDK của GroupDocs.Conversion Cloud API. Nó cho phép bạn chuyển đổi tài liệu và hình ảnh của bất kỳ định dạng tệp được hỗ trợ nào sang bất kỳ định dạng nào bạn cần. Bạn có thể dễ dàng chuyển đổi giữa hơn 50 loại tài liệu và hình ảnh như Word, PowerPoint, Excel, PDF, HTML, CAD, hình ảnh raster, v.v.

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

pip install groupdocs_conversion_cloud

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

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

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

Chuyển đổi HTML sang PDF bằng API REST trong Python

Bạn có thể chuyển đổi tệp HTML của mình thành tài liệu PDF bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

Tải lên tài liệu

Đầu tiên, tải tệp HTML 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_conversion_cloud.FileApi.from_config(configuration)

# tải lên yêu cầu tập tin
request = groupdocs_conversion_cloud.UploadFileRequest("sample.html", "C:\\Files\\sample.html", my_storage)

# tải lên tập tin mẫu
response = file_api.upload_file(request)

Do đó, tệp HTML đã 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.

Chuyển HTML sang PDF bằng Python

Bạn có thể dễ dàng chuyển đổi tài liệu HTML sang PDF theo chương trình bằng cách thực hiện theo các bước dưới đây:

  • Tạo một phiên bản ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Đặt đường dẫn tệp HTML
  • Gán “pdf” cho định dạng
  • Cung cấp đường dẫn tệp đầu ra
  • Xác định PdfConvertOptions nếu cần
  • Tùy chọn đặt các thuộc tính khác nhau như dpi, lề\top, lề\left, fit\window, v.v.
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Nhận kết quả bằng cách gọi phương thức convert\document() với ConvertDocumentRequest

Ví dụ mã sau đây cho biết cách chuyển đổi tệp HTML của bạn thành tài liệu PDF bằng API REST.

# Tạo các phiên bản API cần thiết
chuyển thành_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Chuẩn bị cài đặt chuyển đổi
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "chuyển thànhed"

# Tùy chọn chuyển đổi PDF
chuyển thànhOptions = groupdocs_conversion_cloud.PdfConvertOptions()
chuyển thànhOptions.center_window = True     # Set position of the document's window on the screen
chuyển thànhOptions.display_doc_title = True
chuyển thànhOptions.dpi = 1024.0
chuyển thànhOptions.fit_window = False
chuyển thànhOptions.from_page = 1           # Start conversion from FromPage page
chuyển thànhOptions.linearize = False       # Linearize PDF Document for the Web
chuyển thànhOptions.margin_top = 5
chuyển thànhOptions.margin_left = 5
chuyển thànhOptions.unembed_fonts = True     # Make fonts not embedded
chuyển thànhOptions.remove_pdfa_compliance = False # Remove Pdf-A Compliance

settings.chuyển thành_options = chuyển thànhOptions

# Chuyển đổi yêu cầu tài liệu
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# chuyển thành
result = chuyển thành_api.chuyển thành_document(request)

# Xong
print("Document chuyển thànhed: " + result[0].path)
Chuyển đổi HTML sang PDF bằng API REST trong Python

Chuyển đổi HTML sang PDF bằng API REST trong Python

Tải xuống tệp đã chuyển đổi

Mẫu mã trên sẽ lưu tệp PDF đã chuyển đổi 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_conversion_cloud.FileApi.from_config(configuration)

# tạo yêu cầu tệp tải xuống
request = groupdocs_conversion_cloud.DownloadFileRequest("converted\\sample.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\\")

Chuyển đổi HTML sang PDF và thêm hình mờ

Bạn có thể chuyển đổi tài liệu HTML sang PDF và thêm hình mờ vào tài liệu đã chuyển đổi theo chương trình bằng cách thực hiện theo các bước dưới đây:

  • Tạo một phiên bản của ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Đặt đường dẫn tệp HTML
  • Gán “pdf” cho định dạng
  • Cung cấp đường dẫn tệp đầu ra
  • Tạo một phiên bản của WatermarkOptions
  • Đặt Văn bản hình mờ, Màu sắc, Chiều rộng, Chiều cao, v.v.
  • Xác định PdfConvertOptions và gán WatermarkOptions
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convert\document() với ConvertDocumentRequest

Ví dụ mã sau đây cho biết cách chuyển đổi tệp HTML thành tài liệu PDF và thêm hình mờ vào tài liệu PDF đã chuyển đổi bằng API REST trong Python. Vui lòng làm theo các bước được đề cập trước đó để tải lên và tải xuống tệp.

# khởi tạo api
chuyển thành_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# xác định cài đặt chuyển đổi
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "chuyển thànhed"

# xác định tùy chọn hình mờ
watermark = groupdocs_conversion_cloud.WatermarkOptions()
watermark.text = "THIS IS SAMPLE WATERMARK"
watermark.bold = True;
watermark.font_size = 34;
watermark.color = "Gray";
watermark.background = False;
watermark.rotation_angle = 30;
watermark.left = 90;
watermark.top = 500;

# xác định các tùy chọn chuyển đổi PDF
chuyển thànhOptions = groupdocs_conversion_cloud.PdfConvertOptions()
chuyển thànhOptions.watermark_options = watermark

settings.chuyển thành_options = chuyển thànhOptions

# tạo yêu cầu tài liệu chuyển đổi
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# chuyển thành
result = chuyển thành_api.chuyển thành_document(request)
print("Document chuyển thànhed successfully: " + result[0].url)
Chuyển đổi HTML sang PDF và thêm hình mờ

Chuyển đổi HTML sang PDF và thêm hình mờ

Chuyển đổi HTML sang PDF mà không cần sử dụng Cloud Storage

Bạn có thể chuyển đổi tài liệu HTML sang PDF mà không cần sử dụng bộ nhớ đám mây bằng cách thực hiện theo các bước dưới đây:

  • Tạo một phiên bản của ConvertApi
  • Tạo ConvertDocumentDirectRequest và chuyển định dạng tài liệu được yêu cầu và đường dẫn tệp đầu vào
  • Nhận kết quả bằng cách gọi phương thức convert\document\direct() với ConvertDocumentDirectRequest
  • Tùy chọn, lưu tệp đầu ra vào đường dẫn cục bộ bằng phương thức Shutil.move()

Ví dụ mã sau đây cho biết cách chuyển đổi tệp HTML thành tài liệu PDF mà không cần sử dụng bộ nhớ đám mây. Bạn sẽ chuyển tệp đầu vào trong phần thân yêu cầu và nhận tệp đầu ra trong phản hồi API.

# Tạo các phiên bản API cần thiết
convert_api = groupdocs_conversion_cloud.Chuyển thànhApi.from_keys(client_id, client_secret)

# chuẩn bị yêu cầu
request = groupdocs_conversion_cloud.Chuyển thànhDocumentDirectRequest("pdf", "C:\\Files\\sample.html")

# Chuyển thành
result = convert_api.convert_document_direct(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(result, "C:\\Files\\")

Chuyển đổi HTML sang PDF và tải xuống trực tiếp

Bạn có thể dễ dàng chuyển đổi tài liệu HTML sang PDF theo chương trình bằng cách thực hiện theo các bước dưới đây:

  • Tạo một phiên bản ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Đặt đường dẫn tệp HTML
  • Gán “pdf” cho định dạng
  • Đặt “Không” cho đường dẫn đầu ra
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Nhận kết quả bằng cách gọi phương thức convert\document\download()
  • Tùy chọn, lưu tệp đầu ra vào đường dẫn cục bộ bằng phương thức Shutil.move()

Ví dụ mã sau đây cho biết cách chuyển đổi tệp HTML thành tài liệu PDF và tải xuống trực tiếp bằng API REST trong Python. API sẽ trả lại tệp PDF đã chuyển đổi để phản hồi. Vui lòng làm theo các bước được đề cập trước đó để tải tệp lên.

# Tạo các phiên bản API cần thiết
convert_api = groupdocs_conversion_cloud.Chuyển thànhApi.from_keys(client_id, client_secret)

# Chuẩn bị cài đặt chuyển đổi
settings = groupdocs_conversion_cloud.Chuyển thànhSettings()
settings.file_path = "sample.html"
settings.format = "pdf"

settings.output_path = None    # leave OutputPath will result the output as document IOStream

# chuẩn bị yêu cầu
request = groupdocs_conversion_cloud.Chuyển thànhDocumentRequest(settings)

# Chuyển thành
response = convert_api.convert_document_download(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\\")

Thử trực tuyến

Vui lòng dùng thử công cụ chuyển đổi HTML sang 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/conversion/html-to-pdf

Phần kết luận

Trong bài viết này, bạn đã học cách chuyển đổi tệp HTML thành tài liệu PDF bằng Python trên đám mây. Bạn cũng đã học cách chuyển đổi tệp HTML thành tài liệu PDF mà không cần sử dụng bộ nhớ đám mây theo chương trình. Ngoài ra, bạn đã học cách thêm hình mờ vào tài liệu PDF đã chuyển đổi bằng Python. Bài viết này cũng giải thích cách lập trình tải tệp HTML lên đám mây rồi tải xuống tệp PDF đã chuyển đổi từ đám mây. Bạn có thể tìm hiểu thêm về GroupDocs.Conversion 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