Ozon, een van de grootste e-commerceplatforms in Rusland, biedt een API waarmee verkopers verschillende aspecten van hun bedrijf kunnen automatiseren, inclusief promotieanalyses. Het begrijpen en gebruiken van de API van Ozon kan uw marketinginspanningen aanzienlijk verbeteren en uw activiteiten stroomlijnen. Dit artikel begeleidt u bij het automatiseren van promotieanalyses met behulp van de API van Ozon.
Wat is Ozon-API?
De Ozon API is een krachtige tool die programmatische toegang biedt tot het interne advertentiesysteem van Ozon. Met deze API kunnen gebruikers gedetailleerde statistieken ophalen en promotietaken automatiseren. In tegenstelling tot veel andere API's is de API van Ozon asynchroon en retourneert gegevens in een gearchiveerd bestandsformaat, waardoor het uniek en iets complexer is om te verwerken.
Uw omgeving instellen
Voordat u in de code duikt, is het van cruciaal belang dat u uw omgeving instelt. Voor dit proces heeft u een aantal belangrijke bibliotheken nodig: requests
, python-dotenv
en pandas
. Het opzetten van een virtuele omgeving kan helpen bij het beheren van afhankelijkheden en het georganiseerd houden van uw project.
API-referenties verkrijgen
Om te kunnen communiceren met de API van Ozon, moet u de Klant-ID en het Klantgeheim verkrijgen van uw persoonlijke account op Ozon. Deze inloggegevens zijn essentieel voor het genereren van een toegangstoken, dat wordt gebruikt voor alle volgende API-verzoeken.
import requests
import os
from dotenv import load_dotenv
load_dotenv()
CLIENT_ID = os.getenv('CLIENT_ID')
CLIENT_SECRET = os.getenv('CLIENT_SECRET')
Een toegangstoken genereren
De eerste stap bij het gebruik van de API is het genereren van een toegangstoken. Dit token is 30 minuten geldig en moet worden gebruikt om alle API-verzoeken te authenticeren.
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')
Campagnegegevens ophalen
Zodra u het toegangstoken heeft, kunt u beginnen met het ophalen van gegevens uit de API. Als u bijvoorbeeld een lijst met uw advertentiecampagnes wilt krijgen, kunt u de volgende code gebruiken:
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', [])
Promotiestatistieken opvragen
Om promotiestatistieken te verkrijgen, moet u een POST-verzoek verzenden met het datumbereik en de campagne-ID's. De API retourneert een rapport-ID, die u kunt gebruiken om de rapportstatus te controleren en deze te downloaden wanneer u klaar bent.
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')
Rapportstatus controleren en downloaden
Nadat u het rapport heeft aangevraagd, controleert u regelmatig de status ervan totdat het klaar is om te downloaden. Als er meerdere campagnes zijn, is het rapport meestal beschikbaar als ZIP-bestand.
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)
Gegevens extraheren en verwerken
Zodra het ZIP-bestand is gedownload, extraheert u de inhoud ervan en verwerkt u de CSV-bestanden om de gegevens te analyseren.
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)
Voorbeeldtabel: Promotiestatistieken
Campagne-ID | Datum | Indrukken | Klikken | Uitgeven |
---|---|---|---|---|
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 |
Conclusie
Het automatiseren van promotieanalyses met behulp van de API van Ozon kan uw marketingefficiëntie aanzienlijk verbeteren en diepere inzichten in uw campagnes bieden. Door de stappen in dit artikel te volgen, kunt u de kracht van de API van Ozon benutten om uw promotie-inspanningen te stroomlijnen. Vergeet niet regelmatig de status van uw rapporten te controleren en zorgvuldig om te gaan met de opgehaalde gegevens om een nauwkeurige analyse te garanderen. Veel automatiseringsplezier!
Opmerkingen (0)
Er zijn hier nog geen reacties, jij kunt de eerste zijn!