2016-08-14 5 views
0

In meinem Skript Ordner habe ich kopiert meine firefox Ordner ProfilePython Selen wählen zufällig firefox Profil

Mein Code

#Creating profile for browser 
profile = webdriver.FirefoxProfile('.\profiles\profile1') 
profile.set_preference("general.useragent.override", user_agent) 
profile.update_preferences() 

Was ich möchte, ist tun

#Creating profile for browser 
profile = webdriver.FirefoxProfile('.\profiles\random_profile_from_profiles_folder') 
profile.set_preference("general.useragent.override", user_agent) 
profile.update_preferences() 
+0

'p = random.choice (ffp1_list)': p jetzt eine Zeile zufällig aus der Datei ausgewählt ist. Verwende das. –

+0

@ Jean-FrançoisFabre bitte überprüfen Sie meine aktualisierte Frage. Und wenn Sie mich informieren können, wie ich das Skript codiere, um das Zufallsprofil aus meinem Profilordner auszuwählen. Danke – James

+0

@ daniel.kahlenberg kannst du mir helfen? Ich bin auch neugierig, wenn Sie das Hinzufügen von xvfb für die kopflose Interaktion erwähnt können Sie mehrere Firefox Browser-Profile durch die xvfb ausführen? Ich bin gezwungen, pyautogui für Adobe-Interaktionen zu verwenden. Leider interagiert pyauto gui wie eine OS-Ebene. Weißt du, ob es möglich ist oder eine andere Art, mit Adobe innerhalb von xvfb zu interagieren. Auf diese Weise kann ich mein Skript ausführen und trotzdem mit meinem Computer interagieren, ohne sich Sorgen machen zu müssen, dass pyautogui nicht so interagiert, wie es der Fall ist. Vielen Dank – James

Antwort

0

Die einzige Modifikation Ich führe ist 1) Liste Profile Verzeichnis, 2) Filter, um nur Verzeichnisse zu halten 3) zufall auf der Liste

Ich hoffe, es ist das, was Sie wollen:

import os,random 

profile_dir="profiles" 

# pick a directory 
randdir = random.choice(list(filter(os.path.isdir,os.listdir(profile_dir)))) 

profile = webdriver.FirefoxProfile(os.path.join(profile_dir,randdir)) 
profile.set_preference("general.useragent.override", user_agent) 
profile.update_preferences() 
Verwandte Themen