2013-05-07 19 views
5

Trynig per aggiungere un nuovo profilo di Firefox persistente con Selenium. AFAIK, quando si esegue FirefoxProfile(), viene generato un nuovo profilo utilizzando un file temporaneo. Idealmente, questo profilo dovrebbe essere in grado di rimanere disponibile per i processi successivi, anche dopo la chiusura del creatore.Come creare un nuovo profilo (persistente) di Firefox con Selenium in Python?

Problema:

  1. Creare un nuovo profilo di Firefox all'interno di codice Python. Ciò dovrebbe restituire un oggetto FirefoxProfile utilizzabile con il webdriver di Firefox utilizzato da Selenium.
  2. Il profilo creato deve persistere al termine del processo, ovvero deve essere un profilo completo, non solo un profilo temporaneo.

Alcuni puntatori:

  1. Il file profiles.ini sembra essere la chiave. Ho letto del codice che utilizza la classe Java ProfilesIni per modificare le informazioni del profilo. Se questa classe è disponibile per il codice Python, probabilmente dovrebbe occuparsi della maggior parte di questo.

  2. Se l'unico modo per eseguire questa operazione è modificare manualmente il file profiles.ini, è accettabile. Una soluzione migliore, più standardizzata (quella che utilizza una libreria o un codice Selenium) sarebbe preferibile, comunque.

Grazie mille!

risposta

2

Se questo aiuta nessuno, ciò che deve essere fatto è eseguire:

firefox[.exe] -CreateProfile <profile_name> 

Il .exe tra parentesi ha lo scopo di prevedere, per l'esecuzione sotto Windows.

Sì, questo non utilizza la libreria Selenium in Python, ma fornisce il risultato desiderato.