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)
这里还没有评论,你可以成为第一个评论者!