ホームページ >バックエンド開発 >Python チュートリアル >Python を使用して Selenium WebDriver で正確にスリープする方法と、`time.sleep()` のより良い代替手段は何ですか?

Python を使用して Selenium WebDriver で正確にスリープする方法と、`time.sleep()` のより良い代替手段は何ですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-21 22:21:29182ブラウズ

How Can I Precisely Sleep in Selenium WebDriver Using Python, and What Are Better Alternatives to `time.sleep()`?

Python で Selenium WebDriver をミリ秒間スリープする

時間ライブラリは実行を一時停止するために time.sleep(sec) を提供しますが、250 ミリ秒の精度を達成するには小数を指定する必要があります秒数:

import time
time.sleep(0.25) # Sleep for 250 milliseconds

ただし、過度の使用はtime.sleep(sec) は、効率を妨げる可能性があるため、Selenium WebDriver 自動化では推奨されません。

time.sleep() の代替手段

代わりに、WebDriverWait() を Expected_conditions() と組み合わせて使用​​することを検討してください。 )。一般的に使用される 3 つの条件は次のとおりです。

presence_of_element_located:

  • 可視性や可視性に関係なく、DOM 上の要素を見つけることを目的としています。 interaction.

visibility_of_element_located:

  • 要素が存在するかどうか、表示されるかどうか、および高さが 0 以外であるかどうかを確認します。 width.

element_to_be_clickable:

  • 要素が表示、有効、および操作可能であり、クリックが可能であることを確認します。

使用方法WebDriverWait()

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "my_button")))

この例では、続行する前に、ID「my_button」の要素をクリック可能になるまで最大 10 秒待機します。

Reference

  • [WebDriverWait が機能しない予想される](https://stackoverflow.com/questions/39294435/webdriverwait-not-working-as-expected)

以上がPython を使用して Selenium WebDriver で正確にスリープする方法と、`time.sleep()` のより良い代替手段は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。