fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2);
fp.set_preference("browser.download.manager.showWhenStarting", False);
fp.set_preference("browser.download.dir", self.download_dir);
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv");
self.browser = webdriver.Remote("http://192.168.1.242:4444/wd/hub",
desired_capabilities=webdriver.DesiredCapabilities.FIREFOX,
browser_profile=fp
)
上記のコードは、指定されたプロファイルを尊重しません。
しかし、以下のコードは期待どおりに動作します:
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2);
fp.set_preference("browser.download.manager.showWhenStarting", False);
fp.set_preference("browser.download.dir", self.download_dir);
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv");
self.browser = webdriver.Firefox(fp)
セレンのドキュメント ページhttp://seleniumhq.org/docs/04_webdriver_advanced.html#remotewebdriver には次の例があります。
from selenium import webdriver
fp = webdriver.FirefoxProfile()
# set something on the profile...
driver = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.FIREFOX, browser_profile=fp)
これは私の例のコードと同じです。また、-firefoxProfileTemplate でセレン サーバーを起動すると、プロファイルの設定が無視されるようです
java -jar ./selenium-server-standalone-2.25.0.jar -firefoxProfileTemplate /home/xubuntu/.mozilla/firefox/fdui6lsj.crawler/
編集:
また、ファイルからプロファイルをロードすると、次のようになります。
fp = webdriver.FirefoxProfile('/home/xubuntu/.mozilla/firefox/fdui6lsj.crawler/')
self.browser = webdriver.Remote("http://192.168.1.242:4444/wd/hub",
desired_capabilities=webdriver.DesiredCapabilities.FIREFOX,
browser_profile=fp
)
プロファイルは読み込まれますが、時間がかかります。
誰かが何が悪いのか教えてもらえますか?