러시아 최대 전자상거래 플랫폼 중 하나인 Ozon은 판매자가 프로모션 분석을 포함하여 비즈니스의 다양한 측면을 자동화할 수 있는 API를 제공합니다. Ozon의 API를 이해하고 활용하면 마케팅 활동을 크게 향상시키고 운영을 간소화할 수 있습니다. 이 문서에서는 Ozon의 API를 사용하여 프로모션 분석을 자동화하는 과정을 안내합니다.
오존 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를 반환합니다.
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)
여기에는 아직 댓글이 없습니다. 첫 번째 댓글이 되실 수 있습니다!