Python SDK を使用して Word 文書からページを抽出するための迅速かつ簡単な方法。

ワード文書を分割する

Word 文書を分割する | Word 文書からページを別のファイルとして抽出する

ドキュメント管理の分野では、Word ドキュメントから特定のセクションを分割、分離、または抽出する必要が生じることがよくあります。大規模な研究論文、包括的なレポート、長い原稿など、どのようなものであっても、それらを管理しやすい部分に分割する作業は時間がかかり、困難な場合があります。この記事では、Python Cloud SDK を使用してこの要件を満たす手順について説明します。これにより、ドキュメント管理タスクを合理化し、より効率的に作業できるようになります。

ワードプロセッシングAPI

Aspose.Words Cloud は、MS Word (DOCXDOCDOTRTFDOCM) または OpenDocument (ODTOTT) 処理専用のソリューションです。Word 文書の処理には、サードパーティのソフトウェアや MS Office オートメーションは必要ありません。REST API を呼び出すだけで要件を満たすことができます。API は REST ベースなので、デスクトップ、Web、モバイル アプリなど、どのプラットフォームでもアクセスできます。この記事では、Word ファイル内のページを個別の Word 文書として分割する方法について詳しく説明します。API では、分割操作をカスタマイズする柔軟性も提供され、奇数ページと偶数ページをページ数で、ページ範囲で分割できます。

お客様の利便性をさらに高めるために、クラウド API のラッパーである Aspose.Words Cloud SDK for Python を作成しました。これにより、お気に入りのプログラミング言語で Word ドキュメント処理のすべての利点を活用できます。先に進む前に、まずローカル システムに SDK をインストールする必要があります。これは PIP および GitHub からダウンロードできます。SDK をインストールするには、コマンド ライン ターミナルで次のコマンドを実行します。

pip install aspose-words-cloud

IDE として Visual Studio を使用している場合は、プロジェクトに SDK の参照を直接追加できます。

「表示」->「その他のウィンドウ」->「Python 環境」オプションをクリックします。以下に示すように。

Python 環境メニュー オプション。

画像 1:- Python 環境メニュー オプション。

Python 環境ウィンドウのパッケージ フィールドに aspose-word-cloud と入力します。次に、aspose-word-cloud (21.11.0) のインストール リンクをクリックします。バージョン番号は、最新/現在のリリース バージョンに応じて変更される場合があります。下の画像を参照してください。

aspose-words-cloud python パッケージ

画像 2:- aspose-words-cloud python パッケージ。

Python を使用して Word 文書のページを分割する

クラウド ストレージにすでに存在する Word 文書内のすべてのページを分割するには、以下の手順に従ってください。

  • まず、クライアント ID とクライアント シークレットを引数として渡しながら、WordsApi のオブジェクトを初期化する必要があります。
  • 次に、入力 Word ファイルの名前、結果の出力形式、結果ファイルの名前、および出力を zip アーカイブするためのパラメータを指定します。
  • UploadFileRequest オブジェクトを使用して、入力された Word 文書をクラウド ストレージにアップロードします。
  • 次に、2 番目の手順で定義した詳細を渡しながら、SplitDocumentRequest のインスタンスを作成します。
  • 最後に、WordsApi クラスの splitdocument(…) メソッドを呼び出して Word 文書を分割します。結果のファイルは、マップされたクラウド ストレージに保存されます。
