Amazon-Preis-Tracker mit Python

0

Bevor ich das geplante Skript im nächsten Python-Tutorial teile, können Sie lernen, wie Sie Produktseiten mithilfe von Asin besuchen, Preisdaten finden, abrufen und in Google Sheets hochladen

Google Sheets ImportXML kann ähnliche Aufgaben wie ein Python-Produktpreis-Tracker erledigen. Allerdings erlaubt jedes Google Sheet nur das Ausführen von 50 ImportXML-Zellen gleichzeitig. Ehrlich gesagt reicht das nicht aus, wenn Sie unterschiedliche Dimensionen von Daten abrufen möchten. Trotzdem ist es viel einfacher und weniger komplex. Wenn Sie interessiert sind, schauen Sie sich bitte meinen Artikel über Google Sheets ImportXML an.

In diesem Kapitel werde ich Ihnen zeigen, wie Sie mit Python einen umfassenderen Amazon-Produktpreis-Tracker erstellen können. Dieser Tracker kann erweitert werden, um die Daten automatisch zu aktualisieren, ohne manuelle Arbeit zu leisten. Bevor ich das geplante Skript im nächsten Python-Tutorial teile, können Sie lernen, wie Sie Produktseiten mithilfe von Asin besuchen, Preisdaten finden, abrufen und in Google Sheets hochladen.

Inhaltsverzeichnis: Amazon-Preis-Tracker mit Python

Installieren Sie das gspread- und das Oauth2Client-Modul

Gspread ist eine super einfache Google Sheets Python API. Sie können weiterhin die Google Sheets API verwenden, wie ich zuvor geteilt habe, um neue Tabellen und Daten zu lesen und zu schreiben. In diesem Artikel würde ich gspread verwenden, und im Wesentlichen ist die Methodik ähnlich. Aber die Methoden und Logik sind einfach.

Zunächst einmal müssen wir gspread in Ihrem Macbook-Terminal installieren.

Pip3 Install gspread

Dann müssen wir das aktualisierte OauthClient-Modul installieren. Dies dient dazu, dass Sie die Google Sheet API verbinden und die Servicekonto-JSON-Datei aktivieren können.

Pip3 Install --upgrade oauth2client

Drittens müssen wir ein Google-API-Projekt und einen Service-Account erstellen. Weitere Details finden Sie in dem anderen Artikel, den ich zuvor geteilt habe.

Die Definition des Google Sheet API-Umfangs ist notwendig. Da wir uns auch mit Google Drive verbinden müssen, gibt es 3 Bereiche für die Erstellung eines Amazon-Preistrackers. Unten erstelle ich eine Variable namens scope.

scope = ['https://www.googleapis.com/auth/spreadsheets',

'https://www.googleapis.com/auth/drive.file',

'https://www.googleapis.com/auth/drive']

Dann laden Sie die JSON-Datei herunter, nachdem Sie einen Service-Account in Google API erstellt haben. Wir würden eine Variable namens creds erstellen und den JSON-Dateinamen im unten stehenden Code hinzufügen.

creds = ServiceAccountCredentials.from_json_keyfile_name('ajljou4098erqwie08234.json',scope)

Zuletzt wird gspread zum Lesen und Aktualisieren der Google Sheets verwendet. Wir können also eine Variable namens client erstellen und creds diesem Autorisieren.

client = gspread.authorize(creds)

Abrufen und Lesen des gescrapten Amazon-Produkt-ASINs

In Python Tutorial 16 haben wir eine Vielzahl von Produktinformationen gescraped, einschließlich ASIN. Zusammen mit dem Amazon-Produkt-Scraper können wir also weiterhin dieselbe Google-Sheet-Datei verwenden.

Zunächst müssen wir die Google-Sheet-Datei öffnen, in der wir die Open-Methode verwenden.

sh = client.open('AmazonPriceTracker')

Dann müssen wir das Google-Sheet-Tab auswählen, das die Produkt-ASIN speichert, indem wir die Methode get_worksheet verwenden. Hier beginnt der Wert bei 0. 0 repräsentiert das 1. Tab und dann 1, 2 usw.

worksheet = sh.get_worksheet(2)

Je nachdem, in welcher Spalte oder Zeile wir die ASIN-Daten speichern, können wir die Methoden von entweder col_value oder row_value nutzen. Für weitere von gspread gegebene Methoden, bitte schauen Sie sich die Dokumentation an

values_list = worksheet.col_values(2)

Besuchen Sie die Produktseite und holen Sie sich die Preisdaten

Jetzt hat value_list die gescrapte Produkt-ASIN. Der nächste Schritt besteht darin, eine Schleife zu erstellen und die Produktseite zu besuchen, um die Preisdaten abzurufen. Im Preis-Element gibt es einige Stellen, an denen der Produkt-Preis angezeigt wird. Es hängt von der Aktualisierung der Amazon-Seite ab. Es gibt also 4 Orte, die der Listenpreis, der aktuelle Preis, der Buybox-Preis und der neue Buybox-Preis sind. Hier wird der Listenpreis für das Beispiel angezeigt.

python tutorial

Nochmals, wie im vorherigen Python-Tutorial erwähnt, verbietet Amazon die Anfragen und BeautifulSoup besucht die Seiten direkt. Daher müssen wir auf Selenium zurückgreifen. Für weitere Details lesen Sie bitte das vorherige Python-Tutorial.

Chapter 16 – Amazon Product Scraper Using Selenium, BeautifulSoup, and Easy2Digital APIs

