PythonでSeleniumを使用してヘッドレスChromeを実行するにはどうすればいいですか? 質問する

PythonでSeleniumを使用してヘッドレスChromeを実行するにはどうすればいいですか? 質問する

私は Selenium でいくつかのことを試していますが、スクリプトをすぐに実行したいと思っています。

ヘッドレス Chrome でスクリプトを実行すると、速度が速くなると思いました。

まず、その仮定は正しいのでしょうか、それともヘッドレス ドライバーでスクリプトを実行しても問題ないのでしょうか?

ヘッドレス Chrome を動作させたいのですが、なぜか正常に動作しません。さまざまなことを試してみましたが、10 月のアップデートで説明されているように動作するだろうという意見がほとんどでした。

Selenium を介してヘッドレス モードで Chrome ブラウザを起動するように ChromeDriver を構成する方法を教えてください。

しかし、それを試してみると、奇妙なコンソール出力が表示され、まだ機能していないようです。

ヒントがあればありがたいです。

ベストアンサー1

chrome-headless を実行するには、次のように--headlessviaを追加するだけですchrome_options.add_argument

from selenium import webdriver 
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
# chrome_options.add_argument("--disable-extensions")
# chrome_options.add_argument("--disable-gpu")
# chrome_options.add_argument("--no-sandbox") # linux only
chrome_options.add_argument("--headless=new") # for Chrome >= 109
# chrome_options.add_argument("--headless")
# chrome_options.headless = True # also works
driver = webdriver.Chrome(options=chrome_options)
start_url = "https://duckgo.com"
driver.get(start_url)
print(driver.page_source.encode("utf-8"))
# b'<!DOCTYPE html><html xmlns="http://www....
driver.quit()

したがって、ヘッドレス Chrome で実行するとスクリプトが高速化されると考えます。

--disable-extensionsまたはなどの Chrome オプションを使用して--disable-gpuベンチマークしてみてください。ただし、大幅な改善は見込めません。


参考文献:ヘッドレスクローム

おすすめ記事