プロジェクトからのすべてのコメントの収集
プロジェクトからのすべてのコメントの収集
概要
コメントスクレイパーは、プロジェクトに含まれているすべてのアセットを取得し、コメントをスクレイピングして .csv ファイルに出力します。この説明では次のリソースを使用します。
- Python SDK -この SDK はページネーションを処理し、開発者トークン(ベアラー認証)で使用できるクライアントを設定します。
- Python のコメントスクレイパー -使用しているコードサンプルにはこちらからアクセスできます。
Glitch で試す
Glitch はシンプルなツールで、独自のアプリケーションを設定し、それらを Glitch 側のサーバーを使用してテストおよび実行できます。Glitch に慣れていない場合は、Glitch の使用に関するガイドを参照してください。
サーバー上でコメントスクレイパーが動作することを確認する場合は、Glitch に用意した Flask アプリをご利用ください:Python で記述した Frame.io コメントスクレイパー。
必要なスコープ
このガイドを開始する前に、少なくとも次のスコープを含むトークンがあることを確認してください。
1.アプリを準備する
このガイドでは、ファイルツリーの読み取りと同様のパターンに従います。したがって、開始するには以下が必要です。
- クロール対象プロジェクトの
root_asset_id - 開発者トークン
また、FrameioClient やいくつかの追加ヘルパーライブラリーを Python アプリに読み込むことになります。
2.プロジェクトをクロールする
次に、すべてのアセットを再帰的に取得し、コメントを確認し、コメント付きのアセットをリストに保管する必要があります。それをもとに .csv ファイルを作成できます。
プロジェクトをクロールする際には、各アセットについて次のチェックを行う必要があります。
- アセットはファイルか?(
"_type": "file")- ファイルの場合、コメントはあるか?
- ある場合は、それらを取得してリストに追加します。
- ファイルの場合、コメントはあるか?
- アセットはフォルダーか?(
"_type": "folder")- フォルダーの場合は、その子に対して再帰処理を行います。
- アセットはバージョンスタックか?(
"_type": "version_stack")- バージョンスタックの場合は、すべての子を取得し、コメントを確認します。
ページネーションをお忘れなく
上記の例ではページネーションは無視されます — ただし、大きなコレクションをナビゲートするときは無視しないでください。詳細については、基本概念ガイドを参照してください。
3.コメントリストをフラット化する
クロール段階で処理しないのであれば、処理を簡単にするためにリストをフラット化します。
4.リストを選択し、.csv を作成する
リストがフラットの場合は、リスト内包表記を使用して、有用と思われるコメントそれぞれから要素を取得し、.csv ファイルに出力できます。少なくとも以下を含めることを推奨します。
- コメント -
text - 親 ID -
parent_id - アセット ID -
asset_id - アセット名 -
name - 所有者 ID -
owner_id - 所有者のメールアドレス -
owner.email - タイムスタンプ -
timestamp - 更新日時 -
updated_at
アセットごとに必要な出力を含む新しいリストを最終出力用に作成したら、.csv ファイルに書き出します。
これで完了です。これで、Frame.io プロジェクト全体からのフラット化されたコメントを含む .csv ファイルが作成されました。