Artikel

Amazon-Rank-Updater: Ein Skript zur Überwachung von Amazon-Produktplatzierungen

Amazon

In diesem Artikel stelle ich mein neues Projekt vor: ein Amazon-Rank-Updater-Skript, das entwickelt wurde, um die Platzierungen von Produkten auf Amazon zu überwachen und in einer Datenbank zu speichern. Dieses Skript eignet sich besonders für Verkäufer oder Datenanalysten, die kontinuierlich das Ranking ihrer Produkte beobachten möchten, um frühzeitig auf Veränderungen reagieren zu können. Das Skript ist so konzipiert, dass es endlos läuft und kann problemlos als Linux-Dienst konfiguriert werden.


Projektübersicht

Der Amazon-Rank-Updater ruft kontinuierlich die aktuellen Platzierungen der Produkte basierend auf deren ASINs (Amazon Standard Identification Number) von der Amazon-API ab und aktualisiert eine lokale Datenbank. Mit dieser Lösung lässt sich jederzeit nachvollziehen, wie sich die Rangfolge der Produkte im Laufe der Zeit verändert. Darüber hinaus ist das Skript so flexibel aufgebaut, dass es auch als Hintergrunddienst (Service) auf einem Linux-Server laufen kann.


Voraussetzungen

Um das Projekt zu verwenden, werden folgende Voraussetzungen benötigt:

  1. Amazon API Zugangsdaten: Diese beinhalten einen Access Key, einen Secret Key, ein Associate Tag und die API-Region.
  2. MySQL-Datenbank: Eine MySQL-Datenbank zur Speicherung der abgerufenen Rangdaten.
  3. PHP und MySQL-Erweiterung: PHP ist erforderlich, um das Skript auszuführen, und MySQL für die Datenbankanbindung.

Tabellenstruktur und Konfiguration

Für dieses Projekt muss eine Tabelle in der MySQL-Datenbank erstellt werden, die den Produkttitel und den Rang des Produkts speichert.

Tabelle products

SpaltennameDatentypBeschreibung
idINTEindeutige ID des Eintrags, automatisch erhöht
asinVARCHAR(10)Die ASIN des Produkts
titleVARCHAR(255)Der Titel des Produkts
dateDATEDas Datum des Eintrags
rankINTDie aktuelle Platzierung des Produkts

Diese Tabelle speichert alle relevanten Informationen zum Produkt. Der Amazon-Rank-Updater liest die ASIN-Werte aus der Quelltabelle und fügt den Rang in die products-Tabelle ein, wobei jeder Eintrag das Datum enthält, an dem die Platzierung erfasst wurde.

Konfiguration in config.php

In der Konfigurationsdatei config.php werden die Zugangsdaten und die Tabellenkonstanten festgelegt:

define('AWS_ACCESS_KEY', 'your-access-key');
define('AWS_SECRET_KEY', 'your-secret-key');
define('AWS_ASSOCIATE_TAG', 'your-associate-tag');
define('AWS_REGION', 'your-region');
define('DB_HOST', 'your-database-host');
define('DB_NAME', 'your-database-name');
define('DB_USER', 'your-database-user');
define('DB_PASS', 'your-database-password');
define('SOURCE_TABLE', 'source_table');  // Quelltabelle mit ASINs
define('TARGET_TABLE', 'products');      // Zieltabelle für Ränge
define('SOURCE_ASIN_COLUMN', 'asin');    // ASIN-Spalte in der Quelltabelle

Installation als Linux-Dienst

Das Skript kann auf einem Linux-Server als Service konfiguriert werden, sodass es kontinuierlich läuft und bei einem Neustart des Servers automatisch gestartet wird. So lässt sich der Updater als Linux-Dienst einrichten:

  1. Erstelle eine Dienstdatei unter /etc/systemd/system/amazon-rank-updater.service:
   [Unit]
   Description=Amazon Rank Updater Service
   After=network.target

   [Service]
   ExecStart=/path/to/php /path/to/run.php
   Restart=always
   User=dein_benutzername
   Group=deine_benutzergruppe

   [Install]
   WantedBy=multi-user.target
  1. Starte und aktiviere den Dienst:
   sudo systemctl enable amazon-rank-updater.service
   sudo systemctl start amazon-rank-updater.service

Mit dieser Konfiguration läuft das Skript endlos im Hintergrund und kann jederzeit auf die Amazon-API zugreifen, um Produktplatzierungen abzurufen.


E-Mail-Benachrichtigungen einrichten

Da das Skript endlos läuft, empfiehlt es sich, E-Mail-Benachrichtigungen für Fehlerfälle einzurichten. Durch eine E-Mail-Benachrichtigung kann rechtzeitig auf Probleme reagiert werden, ohne regelmäßig den Service manuell überprüfen zu müssen. Zum Einrichten von E-Mail-Benachrichtigungen kann ein SMTP-Server oder ein externer E-Mail-Dienst verwendet werden, der auf dem Server konfiguriert ist.


Verwendung

Nach der Konfiguration kann das Skript manuell gestartet werden:

php run.php --live    # Für den Live-Modus
php run.php --debug   # Für den Debug-Modus (mit Testdaten)

Weitere Optionen können mit dem folgenden Befehl angezeigt werden:

php run.php --help

Fazit

Der Amazon-Rank-Updater ist ein nützliches Tool für jeden, der regelmäßig die Produktplatzierungen auf Amazon überwachen möchte. Durch die kontinuierliche Ausführung und die Möglichkeit zur Installation als Linux-Dienst lässt sich das Skript optimal für Langzeitanalysen einsetzen. Die automatische Benachrichtigung bei Fehlern gewährleistet außerdem, dass Probleme schnell erkannt und behoben werden können.

0 Kommentare