私はこのコードをpython、Selenium、そしてFirefoxで実行していますが、それでもFirefoxの「ヘッド」バージョンを取得します。
binary = FirefoxBinary('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe', log_file=sys.stdout)
binary.add_command_line_options('-headless')
self.driver = webdriver.Firefox(firefox_binary=binary)
私はまたバイナリのいくつかのバリエーションを試してみました:
binary = FirefoxBinary('C:\\Program Files\\Nightly\\firefox.exe', log_file=sys.stdout)
binary.add_command_line_options("--headless")
Firefoxブラウザをヘッドレスで起動するには、Options()
クラスを通してheadless
プロパティを次のように設定します。
from Selenium import webdriver
from Selenium.webdriver.firefox.options import Options
options = Options()
options.headless = True
driver = webdriver.Firefox(options=options, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe')
driver.get("http://google.com/")
print ("Headless Firefox Initialized")
driver.quit()
ヘッドレスモードを実現する別の方法があります。コードを変更せずにFirefoxのヘッドレスモードを有効または無効にする必要がある場合は、環境変数MOZ_HEADLESS
を whatever に設定してください。
これは、たとえば継続的インテグレーションを使用していて、サーバーで機能テストを実行したいが、それでもPCで通常モードでテストを実行できる場合に非常に便利です。
$ MOZ_HEADLESS=1 python manage.py test # testing example in Django with headless Firefox
または
$ export MOZ_HEADLESS=1 # this way you only have to set it once
$ python manage.py test functional/tests/directory
$ unset MOZ_HEADLESS # if you want to disable headless mode
私の答え:
set_headless(headless=True) is deprecated.
options.headless = True
私のために働く
最初の答えはもううまくいきません。
これは私のために働いた:
from Selenium.webdriver.firefox.options import Options as FirefoxOptions
options = FirefoxOptions()
options.add_argument("--headless")
driver = webdriver.Firefox(options=options)
driver.get("http://google.com")