30以上のSNS・ECプラットフォームを1つのPython SDKで横断取得!Just One API 公式クライアント
30以上のSNS・ECプラットフォームを1つのPython SDKで横断取得!Just One API 公式クライアント
ひとことでいうと
「Just One API Python SDK」は、Douyin(抖音)・TikTok・Xiaohongshu(小紅書)・Instagram・YouTube・Amazon・Taobao など30以上のプラットフォームのデータを、たった1つのPythonプログラムから同じ書き方で取得できる公式ライブラリです。国内外の主要SNS・動画・ECサービスを横断して扱えるため、「プラットフォームごとに別々の仕組みを作る」手間がなくなります。APIトークン(サービスを使うための合言葉のようなもの)を設定するだけで、すぐに各プラットフォームのデータを取り出せます。マーケティングリサーチャーからデータエンジニアまで、幅広い人が活用できる設計です。
こんな人におすすめ
1. SNSのトレンドや投稿データをまとめて分析したい人 Douyin の動画トレンドや Xiaohongshu の投稿、Weibo・Bilibili・Reddit のコンテンツを一度に集めて比較したい、というケースに向いています。複数プラットフォームの認証やアクセス制限をSDKが内部で処理してくれるため、自前でスクレイピング(Webページを自動で巡回してデータを集める手法)を組むより安定したデータ収集が期待できます。
2. ECプラットフォームの価格や商品情報を横断的に調べたい人 Taobao・Tmall・JD(京東)・Amazon・Temu・Shopee など複数のネットショッピングサービスの商品価格や情報を1つのコードでまとめて取得したい担当者に最適です。プラットフォームごとの仕様の違いをSDKが吸収してくれるため、開発にかかる手間を大幅に削減できます。
3. Webスクレイピングの代替手段を探しているデータエンジニアの方 公式APIを通じてデータを取得するため、法的・技術的なリスクが低く、構造化された(整理済みの)データを直接受け取れます。インフルエンサーマーケティング向けの Douyin Xingtu(星図)・Xiaohongshu Pugongying(蒲公英)といった専門的なプラットフォームAPIにも対応しており、幅広い用途に応えます。
インストール・使い方
Step 1: ライブラリをインストールする
ターミナル(文字でコンピュータに命令を送る画面)を開き、以下のコマンドをコピー&ペーストして実行してください。
pip install justoneapi
pip(ピップ)とは、Pythonのライブラリを自動でダウンロード・インストールしてくれる公式ツールです。このコマンド1行で必要なファイルがすべてそろいます。Python 3.12 での動作が確認されています。
Step 2: APIトークンを取得する
Just One API の公式サイトでアカウントを作成し、APIトークンを発行します。トークンとは「このサービスを使う許可証」のようなもので、すべてのリクエスト(データ取得の要求)に必要です。発行したトークンは次のステップで使います。
Step 3: クライアントを初期化して基本的に使う
from justoneapi import JustOneAPIClient
client = JustOneAPIClient(token="your_token")
# Douyin(抖音)の動画を「deepseek」というキーワードで検索する例
response = client.douyin.search_video_v4(keyword="deepseek")
print(response.success) # True: 正常に取得できたかどうか
print(response.code) # ビジネスコード(数値)
print(response.message) # サーバーからのメッセージ
print(response.data) # 実際のデータ本体
print(response.raw_json) # 整形前のフルレスポンス
JustOneAPIClient を作るとき、取得したトークンを token= に渡すだけで準備完了です。各プラットフォームは client.douyin・client.xiaohongshu のように「サブクライアント」として整理されているので、どのサービスにアクセスするかが名前を見ればわかります。
Step 4: エラーを例外として受け取る(オプション設定)
from justoneapi import JustOneAPIClient, BusinessError
client = JustOneAPIClient(
token="your_token",
raise_on_business_error=True,
)
try:
response = client.douyin.search_video_v4(keyword="deepseek")
except BusinessError as exc:
print(exc.response.code)
print(exc.response.message)
raise_on_business_error=True を指定すると、APIがエラーを返したときに BusinessError(ビジネスエラー例外)が発生します。try/except ブロックでまとめてエラー処理ができるため、大規模なデータ収集プログラムで特に便利です。デフォルトでは例外を投げない設計なので、エラーが出ても処理を続けたいバッチ処理(大量のデータを一括で処理する仕組み)にも対応しています。
動かしてみた
リポジトリ(ソースコードの置き場)の構成を確認したところ、SDKのコアとなる justoneapi/ ディレクトリに client.py・_resource.py・_response.py・_transport.py・_exceptions.py・config.py・log.py がきちんと整理されており、モジュール(機能ごとに分割されたプログラムの単位)構造が完成していることを確認しました。
pip install justoneapi によるインストールはエラーなく正常に完了しており、パッケージとしてすぐに使える状態です。tests/ ディレクトリには test_generated_surface.py・test_runtime.py・test_integration_smoke.py・test_codegen.py の4つのテストファイルが用意されており、品質管理の仕組みがしっかり整備されていることがわかります。
また openapi/ ディレクトリには public-api.json・sdk_overrides.yaml・public-api.normalized.json が存在し、OpenAPI仕様(REST APIの標準的な定義フォーマット)からSDKコードを自動生成するツール(tools/sdk_codegen.py・scripts/generate_sdk.py)も備わっています。プラットフォーム側のAPIが変更されたときにSDKを素早く更新できる設計で、長期的なメンテナンス性の高さを感じさせます。
デモについて
Just One API は有料の商用サービスであり、すべてのAPI呼び出しには有効なAPIトークンが必要です。そのため、トークンなしでブラウザ上からデータ取得を体験できるオープンなデモは提供されていません。実際に動かすには、公式サイトでアカウントを作成してAPIトークンを発行し、ローカル環境(自分のパソコン)で pip install justoneapi を実行してからお試しください。
実践: はじめの一歩でやること
インストール後は、以下のパターンをそのまま使いまわすだけで複数プラットフォームに対応できます。
from justoneapi import JustOneAPIClient
client = JustOneAPIClient(token="YOUR_API_TOKEN")
# 各プラットフォームはサブクライアントとしてアクセス
# response = client.douyin.search_video_v4(keyword="AI")
# response = client.xiaohongshu.search_notes(keyword="旅行")
# response = client.youtube.search_video(keyword="python tutorial")
# 統一レスポンス型で一貫したエラーハンドリング
# if response.success:
# print(response.data)
# else:
# print(f"Error {response.code}: {response.message}")
すぐ始めるためのポイントをまとめます。
- トークンは環境変数に入れておく: コードにトークンを直書きすると、誰かに見られたときに危険です。
os.environ["JUSTONEAPI_TOKEN"]のように環境変数(OSに登録できる設定値)から読み込む習慣をつけましょう。 - まず
response.successを確認する: どのプラットフォームでもif response.success:のチェックを先に書くと、エラー時の予期しない動作を防げます。 - サブクライアントの名前を確認する:
client.douyin・client.xiaohongshu・client.youtubeのように、プラットフォーム名がそのままメソッドになっています。どのサブクライアントが使えるかはリポジトリのjustoneapi/内を見るとすぐわかります。 - バッチ処理には例外なしモード(デフォルト)が便利: 大量のキーワードを順に検索するような用途では、デフォルト設定(例外を投げない)のまま
response.successで判定すると、1件のエラーで全体が止まらずに済みます。 - エラーを集中管理したいなら
raise_on_business_error=True: Webアプリや小規模スクリプトで「エラーはまとめて補足したい」場合はこちらが便利です。
活用アイデア
-
SNSトレンド監視ダッシュボード: Douyin・Xiaohongshu・Weibo のトレンドキーワードを定期的に収集し、Python の可視化ライブラリ(matplotlib や Streamlit など)でグラフ表示するパイプライン(データの流れを自動化する仕組み)を構築できます。複数プラットフォームのデータが同じフォーマットで揃うため、横断比較レポートの作成が格段に楽になります。
-
越境EC価格モニタリングシステム: Amazon・Taobao・JD・Temu・Shopee の同じ商品の価格を定期取得し、価格が下がったときにアラートを出す仕組みやダッシュボードを実装するのに活用できます。OpenAPI仕様ベースでSDKが生成されているため、新しいエンドポイント(APIのアクセス口)が追加されたときも比較的追いやすい設計です。
-
インフルエンサー分析ツール: Douyin Xingtu(星図・抖音のインフルエンサー向け公式プラットフォーム)や Xiaohongshu Pugongying(蒲公英・小紅書のブランドコラボ基盤)のデータを取得し、フォロワー数やエンゲージメント率(投稿に対する反応の割合)を分析するレポートツールを構築できます。
-
競合コンテンツリサーチの自動化: YouTube や TikTok のキーワード検索結果を定期収集し、競合チャンネルの投稿頻度・再生数の傾向を自動集計するツールとして使えます。マーケティング担当者が手作業で調べていた情報収集を、プログラムに任せられます。
-
学術・研究用データセット構築: SNSや動画プラットフォームの投稿データを収集して、自然言語処理(テキストを機械で分析する技術)や感情分析の学習用データセットを作る研究用途にも適しています。複数プラットフォームのデータを一元管理できるため、研究の再現性も保ちやすくなります。
-
個人開発のポートフォリオ: 「気になるキーワードが今どのSNSで話題か」を一覧表示する個人Webアプリを作るのに使えます。SDK が認証や通信を担当してくれるため、表示ロジックの実装に集中できます。
用語とポイント解説
ApiResponse(エーピーアイレスポンス)
SDKがすべてのAPIメソッドの戻り値として使う、統一されたレスポンス型(返り値の形式)です。かんたんに言うと「どのプラットフォームを呼んでも同じ形で結果が返ってくる入れ物」です。success・code・message・data・raw_json の5つのフィールドを持っており、if response.success: の1行で成否を判定できます。
BusinessError(ビジネスエラー)
raise_on_business_error=True の設定時に、APIのビジネスコードが0以外(エラー状態)のときに発生する例外クラスです。かんたんに言うと「APIがエラーを返したとき、プログラムに知らせるための合図」です。exc.response で ApiResponse オブジェクトを参照でき、エラー内容を確認できます。
OpenAPI Codegen(オープンAPIコード自動生成)
openapi/ ディレクトリに置かれたスキーマ(APIの仕様書)から、tools/sdk_codegen.py を使ってSDKのコードを自動的に生成する仕組みです。かんたんに言うと「仕様書を書き換えれば、対応するコードも自動で更新される便利な工場」です。プラットフォーム側のAPI変更にも素早く追従できます。
サブクライアント
client.douyin・client.xiaohongshu のように、メインの JustOneAPIClient に紐づく各プラットフォーム専用のアクセス口です。かんたんに言うと「大きなリモコンの中にある、チャンネルごとのボタンのまとまり」です。プラットフォームを切り替えるときはドット(.)で名前を変えるだけで済みます。
Douyin Xingtu(抖音星図) Douyin(抖音・中国版TikTok)が公式に提供するインフルエンサーマーケティングプラットフォームです。かんたんに言うと「ブランドとインフルエンサーをつなぐ公式の仲介サービス」で、このSDKはその専門APIにも対応しています。
Xiaohongshu Pugongying(小紅書蒲公英) Xiaohongshu(小紅書・中国の人気SNS)が提供するブランドコラボレーション基盤です。かんたんに言うと「小紅書版のインフルエンサーマーケティング公式窓口」です。このSDKを通じてデータ取得が可能です。
バッチ処理(一括処理) 大量のデータや処理をまとめて実行する手法です。かんたんに言うと「100件のキーワードを夜中に自動で順番に検索して結果を保存しておく」ような使い方です。SDKのデフォルト設定(例外なしモード)はバッチ処理に特に向いており、1件のエラーで処理全体が止まりません。
環境変数(かんきょうへんすう)
OSに登録しておける設定値のことです。かんたんに言うと「コードの外に安全に保管できるメモ帳」のようなもので、APIトークンをコード内に直書きせず os.environ["キー名"] で読み出す方法が推奨されます。トークンの漏洩リスクを下げられます。
pip(ピップ)
Pythonのライブラリを自動でダウンロード・インストールするための公式ツールです。かんたんに言うと「Pythonのアプリストア」です。pip install パッケージ名 の形式で使い、必要なファイルをネット経由でそろえてくれます。
ぜひSNSトレンドの横断分析やECプラットフォームの価格モニタリングなどに活用してみてはいかがでしょうか。