ロシア最大の電子商取引プラットフォームの 1 つである Ozon は、販売者がプロモーション分析を含むビジネスのさまざまな側面を自動化できる API を提供しています。Ozon の API を理解して活用することで、マーケティング活動を大幅に強化し、業務を効率化できます。この記事では、Ozon の API を使用してプロモーション分析を自動化するプロセスについて説明します。
Ozon APIとは何ですか?
Ozon API は、Ozon の内部広告システムへのプログラムによるアクセスを提供する強力なツールです。この API を使用すると、ユーザーは詳細な統計情報を取得したり、プロモーション タスクを自動化したりできます。他の多くの API とは異なり、Ozon の API は非同期であり、アーカイブ ファイル形式でデータを返すため、独特で、処理が少し複雑です。
環境のセットアップ
コードに進む前に、環境を設定することが重要です。このプロセスには、いくつかの重要なライブラリが必要です。 requests
, python-dotenv
そして pandas
仮想環境を設定すると、依存関係を管理し、プロジェクトを整理するのに役立ちます。
API 認証情報の取得
Ozon の API とやり取りするには、Ozon の個人アカウントからクライアント ID とクライアント シークレットを取得する必要があります。これらの資格情報は、以降のすべての API リクエストで使用されるアクセス トークンを生成するために不可欠です。
import requests
import os
from dotenv import load_dotenv
load_dotenv()
CLIENT_ID = os.getenv('CLIENT_ID')
CLIENT_SECRET = os.getenv('CLIENT_SECRET')
アクセストークンの生成
API を使用する最初のステップは、アクセス トークンを生成することです。このトークンは 30 分間有効で、すべての API リクエストの認証に使用する必要があります。
url = "https://api.ozon.ru/sell/v1/oauth/token"
headers = {
"Content-Type": "application/json",
"Accept": "application/json"
}
payload = {
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
"grant_type": "client_credentials"
}
response = requests.post(url, headers=headers, json=payload)
access_token = response.json().get('access_token')
キャンペーンデータの取得
アクセス トークンを取得したら、API からデータの取得を開始できます。たとえば、広告キャンペーンのリストを取得するには、次のコードを使用できます。
url = "https://api.ozon.ru/performance/v1/campaigns"
headers = {
"Authorization": f"Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json"
}
response = requests.get(url, headers=headers)
campaigns = response.json().get('campaigns', [])
プロモーション統計のリクエスト
プロモーションの統計情報を取得するには、日付範囲とキャンペーン ID を指定した POST リクエストを送信する必要があります。API はレポート ID を返します。このレポート ID を使用してレポートのステータスを確認し、準備ができたらダウンロードできます。
report_payload = {
"campaigns": [campaign_id_list],
"date_from": "2024-01-01",
"date_to": "2024-01-31"
}
report_response = requests.post(report_url, headers=headers, json=report_payload)
report_id = report_response.json().get('report_id')
レポートのステータスの確認とダウンロード
レポートをリクエストした後、ダウンロードできる状態になるまで定期的にステータスを確認してください。キャンペーンが複数ある場合、レポートは通常 ZIP ファイルとして提供されます。
status_url = f"https://api.ozon.ru/performance/v1/report/status?report_id={report_id}"
status_response = requests.get(status_url, headers=headers)
if status_response.json().get('status') == 'done':
download_url = f"https://api.ozon.ru/performance/v1/report/download?report_id={report_id}"
download_response = requests.get(download_url, headers=headers)
with open('report.zip', 'wb') as f:
f.write(download_response.content)
データの抽出と処理
ZIP ファイルをダウンロードしたら、その内容を抽出し、CSV ファイルを処理してデータを分析します。
import zipfile
import pandas as pd
with zipfile.ZipFile('report.zip', 'r') as zip_ref:
zip_ref.extractall('extracted_reports')
csv_files = [f for f in os.listdir('extracted_reports') if f.endswith('.csv')]
data_frames = [pd.read_csv(f'extracted_reports/{file}', delimiter=';') for file in csv_files]
combined_df = pd.concat(data_frames, ignore_index=True)
combined_df.to_csv('final_report.csv', index=False)
例表: プロモーション統計
キャンペーンID | 日付 | 感想 | クリック数 | 過ごす |
---|---|---|---|---|
12345 | 2024-01-01 | 1000 | 50 | $20.00 |
12345 | 2024-01-02 | 1500 | 75 | $30.00 |
67890 | 2024-01-01 | 2000 | 100 | $40.00 |
67890 | 2024-01-02 | 2500 | 125 | $50.00 |
結論
Ozon の API を使用してプロモーション分析を自動化すると、マーケティングの効率が大幅に向上し、キャンペーンに関するより深い洞察が得られます。この記事で概説されている手順に従うことで、Ozon の API の力を活用してプロモーション活動を効率化できます。レポートのステータスを定期的に確認し、抽出したデータを慎重に処理して、正確な分析を確実に行うことを忘れないでください。自動化を楽しんでください。
コメント (0)
まだコメントはありません。あなたが最初のコメントを投稿できます!