try:
        # WordsApiのインスタンスを作成する
        words_api = WordsApi("88d1cda8-b12c-4a80-b1ad-c85ac483c5c5","406b404b2df649611e508bbcfcd2a77f")

        # 入力ワード文書の名前
        inputFileName = 'source.doc'
        # 結果のファイル形式
        resultantFormat = 'DOCX'
        # 操作後の結果ドキュメントの名前。このパラメータが省略された場合
        # 結果のファイルは入力文書の名前で保存されます
        resultantFile = 'Split-File'
        # 出力を ZIP 圧縮するかどうかを示すフラグ。
        zipOutput = 'false'

        # ソースのWord文書をクラウドストレージにアップロードする
        words_api.upload_file(asposewordscloud.models.requests.UploadFileRequest(open('C:\\Users\\Downloads\\'+inputFileName, 'rb'), "", None))

        # ドキュメントを分割するオブジェクトを作成する
        request = asposewordscloud.models.requests.SplitDocumentRequest(inputFileName, resultantFormat, None, None, None,
                                                                                    None, resultantFile,None, None, zipOutput, None)
        # 単語分割操作を開始する
        result = words_api.split_document(request)
        
        # コンソールにメッセージを出力する(オプション)
        print('Document Split process completed successfully !')    
    except ApiException as e:
        print("Exception while calling WordsApi: {0}".format(e))
ドキュメント分割操作のプレビュー

画像 3: ドキュメント分割操作のプレビュー。

選択したページに基づいてドキュメントを分割する

このセクションでは、選択したページに基づいてドキュメントを分割し、出力を ZIP アーカイブとして保存する方法について詳しく説明します。コード スニペットは、アーカイブする出力の Page From、Page To、および True 値を指定する必要があることを除いて、上で共有したものとほぼ同じです。

try:
        # WordsApiのインスタンスを作成する
        words_api = WordsApi("88d1cda8-b12c-4a80-b1ad-c85ac483c5c5","406b404b2df649611e508bbcfcd2a77f")

        # 入力ワード文書の名前
        inputFileName = 'source.doc'
        # 結果のファイル形式
        resultantFormat = 'DOCX'
        # 操作後の結果ドキュメントの名前。このパラメータが省略された場合
        # 結果ファイルは入力文書の名前で保存されます
        resultantFile = 'SplitOutput'
        # 出力を示すフラグは ZIP アーカイブ内にある必要があります。
        zipOutput = 'false'

        # ソースのWord文書をクラウドストレージにアップロードする
        words_api.upload_file(asposewordscloud.models.requests.UploadFileRequest(open('C:\\Users\\Downloads\\'+inputFileName, 'rb'), "", None))

        # ドキュメントを分割するオブジェクトを作成する
        request = asposewordscloud.models.requests.SplitDocumentRequest(inputFileName, resultantFormat, None, None, None,
                                                                                    None, resultantFile,pageFrom, pageTo, zipOutput, None)
        # 単語分割操作を開始する
        result = words_api.split_document(request)
        
        # コンソールにメッセージを出力する(オプション)
        print('Document Split process completed successfully !')    
    except ApiException as e:
        print("Exception while calling WordsApi: {0}".format(e))
ドキュメント分割出力

画像 4: 選択したページのドキュメント分割操作のプレビュー。

cURL コマンドを使用して Word 文書からページを抽出する

他の REST API と同様に、Aspose.Words Cloud にもコマンド ライン ターミナル内の cURL コマンド経由でアクセスできます。ただし、先に進む前に、まずクライアント資格情報に基づいて JWT アクセス トークンを生成する必要があります。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

トークンが生成されたら、次のコマンドを実行して Word 文書からページを抽出し、出力をクラウド ストレージに保存します。

curl -v -X PUT "https://api.aspose.cloud/v4.0/words/source.doc/split?format=DOCX&destFileName=Split-File&from=2&to=4&zipOutput=false" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>"

結論

この記事では、Python SDK を使用して Word 文書を個別のページ ファイルに分割できるドキュメント スプリッターを作成する可能性について説明しました。さらに、必要に応じて、Python SDK を使用したり、cURL コマンドを使用して Word 文書からページを抽出したりすることもできます。私たちは共同の成長とコラボレーションを信じています。そのため、当社の SDK は MIT ライセンスに従って開発されており、完全なソース コードは Github からダウンロードできます。必要に応じて、コードをダウンロードして、必要に応じて変更できます。問題が発生したり、さらに質問がある場合は、無料製品サポート フォーラム からお気軽にお問い合わせください。

関連記事

詳細については、次のリンクにアクセスすることをお勧めします。