Python の REST API を使用して HTML を PDF に変換する

Python 開発者は、クラウド上でプログラムによって HTML ファイルを PDF ドキュメントに簡単に変換できます。このような変換は、記録を保存したり、HTML ファイルをポータブル形式で共有したりする場合に役立ちます。この記事では、Python の REST API を使用して HTML を PDF ドキュメントに変換する方法を学習します。

この記事では次のトピックについて説明します。

HTML から PDF への変換 REST API および Python SDK

HTML ファイルを PDF に変換するには、GroupDocs.Conversion Cloud の Python SDK API を使用します。 サポートされているファイル形式 のドキュメントと画像を必要な形式に変換できます。 Word、PowerPoint, Excel、PDF、HTML、CAD、ラスター画像など、50種類以上の文書や画像を簡単に変換できます。

コンソールで次のコマンドを使用して、GroupDocs.Conversion Cloud を Python プロジェクトにインストールできます。

pip install groupdocs_conversion_cloud

手順と利用可能なコード例を開始する前に、ダッシュボード からクライアント ID とクライアント シークレットを取得してください。 ID とシークレットを取得したら、以下に示すコードを追加してください。

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 = ""

Python の REST API を使用して HTML を PDF に変換する

以下の簡単な手順に従って、HTML ファイルを PDF ドキュメントに変換できます。

ドキュメントをアップロードする

まず、以下のコード例を使用して、HTML ファイルをクラウドにアップロードします。

# APIのインスタンスを作成する
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# ファイルのアップロードリクエスト
request = groupdocs_conversion_cloud.UploadFileRequest("sample.html", "C:\\Files\\sample.html", my_storage)

# サンプルファイルをアップロードする
response = file_api.upload_file(request)

その結果、アップロードされた HTML ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。

Python で HTML を PDF に変換する

以下の手順に従って、プログラムで HTML を PDF ドキュメントに簡単に変換できます。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • HTMLファイルのパスを設定する
  • 形式に「pdf」を割り当てます
  • 出力ファイルのパスを指定します
  • 必要に応じて PdfConvertOptions を定義します
  • 必要に応じて、dpi、margin\top、margin\left、fit\window などのさまざまなプロパティを設定します。
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • ConvertDocumentRequest で convert\document() メソッドを呼び出して結果を取得します

次のコード例は、REST API を使用して HTML ファイルを PDF ドキュメントに変換する方法を示しています。

# 必要なAPIインスタンスを作成する
変換_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# 変換設定を準備する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "変換ed"

# PDF変換オプション
変換Options = groupdocs_conversion_cloud.PdfConvertOptions()
変換Options.center_window = True     # Set position of the document's window on the screen
変換Options.display_doc_title = True
変換Options.dpi = 1024.0
変換Options.fit_window = False
変換Options.from_page = 1           # Start conversion from FromPage page
変換Options.linearize = False       # Linearize PDF Document for the Web
変換Options.margin_top = 5
変換Options.margin_left = 5
変換Options.unembed_fonts = True     # Make fonts not embedded
変換Options.remove_pdfa_compliance = False # Remove Pdf-A Compliance

settings.変換_options = 変換Options

# ドキュメントリクエストの変換
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# 変換
result = 変換_api.変換_document(request)

# 終わり
print("Document 変換ed: " + result[0].path)
Python の REST API を使用して HTML を PDF に変換する

Python の REST API を使用して HTML を PDF に変換する

変換されたファイルをダウンロードする

上記のコードサンプルは、変換された PDF ファイルをクラウド上に保存します。次のコードサンプルを使用してダウンロードできます。

# APIの初期化
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# ダウンロードファイルリクエストの作成
request = groupdocs_conversion_cloud.DownloadFileRequest("converted\\sample.pdf", my_storage)

# ダウンロードファイル
response = file_api.download_file(request)

# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(response, "C:\\Files\\")

HTML を PDF に変換し、透かしを追加する

以下の手順に従って、プログラムによって HTML を PDF ドキュメントに変換し、変換されたドキュメントにウォーターマークを追加できます。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • HTMLファイルのパスを設定する
  • 形式に「pdf」を割り当てます
  • 出力ファイルのパスを指定します
  • WatermarkOptions のインスタンスを作成する
  • 透かしのテキスト、色、幅、高さなどを設定します。
  • PdfConvertOptions を定義し、WatermarkOptions を割り当てます。
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • ConvertDocumentRequest で convert\document() メソッドを呼び出して変換します。

