ホームページ > バックエンド開発 > Python チュートリアル > Selenium の EC.presence_of_element_located は ID の代わりにクラス セレクターを使用できますか?

Selenium の EC.presence_of_element_located は ID の代わりにクラス セレクターを使用できますか?

Patricia Arquette
リリース: 2024-12-07 15:04:23
オリジナル
958 人が閲覧しました

Can Selenium's EC.presence_of_element_located Use Class Selectors Instead of IDs?

Selenium の EC.presence_of_element_located を ID セレクターの代わりにクラス セレクターで使用できますか?

Selenium の EC を使用しようとしています。クラスの要素を待機する present_of_element_located メソッドng-binding ng-scope が Web ページ上に存在するようになりますが、機能しません。表示されるエラー メッセージは次のとおりです:

Message: invalid selector: Compound class names not permitted
ログイン後にコピー

このエラーは、EC.presence_of_element_located がセレクターでの複数のクラス名の使用をサポートしていないために発生します。

解決策

Selenium を使用して特定のクラスの要素を待機するには、 By.CLASS_NAME ロケーター。コードを変更する方法は次のとおりです。

element = WebDriverWait(driver, 100).until(EC.presence_of_element_located((By.CLASS_NAME, "ng-binding ng-scope")))
ログイン後にコピー

このコードは、ng-binding ng-scope クラスの要素がページに表示されるまで待機します。

追加注

場合によっては、代わりに EC.visibility_of_element_located メソッドを使用する必要がある場合もあります。 EC.presence_of_element_located の。このメソッドは、要素が存在するだけでなく、ページ上に表示されるようになるまで待機します。

以上がSelenium の EC.presence_of_element_located は ID の代わりにクラス セレクターを使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート