メインコンテンツへスキップ
このチュートリアルでは、Python SDKを使用してBoxにコンテンツをアップロードする2つの方法 () を取り上げます。分割アップロードには、SDKの便利なメソッドを使う方法と、アップロードセッションを自分で管理する方法があります。各方法の仕組みと、と競合処理を組み合わせて新規ファイルをアップロードしたり、既存のファイルを更新したりする方法について説明します。
このチュートリアルのコードサンプルでは、 を使用しています。

前提条件

  • Boxアプリケーションで [] スコープ (root_readwrite) が有効になっている
  • コンピュータにPython 3.8以降がインストールされている
  • Box Python SDKがインストールされている (pip install "boxsdk~=10")
  • が認証済みである

直接アップロード

ファイルをアップロードするには、upload_fileメソッドを呼び出します。直接アップロードAPIの詳細については、を参照してください。 最初にを実行します。同名のファイルがすでに存在する場合は、エラーレスポンスに競合ファイルのIDが含まれます。その名前のファイルのコンテンツを上書きしたくない場合は、名前を変更して新規ファイルとしてアップロードします。以下のサンプルでは、ファイルのコンテンツを上書きする必要があると想定し、そのIDを使用してをアップロードしています。
Python v10
フォルダでupload_fileを呼び出すと新規ファイルが作成されます。既存ファイルでupload_file_versionを呼び出すと新しいバージョンがアップロードされます。

分割アップロード

20 MB以上のファイルにはを使用します。各分割アップロードはを通じて行われます。アップロードセッションでは、セッションを作成して、し、することでファイルを確定します。これには、2つの方法があります。
  • 便利なメソッド: upload_big_fileを使用すると、3つのステップすべてが自動で行われます。
  • 手動のアップロードセッション: 詳細な制御が必要な場合は、セッションの作成、各パーツのアップロード、コミットを自分で行います。

便利なメソッド

upload_big_fileメソッドを使用すると、パーツ単位でファイルが自動的にアップロードされます。アップロード開始前に名前の競合を処理できるよう、最初に事前チェックを実行します。同名のファイルがすでに存在する場合は、upload_chunked_fileによって既存ファイル用のセッションが作成され、次のセクションで示すようにupload_file_via_sessionヘルパーによって新しいバージョンがアップロードされます。
Python v10

手動のアップロードセッション

アップロードを詳細に制御するには、自分でセッションを管理します。自分が渡したセッションについて、upload_file_via_sessionヘルパーによってすべてのパートがアップロードされ、セッションがコミットされます。
Python v10
セッションの作成は、ヘルパーを呼び出す前に行います。最初に事前チェックを実行してから、create_file_upload_sessionを使用して新しいファイルを作成します。同名のファイルがすでに存在する場合、upload_file_manualcreate_file_upload_session_for_existing_fileにフォールバックして新しいバージョンをアップロードします。
Python v10

リソース

最終更新日 2026年7月1日