次のコード例は、Python の REST API を使用して、HTML ファイルを PDF ドキュメントに変換し、変換された PDF ドキュメントにウォーターマークを追加する方法を示しています。前述の手順に従ってファイルをアップロードおよびダウンロードしてください。

# APIの初期化
変換_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "変換ed"

# 透かしオプションを定義する
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;

# PDF 変換オプションを定義する
変換Options = groupdocs_conversion_cloud.PdfConvertOptions()
変換Options.watermark_options = watermark

settings.変換_options = 変換Options

# ドキュメント変換リクエストの作成
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# 変換
result = 変換_api.変換_document(request)
print("Document 変換ed successfully: " + result[0].url)
HTML を PDF に変換し、透かしを追加する

HTML を PDF に変換し、透かしを追加する

Cloud Storage を使用しない HTML から PDF への変換

以下の手順に従って、クラウド ストレージを使用せずに HTML を PDF ドキュメントに変換できます。

  • ConvertApi のインスタンスを作成する
  • ConvertDocumentDirectRequest を作成し、要求されたドキュメント形式と入力ファイルのパスを渡します
  • ConvertDocumentDirectRequest で convert\document\direct() メソッドを呼び出して結果を取得します
  • 必要に応じて、shutil.move() メソッドを使用して出力ファイルをローカル パスに保存します。

次のコード例は、クラウド ストレージを使用せずに HTML ファイルを PDF ドキュメントに変換する方法を示しています。リクエスト本文で入力ファイルを渡し、API レスポンスで出力ファイルを受け取ります。

# 必要なAPIインスタンスを作成する
convert_api = groupdocs_conversion_cloud.変換Api.from_keys(client_id, client_secret)

# リクエストの準備
request = groupdocs_conversion_cloud.変換DocumentDirectRequest("pdf", "C:\\Files\\sample.html")

# 変換
result = convert_api.convert_document_direct(request)

# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(result, "C:\\Files\\")

HTML を PDF に変換して直接ダウンロード

以下の手順に従って、プログラムで HTML を PDF ドキュメントに簡単に変換できます。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • HTMLファイルのパスを設定する
  • 形式に「pdf」を割り当てます
  • 出力パスを「なし」に設定します
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • convert\document\download() メソッドを呼び出して結果を取得します
  • 必要に応じて、shutil.move() メソッドを使用して出力ファイルをローカル パスに保存します。

次のコード例は、HTML ファイルを PDF ドキュメントに変換し、Python の REST API を使用して直接ダウンロードする方法を示しています。 API は、応答として変換された PDF ファイルを返します。前述の手順に従ってファイルをアップロードしてください。

# 必要なAPIインスタンスを作成する
convert_api = groupdocs_conversion_cloud.変換Api.from_keys(client_id, client_secret)

# 変換設定を準備する
settings = groupdocs_conversion_cloud.変換Settings()
settings.file_path = "sample.html"
settings.format = "pdf"

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

# リクエストの準備
request = groupdocs_conversion_cloud.変換DocumentRequest(settings)

# 変換
response = convert_api.convert_document_download(request)

# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(response, "C:\\Files\\")

オンラインで試す

上記の API を使用して開発された、次の無料のオンライン HTML から PDF への変換ツールをお試しください。 https://products.groupdocs.app/conversion/html-to-pdf

結論

この記事では、クラウド上で Python を使用して HTML ファイルを PDF ドキュメントに変換する方法を学習しました。また、プログラムでクラウド ストレージを使用せずに HTML ファイルを PDF ドキュメントに変換する方法も学習しました。さらに、Python を使用して、変換された PDF ドキュメントにウォーターマークを追加する方法を学習しました。この記事では、プログラムによって HTML ファイルをクラウドにアップロードし、変換された PDF ファイルをクラウドからダウンロードする方法についても説明しました。 GroupDocs.Conversion Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて直接 API を視覚化し操作できるようにする API リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。

関連項目