30以上のSNS・ECプラットフォームを1つのPython SDKで横断取得!Just One API 公式クライアント

タグ Python SDKJust One APISNSデータ取得ECプラットフォームDouyinTikTokデータエンジニアリングマーケティングリサーチcolumnコラムlinuxLinuxwindowsWindowsmacGitHubオープンソースjustoneapijustoneapi-python

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.douyinclient.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.pyconfig.pylog.py がきちんと整理されており、モジュール(機能ごとに分割されたプログラムの単位)構造が完成していることを確認しました。

pip install justoneapi によるインストールはエラーなく正常に完了しており、パッケージとしてすぐに使える状態です。tests/ ディレクトリには test_generated_surface.pytest_runtime.pytest_integration_smoke.pytest_codegen.py の4つのテストファイルが用意されており、品質管理の仕組みがしっかり整備されていることがわかります。

また openapi/ ディレクトリには public-api.jsonsdk_overrides.yamlpublic-api.normalized.json が存在し、OpenAPI仕様(REST APIの標準的な定義フォーマット)からSDKコードを自動生成するツール(tools/sdk_codegen.pyscripts/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.douyinclient.xiaohongshuclient.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メソッドの戻り値として使う、統一されたレスポンス型(返り値の形式)です。かんたんに言うと「どのプラットフォームを呼んでも同じ形で結果が返ってくる入れ物」です。successcodemessagedataraw_json の5つのフィールドを持っており、if response.success: の1行で成否を判定できます。

BusinessError(ビジネスエラー) raise_on_business_error=True の設定時に、APIのビジネスコードが0以外(エラー状態)のときに発生する例外クラスです。かんたんに言うと「APIがエラーを返したとき、プログラムに知らせるための合図」です。exc.responseApiResponse オブジェクトを参照でき、エラー内容を確認できます。

OpenAPI Codegen(オープンAPIコード自動生成) openapi/ ディレクトリに置かれたスキーマ(APIの仕様書)から、tools/sdk_codegen.py を使ってSDKのコードを自動的に生成する仕組みです。かんたんに言うと「仕様書を書き換えれば、対応するコードも自動で更新される便利な工場」です。プラットフォーム側のAPI変更にも素早く追従できます。

サブクライアント client.douyinclient.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プラットフォームの価格モニタリングなどに活用してみてはいかがでしょうか。