ホームページ  >  記事  >  バックエンド開発  >  Python を使用して Selenium WebDriver で特定のテキストを含む要素を検索する方法 (大文字と小文字は区別されません)?

Python を使用して Selenium WebDriver で特定のテキストを含む要素を検索する方法 (大文字と小文字は区別されません)?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-29 04:36:02452ブラウズ

How to Find Elements with Specific Text in Selenium WebDriver Using Python (Case-Insensitive)?

Selenium WebDriver で特定のテキストを含む要素を識別する (Python)

Selenium WebDriver で特定のテキスト コンテンツを含む要素を見つけると、特に次のような場合に問題が発生する可能性があります。 JavaScript インターフェースを扱います。一般的なアプローチの 1 つは XPath 式の利用ですが、大文字と小文字の区別に制限がある場合があります。

これを克服するには、変更された XPath 式を使用できます。

<code class="python">driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]")</code>

この式は、次の範囲内のすべての要素を検索します。大文字と小文字は関係なく、「My Button」というテキストを含むドキュメント。

次のような要素が他の要素内にネストされている状況では、

<code class="html"><div class="outer"><div class="inner">My Button</div></div></code>

ターゲットがelement は、目的のテキストを含む最も内側の要素です。これを行うには、同じテキストを含む他の要素の親である要素を除外できます:

<code class="python">elements = driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]")
for element in elements:
    if element.find_element_by_xpath('.//*[contains(text(), 'My Button')]'):
        continue
    else:
        # Perform actions on the current element</code>

以上がPython を使用して Selenium WebDriver で特定のテキストを含む要素を検索する方法 (大文字と小文字は区別されません)?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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