遅いスクリプトを待機する Selenium: 戦略と解決策
Selenium のデフォルトの動作は、ページが完全にロードされるまで待機するため、遅延が発生する可能性があります遅いスクリプトに遭遇したとき。この問題は、無効なスクリプトや応答しないスクリプトを繰り返しロードしようとするページを処理する場合にさらに顕著になります。この課題を克服するには、Selenium のページ読み込み戦略を変更できます。
pageLoadStrategy の構成
Selenium には、pageLoadStrategy の 3 つのオプションがあります。
pageLoadStrategy を構成することで、Selenium がページ要素が使用可能になるまで待機する時間を制御できます。
例: Firefox 用の pageLoadStrategy の構成
from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities caps = DesiredCapabilities().FIREFOX caps["pageLoadStrategy"] = "eager" # Interactive driver = webdriver.Firefox(desired_capabilities=caps, executable_path=r'C:\path\to\geckodriver.exe') driver.get("http://google.com")
例: Chrome 用の pageLoadStrategy の構成
from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities caps = DesiredCapabilities().CHROME caps["pageLoadStrategy"] = "none" # Do not wait driver = webdriver.Chrome(desired_capabilities=caps, executable_path=r'C:\path\to\chromedriver.exe') driver.get("http://google.com")
注: 「eager」pageLoadStrategy 値は現在、ChromeDriver 用に開発中です。ステータスの最新情報については、ドキュメントを参照してください。
以上がスクリプトが遅いために Selenium テストを高速化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。