PythonでPDFを画像に変換する
このチュートリアルでは、ホスティングされたJPedal cloud APIを使用してPDFを画像に変換する方法を説明します。独自のセルフホスティングJPedalマイクロサービス をセットアップすることもできます。
このサービスは通常のHTTPリクエストでアクセスできますが、このチュートリアルではオープンソースのPython IDRCloudClient を使用します。これはREST API に対するシンプルなPythonラッパーを提供します。
pipを使用して、以下のコマンドでIDRCloudClientパッケージ をインストールします。
pip install IDRCloudClient
以下は、PDFを画像に変換するための基本的なコード例です。設定オプションと高度な機能については後述します。
from IDRSolutions import IDRCloudClient
client = IDRCloudClient('https://my-self-hosted-service.com/' + IDRCloudClient.JPEDAL)
try:
result = client.convert(
input=IDRCloudClient.UPLOAD,
file='/path/to/exampleFile.pdf',
settings='{"mode":"convertToImages","format":"png"}'
)
outputURL = result['downloadUrl']
client.downloadResult(result, 'path/to/output/dir')
if outputURL is not None:
print("Download URL: " + outputURL)
except Exception as error:
print(error)
JPedal Microserviceは、変換完了時に変換のステータス を送信するためのコールバックURLを受け付けます。コールバックURLを使用することで、変換が完了したかどうかを確認するためにサービスをポーリングする必要がなくなります。 コールバックURLは、以下のようにconvertメソッドに提供できます。
result = client.convert(
input=IDRCloudClient.UPLOAD,
callbackUrl='http://listener.url',
file='/path/to/exampleFile.pdf',
settings='{"mode":"convertToImages","format":"png"}'
)
JPedal APIは、変換をカスタマイズするためのキーと値のペアの設定オプションを含む文字列化されたJSONオブジェクトを受け付けます。設定はconvertメソッドに提供する必要があります。PDFを画像に変換するための設定オプションの完全なリストはこちら で確認できます。
settings='{"key":"value","key":"value"}'
ローカルファイルをアップロードする以外に、JPedal Microserviceがダウンロードして変換を実行するURLを提供することもできます。これを行うには、convertメソッドのinputとfileの値を以下のように置き換えます。
input=IDRCloudClient.DOWNLOAD
url='http://exampleURL/exampleFile.pdf'
PDFを画像に変換するためにユーザー名とパスワードが必要な独自のJPedal Microserviceをデプロイしている場合は、各変換時にそれらを提供する必要があります。これらは、以下のようにconvertメソッドにauthという名前の変数を渡すことで提供されます。
auth=('username', 'password'))
GitHub上のIDRCloudClient
Pypi上のIDRCloudClient
JPedal Microservice API
JPedal Microserviceの使用
