Hallo zusammen, ich habe gerade angefangen, Python-Grundlagen zu lernen und mit Hilfe von Tutorials, dem Internet und meinen eigenen Grundkenntnissen versuche ich, meinen eigenen Sneaker-Bot zu erstellen. Damit meine ich ein Script, das die Größe eines Schuhs auswählen, in den Warenkorb legen und den Checkout-Prozess durchlaufen kann. Dies ist sehr nützlich für Schuhe, die nur in begrenzten Mengen released werden, wodurch ein Wiederverkaufswert entsteht. Ich habe bereits einige Scripts mit Selenium erstellt, einem Tool, das automatisch auf Schaltflächen klickt und Werte auf Websites ausfüllt. Dies ist jedoch nicht hilfreich, wenn es darum geht, als schnellstes das Produkt zu kaufen. Besonders wenn die Website aufgrund von zu viel Traffic lange Ladezeiten hat oder wenn sie Website sogar abstürzt. In diesem Fall kann man auf der Website nichts anklicken. Was man also machen muss ist, direkte Anfragen an einen Server zu senden, was ich derzeit mit der Python Requests-Library bei Snipes, einem Sneaker- und Streetwear-Geschäft, versuche. Ich habe bereits Code geschrieben, um die Produkt-URL und die URL, die die ausgewählte Größe enthält, mit der PID (dem Produktcode) zu generieren. Ich versuche jetzt, eine Anfrage zu senden, die die Größe des Artikels auswählt. Zuerst habe ich einen Fehler beim Verweigern des Zugriffs erhalten, aber ich glaube, ich habe diesen Fehler erhalten, weil ich Cookies benötige, um die Größe auszuwählen. Und hier habe ich das Problem. Das Senden von Cookies braucht man bei Selenium nicht, da es sich um eine menschliche Simulation in einem Browser handelt, welche man bei Requests nicht hat. Also untersuchte ich den Request, der die Größenauswahl enthält und entdeckte, einen Cookie. Der normale Befehl für einen Post-Request lautet wie folgt:
r = request.post (url = "UrlHierEinfügen")
Aber um den Cookie zu senden, tun Sie:
r = request.post (url = "UrlHierEinfügen", cookies = "CookieHierEinfügen")
Aber wenn ich das mache, bekomme ich den Fehler „TypeError: string indices must be integers“. Ich benutze übrigens Spyder mit Python 3.7. Vielleicht lässt sich hier jemand finden, der Erfahrung mit Requests in Python und Webautomatisierung hat. Ich würde mich sehr freuen, wenn mir jemand helfen könnte

Hier ist mein code (ich habe den cookie abgekürzt, damit das hier nicht zu lang wird):
Code: Alles auswählen
PID = "00013801762718"
url = "https://www.snipes.com/p/" + PID + ".html"
print(url)
print("...")
print("...")
print("...")
AtcUrl = url + "?chosen=size&dwvar_" + PID + "_212=46&format=ajax"
print(AtcUrl)
cookie = "test; __cfduid=d70e19d5d0eb69084e8b1b6f3c2b2067f1592685566; dwsid=QpUYEhZjW01rJT5VQWV-arMzkCRJcMV3TUBY3GGqxOXwMIINgfIBQYHjayWD2dUwtCHcZV8kh8jQRFWA7d3j2g........."
import requests
r = requests.get(url = "https://www.snipes.com/p/00013801762718.html?chosen=size&dwvar_00013801762718_212=46&format=ajax", cookies = cookie)
print(r.content)