ich bin gerade dabei mein Automatisierungstool ein bisschen anzupassen.
In der Basis nutze ich Python Selenium und Google Chrome.
On Top habe ich diese tolle Codezeile in Benutzung:
Code: Alles auswählen
chrome_options.add_argument(f"--user-data-dir={chromeProfilePath}")
Nur leider werden die Cookies nicht gesetzt.
Eine Alternative wäre noch das schreiben und Lesen einer Cookie File:
Code: Alles auswählen
# Cookies schreiben
pickle.dump( driver.get_cookies() , open(pickle_file,"wb"))
# Cookies lesen
cookies = pickle.load(open(pickle_file, "rb"))
for cookie in cookies:
driver.add_cookie(cookie)
Ich kann bei Google keine Cookies von Facebook setzen (und umgekehrt)
Konkret ist mir das bei Dropbox aufgefallen:
Ich wollte mich bei Dropbox einloggen, die Cookies speichern, den Browser schließen und beim nächsten Start des Bots ohne Loginprozess Zugriff auf meine Daten haben.
Nun setzt DropBox zur Authentifikation Fremdseitencookies. Bestimmte Cookies kann ich setzen, andere aber nicht. (Die Domains .www.dropbox.com // .dropbox.com // .dropboxstatic.com sehe ich beim manuellen Schnelldurchlauf der Cookies auf Anhieb)
Es geht hier eigentlich nicht um einen Bot zum Schaben geschützter Inhalte!
Viel eher plane ich u.a. meine Django Anwendungen mit Selenium zu testen. Das betrifft die Nutzerseite, wie auch einzelne Analysen die ich eingebaut habe.
Dabei setze ich immer wieder Cookies und möchte diese auch verwenden.
Da meine Anwendung selbst noch nicht einwandfrei läuft, versuche ich mir ein Selenium Testsetup zu erstellen, welches schonmal mit ziemlicher Wahrscheinlichkeit Funktioniert. Dazu lasse ich es gegen bestimmte Dienste laufen die mir spontan einfallen.
Daher nun die Konkrete Frage:
Hat jemand eine Idee wie ich die Cookies wieder in den Chrome Browser kriege?
Mein Sourcecode ist übrigens öffentlich:
https://github.com/JangasCodingplace/sn ... nium_setup
Ist aber noch ein frühes Entwicklungsstadium. Falls bedarf besteht habe ich kein Problem damit die Basis mit anderen zu teilen