Chuyển đổi email sang PDF là cần thiết trong khi tham khảo và chia sẻ nội dung email. Trong bài viết này, chúng ta sẽ học cách chuyển đổi các tệp tin email như MSG và EML thành PDF bằng Python. Điều này sẽ giúp bạn tự động chuyển đổi email trên đám mây trong ứng dụng của mình.

Chuyển đổi Email sang PDF bằng Python

Sau đây là các chủ đề được đề cập trong bài viết này:

Thư viện chuyển đổi Python

Tôi sẽ sử dụng GroupDocs.Conversion Cloud API for Python để chuyển đổi email EML và MSG thành PDF trên đám mây. Bằng cách sử dụng API này, bạn cũng có thể chuyển đổi một danh sách lớn các định dạng tài liệu và hình ảnh sang bất kỳ định dạng được hỗ trợ nào khác.

Có các ví dụ về python có sẵn trên GitHub giúp bạn tìm hiểu và triển khai các tính năng trong ứng dụng của riêng mình. Bạn có thể cài đặt groupdocs-conversion-cloud với pip (trình cài đặt gói cho python) từ PyPI (Chỉ mục gói Python) bằng cách sử dụng lệnh sau:

pip install groupdocs-conversion-cloud

hoặc sao chép kho lưu trữ và cài đặt qua setuptools:

python setup.py install

Trước khi bạn tiếp tục, hãy nhanh chóng lấy ID khách hàng và Bí mật khách hàng từ bảng điều khiển của bạn, sau đó nhảy xuống bên dưới để xem cách trăn chuyển đổi email của bạn thành PDF, đây là định dạng tài liệu di động phổ biến.

Chuyển MSG sang PDF bằng Python

Các tệp Outlook MSG có thể được chuyển đổi thành PDF chỉ bằng một vài dòng mã và làm theo các bước được đề cập bên dưới. Các liên kết được nhúng trong các bước sẽ cho phép khám phá thêm các lớp và phương thức.

  1. Đặt cấu hình bằng Client ID, Client Secret và URL cơ sở API.
  2. Định cấu hình cài đặt với đường dẫn tệp và định dạng đầu ra.
  3. Đặt tùy chọn tải bằng EmailLoadOptions.
  4. Sử dụng phương thức convert\document cùng với các cài đặt để chuyển đổi tệp MSG sang định dạng PDF.

Mã python sau đây thực hiện theo các bước trên và chuyển đổi tệp MSG trong email sang định dạng PDF. Bạn cũng có tùy chọn ẩn hoặc hiển thị các trường khác nhau (tới, cc, bcc) của email.

# Chuyển đổi tệp Email MSG thành PDF bằng Python bằng GroupDocs.Conversion Cloud API
configuration = groupdocs_conversion_cloud.Configuration("<< CLIENT_ID >>", "<< CLIENT_SECRET >>")
configuration.api_base_url = "https://api.groupdocs.cloud"

# Tạo phiên bản API
apiInstance = groupdocs_conversion_cloud.ConvertApi.from_config(configuration)

# Cài đặt chuyển đổi
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "filepath/email.msg"
settings.format = "pdf"

# Tùy chọn tải
loadOptions = groupdocs_conversion_cloud.EmailLoadOptions()

## Set different fields as visible or hidden
loadOptions.display_header = True
loadOptions.display_from_email_address = True
loadOptions.display_to_email_address = False
loadOptions.display_email_address = True
loadOptions.display_cc_email_address = True
loadOptions.display_bcc_email_address = True

settings.load_options = loadOptions
settings.output_path = "filepath/folder"

# Chuyển đổi sang PDF theo cài đặt
result = apiInstance.convert_document(groupdocs_conversion_cloud.ConvertDocumentRequest(settings))

Đây là tệp MSG mẫu được tạo bằng Microsoft Outlook. Ngoài ra bên dưới là tệp PDF, có được bằng cách chuyển đổi tệp MSG bằng mã python.

Tệp email MSG được chuyển đổi thành PDF theo chương trình
Đã chuyển đổi tập tin MSG sang PDF theo chương trình

Chuyển đổi EML sang PDF bằng Python

Tương tự, ee cũng có thể lập trình chuyển đổi các email định dạng EML của chúng tôi sang định dạng PDF bằng các dòng mã python tương tự. Các bước sau đây sẽ hướng dẫn bạn đạt được mục tiêu.

  1. Đặt cấu hình bằng Client ID, Client Secret và URL cơ sở API.
  2. Xác định đường dẫn nguồn, định dạng đầu ra và ConvertSettings.
  3. Đặt tùy chọn tải bằng EmailLoadOptions, đồng thời xác định các trường sẽ hiển thị hoặc ẩn trong tệp PDF đã chuyển đổi.
# Lập trình Chuyển đổi tệp EML thành PDF bằng Python bằng GroupDocs.Conversion Cloud API
configuration = groupdocs_conversion_cloud.Configuration("<< CLIENT_ID >>", "<< CLIENT_SECRET >>")
configuration.api_base_url = "https://api.groupdocs.cloud"

# Tạo phiên bản API
apiInstance = groupdocs_conversion_cloud.ConvertApi.from_config(configuration)

# Cài đặt chuyển đổi
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "filepath/email.eml"
settings.format = "pdf"

# Tùy chọn tải
loadOptions = groupdocs_conversion_cloud.EmailLoadOptions()

## Set different fields as visible or hidden
loadOptions.display_cc_email_address = False
loadOptions.display_bcc_email_address = False

settings.load_options = loadOptions
settings.output_path = "filepath/folder"

# Chuyển đổi sang PDF theo cài đặt
result = apiInstance.convert_document(groupdocs_conversion_cloud.ConvertDocumentRequest(settings))

Đây là tệp EML nguồn và ảnh chụp màn hình tệp PDF đã chuyển đổi, đã được chuyển đổi bằng mã ở trên.

Tệp EML được chuyển đổi thành PDF theo chương trình
Đã chuyển đổi tệp EML sang tệp PDF theo chương trình

Phần kết luận

Hôm nay, chúng ta đã học cách chuyển đổi các tệp MSG và EML thành PDF trên đám mây bằng API chuyển đổi Python. Hơn nữa, chúng tôi có thể áp dụng tùy chỉnh theo chương trình cho các tệp PDF kết quả để có được kết quả theo phong cách mong muốn của mình. Bạn có thể tìm hiểu thêm về GroupDocs.Conversion Cloud API từ tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với hỗ trợ.

Xem thêm