🛒 Shopify API Connector

Automatische Metafield-Verwaltung für Shopify-Produkte

Technologie

  • Python 3.11
  • Shopify Admin API
  • MySQL (PyMySQL)
  • REST API (requests)

Verzeichnis

D:\arbeit\git\shopifyapi

Hauptdateien

  • configuration.py
  • update_vid.py
  • main.py
  • sqltest.py

📋 Projektbeschreibung

Der Shopify API Connector ist ein Python-basiertes Automatisierungstool zur Verwaltung von Metafields in Shopify-Produkten. Das System verbindet eine lokale MySQL-Datenbank mit der Shopify Admin API, um automatisch YouTube-Video-URLs als Produkt-Metafields zu hinterlegen.

Hauptfunktionen

  • Produkt-Lookup: Konvertiert Produkt-Handles in Shopify-Produkt-IDs
  • Metafield-Verwaltung: Erstellt/aktualisiert URL-Metafields für Produkte
  • Datenbank-Integration: Liest Videodaten aus MySQL-Tabelle
  • Rate-Limiting: Integrierte Pausen zwischen API-Aufrufen (2 Sekunden)
  • Handle-Generierung: Dynamische Ersetzung von Platzhaltern (z.B. Namen) in Handles

Architektur

Das Projekt besteht aus vier Kernkomponenten:

  • configuration.py: Zentrale Konfiguration für Datenbank- und Shopify-Zugangsdaten
  • update_vid.py: Hauptskript zur massenweisen Metafield-Aktualisierung
  • main.py: Einzelnes Testskript für manuelle Metafield-Erstellung
  • sqltest.py: Datenbank-Verbindungstest

Workflow

  1. Verbindung zur MySQL-Datenbank herstellen
  2. Alle Einträge aus der Videos-Tabelle abrufen (ID, Name, VidID)
  3. Für jeden Eintrag: Produkt-Handle generieren (Platzhalter ersetzen)
  4. Produkt-ID via Shopify API abfragen
  5. YouTube-URL als Metafield zum Produkt hinzufügen
  6. 2 Sekunden Pause zwischen API-Aufrufen

API-Endpunkte

  • GET /admin/api/2024-01/products.json?handle={handle} - Produkt-Lookup
  • POST /admin/api/2024-01/products/{id}/metafields.json - Metafield erstellen

Verwendete Libraries

  • requests - HTTP-Anfragen an Shopify API
  • pymysql - MySQL-Datenbankverbindung
  • time - Rate-Limiting mit sleep()