2013-05-07 4 views
5

Trynig, um ein neues, hartnäckiges Firefox-Profil mit Selenium hinzuzufügen. AFAIK, wenn FirefoxProfile() ausgeführt wird, wird ein neues Profil mit einer temporären Datei generiert. Im Idealfall sollte dieses Profil auch nach dem Schließen des Erstellers für nachfolgende Prozesse verfügbar bleiben.Wie erstelle ich ein neues (persistentes) Firefox-Profil mit Selenium in Python?

Problem:

  1. ein neues Firefox-Profil erstellen aus Python-Code. Dies sollte ein FirefoxProfile-Objekt zurückgeben, das mit dem von Selenium verwendeten Firefox-Webdriver verwendet werden kann.
  2. Das erstellte Profil sollte nach dem Ende des Prozesses erhalten bleiben - d. H. Es sollte ein vollwertiges Profil und nicht nur ein temporäres Profil sein.

Einige Hinweise:

  1. Die profiles.ini scheint Dateischlüssel zu sein. Ich habe Code gelesen, der die Java-Klasse ProfilesIni verwendet, um Profilinformationen zu ändern. Wenn diese Klasse für Python-Code verfügbar ist, sollte dies wahrscheinlich der größte Teil sein.

  2. Wenn der einzige Weg, dies zu tun ist, die profiles.ini Datei manuell zu ändern, ist das akzeptabel. Eine bessere, standardisierte Lösung (eine, die eine Bibliothek oder einen Selenium-Code verwendet) wäre jedoch vorzuziehen.

Vielen Dank!

Antwort

2

Wenn dies jemand hilft, was getan werden muss, wird ausgeführt:

firefox[.exe] -CreateProfile <profile_name> 

Die .exe in Klammern soll es unter Windows laufen schaffen ist.

Ja, dies verwendet nicht die Selenium-Bibliothek in Python, aber es liefert das gewünschte Ergebnis.

Verwandte Themen