Ozon, một trong những nền tảng thương mại điện tử lớn nhất ở Nga, cung cấp API cho phép người bán tự động hóa các khía cạnh khác nhau trong hoạt động kinh doanh của họ, bao gồm cả phân tích khuyến mãi. Việc hiểu và sử dụng API của Ozon có thể nâng cao đáng kể nỗ lực tiếp thị và hợp lý hóa hoạt động của bạn. Bài viết này sẽ hướng dẫn bạn quy trình tự động hóa phân tích quảng cáo bằng API của Ozon.
API Ozon là gì?
API Ozon là một công cụ mạnh mẽ cung cấp quyền truy cập theo chương trình vào hệ thống quảng cáo nội bộ của Ozon. API này cho phép người dùng truy xuất số liệu thống kê chi tiết và tự động hóa các tác vụ quảng cáo. Không giống như nhiều API khác, API của Ozon không đồng bộ và trả về dữ liệu ở định dạng tệp lưu trữ, khiến việc xử lý trở nên độc đáo và phức tạp hơn một chút.
Thiết lập môi trường của bạn
Trước khi đi sâu vào mã, điều quan trọng là phải thiết lập môi trường của bạn. Bạn sẽ cần một vài thư viện chính cho quá trình này: requests
, python-dotenv
, Và pandas
. Thiết lập môi trường ảo có thể giúp quản lý các phần phụ thuộc và giữ cho dự án của bạn được tổ chức.
Lấy thông tin xác thực API
Để tương tác với API của Ozon, bạn cần lấy ID khách hàng và Bí mật khách hàng từ tài khoản cá nhân của bạn trên Ozon. Những thông tin xác thực này rất cần thiết để tạo mã thông báo truy cập, mã này sẽ được sử dụng cho tất cả các yêu cầu API tiếp theo.
import requests
import os
from dotenv import load_dotenv
load_dotenv()
CLIENT_ID = os.getenv('CLIENT_ID')
CLIENT_SECRET = os.getenv('CLIENT_SECRET')
Tạo mã thông báo truy cập
Bước đầu tiên trong việc sử dụng API là tạo mã thông báo truy cập. Mã thông báo này có hiệu lực trong 30 phút và phải được sử dụng để xác thực tất cả các yêu cầu 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')
Đang tìm nạp dữ liệu chiến dịch
Sau khi có mã thông báo truy cập, bạn có thể bắt đầu tìm nạp dữ liệu từ API. Ví dụ: để có danh sách các chiến dịch quảng cáo của bạn, bạn có thể sử dụng mã sau:
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', [])
Yêu cầu thống kê khuyến mãi
Để có được số liệu thống kê về khuyến mại, bạn cần gửi yêu cầu POST kèm theo phạm vi ngày và ID chiến dịch. API sẽ trả về ID báo cáo mà bạn có thể sử dụng để kiểm tra trạng thái báo cáo và tải xuống khi sẵn sàng.
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')
Kiểm tra trạng thái báo cáo và tải xuống
Sau khi yêu cầu báo cáo, hãy kiểm tra trạng thái báo cáo định kỳ cho đến khi sẵn sàng tải xuống. Báo cáo thường có sẵn dưới dạng tệp ZIP nếu có nhiều chiến dịch.
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)
Trích xuất và xử lý dữ liệu
Sau khi tệp ZIP được tải xuống, hãy trích xuất nội dung của tệp và xử lý tệp CSV để phân tích dữ liệu.
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)
Bảng ví dụ: Thống kê khuyến mãi
ID chiến dịch | Ngày | Số lần hiển thị | Số nhấp chuột | Tiêu |
---|---|---|---|---|
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 |
Phần kết luận
Tự động hóa phân tích quảng cáo bằng API của Ozon có thể nâng cao đáng kể hiệu quả tiếp thị của bạn và cung cấp thông tin chi tiết sâu hơn về chiến dịch của bạn. Bằng cách làm theo các bước được nêu trong bài viết này, bạn có thể tận dụng sức mạnh của API của Ozon để hợp lý hóa các nỗ lực quảng cáo của mình. Đừng quên thường xuyên kiểm tra trạng thái báo cáo của bạn và xử lý dữ liệu được trích xuất một cách cẩn thận để đảm bảo phân tích chính xác. Chúc bạn tự động hóa vui vẻ!
Bình luận (0)
Chưa có bình luận nào ở đây, bạn có thể là người đầu tiên!