Zunächst müssen wir eine Schleife erstellen und Selenium, BeautifulSoup verwenden, um die Preis-HTML-Informationen zu erhalten.

for asin in values_list:
      competitor = driver.get(f'https://www.amazon.com/dp/{asin}')
      soup = BeautifulSoup(driver.page_source, 'html.parser')
      time.sleep(5)

Dann müssen wir unter dem Parent-Tree der asin-Schleife den Pfad der Preisdaten finden und auch hierfür eine Schleife erstellen. Wie Sie sehen können, befindet sich das Listenpreis-Element im span und in der Klasse priceBlockStrikePriceString a-text-strike. Schreiben wir also die Codes wie unten aufgelistet

for price in soup:

     try:
         ListPrice = price.find('span','priceBlockStrikePriceString a-text-strike').text.replace('$','')
     except Exception as e:
         ListPrice = '0'

Erinnern Sie mich nur daran, dass es in try und except besser ist, none in eine Zahl wie 0 zu setzen. Dies erleichtert es Ihnen, später im Preis-Tracker den niedrigsten Preis zu finden.

Fetched Data hochladen und zurücksetzen, die auf Google Sheet aktualisiert wurde

Zunächst können wir einen leeren Wert der Variablen amazonSERP erstellen. Dies ist zum Anhängen der Informationen später.

Wie Sie sehen können, sammeln wir 4 Preisdaten und können sie benennen und in der Variablen element_info gruppieren. In dem Pandas-Modul können wir diese Informationen durch die Verwendung der Methoden append() und dataframe() in einem organisierten Format anfügen und rahmen.

element_info = {
"ListPrice": ListPrice,
"PagePrice": priceA,
"BuyboxPrice": priceBuybox,
"NewBuyboxPrice": NewpriceBuybox
}

amazonSERP.append(element_info)

df = pd.DataFrame(amazonSERP)

Für Updates auf den Google Sheets hat gspread eine Methode von value_update, die drei Teile enthält, die Sie in value einstecken können. Es sind der Blattstandort, die Parameter und der Körper für den Wert, der aktualisiert werden soll.

Da gspread ein zugewiesenes Format erfordert, müssen wir die aktuellen Aufträge und Formate zurücksetzen, indem wir die Methode reset_index() und values.tolist() verwenden.

value_list2 = sh.values_update('ProductPagePricingTracker!D1', params={'valueInputOption': 'USER_ENTERED'},body=dict(values=df.T.reset_index().T.values.tolist()))

Aktualisierter Produktmarktwert im P&L-Rechner

Unterhalb der Spalten D bis G werden die gescrapten unterschiedlichen Preisdaten auf einer Amazon-Produktseite angezeigt. Natürlich empfehlen wir nicht, dass Sie diese Daten in Ihren P&L-Rechner einfügen. Sie können die Methode min() verwenden, um die niedrigste auszuwählen. So können Sie sich auf die niedrigste beziehen, verglichen mit Ihrer.

python tutorial

In dem P&L-Rechner können Sie neben den flachen und variablen Kosten Elementen den Preis-Marktwert Ihrer Produkte beobachten. Da der Preis eines der Schlüsselelemente ist, die die Konversationsrate beeinflussen, sollten Sie darauf achten. Die aktuellen Informationen helfen Ihnen, eine bessere Entscheidung über die Verkaufsstrategien und die digitale Werbung Bidding und Budgetverteilung zu treffen.

Für den Einzelhandelsmarktwert in Bezug auf den Preis repräsentiert die höhere Prozentzahl den wettbewerbsfähigeren Preispunkt im Wettbewerbsraum. Sie können eine bedingte Formatierung einrichten, damit Sie sofort erkennen können, wenn die Zahl in roter Farbe hervorgehoben ist. Das bedeutet, dass etwas passiert. Zum Beispiel könnten Ihre Konkurrenten Promotionen durchführen.

Vollständiges Python-Skript des Amazon-Produkt-Preis-Trackers

Wenn Sie die vollständige Version des Python-Skripts des Amazon-Produkt-Preis-Trackers haben möchten, abonnieren Sie bitte unseren Newsletter, indem Sie die Nachricht „Kapitel 17“ hinzufügen. Wir senden Ihnen das Skript sofort an Ihren Posteingang.

Kontaktiere uns

Ich hoffe, Sie haben Kapitel 17 genossen: Amazon Price Tracker, Holen Sie sich den aktualisierten Produktmarktwert mit ASIN, Oauth2Client und Google Sheets. Wenn ja, unterstützen Sie uns bitte durch eine der unten aufgeführten Aktionen, da dies immer unserem Kanal hilft.

  • Unterstützen Sie unseren Kanal durch Spenden über PayPal (paypal.me/Easy2digital)
  • Abonnieren Sie meinen Kanal und schalten Sie die Benachrichtigungsglocke ein Easy2Digital Youtube Kanal.
  • Folgen Sie und liken Sie unsere Seite Easy2Digital Facebook Seite
  • Teilen Sie den Artikel in Ihrem sozialen Netzwerk mit dem Hashtag #easy2digital
  • Melden Sie sich für unseren wöchentlichen Newsletter an, um die neuesten Artikel, Videos und Rabattcodes von Easy2Digital zu erhalten
  • Abonnieren Sie unsere monatliche Mitgliedschaft über Patreon, um exklusive Vorteile zu genießen (www.patreon.com/louisludigital)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert