ホームページ  >  記事  >  バックエンド開発  >  Python で Selenium を使用してボタンをクリックするときにセレクターの問題を回避するにはどうすればよいですか?

Python で Selenium を使用してボタンをクリックするときにセレクターの問題を回避するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-22 14:43:03171ブラウズ

How to Avoid Selector Issues When Clicking Buttons with Selenium in Python?

Python の Selenium を使用したボタンのクリック

Python の Selenium を使用してボタンのクリックを自動化しようとする場合、要素を正確に識別することが重要です。提供された HTML 構造には、同様のクラス名を持つ 2 つのボタンが存在します。これらの要素を効率的にターゲットにするには、CSS セレクターを正しく指定することが不可欠です。

試行中に発生する可能性のある問題の 1 つは、セレクター内のクラス名間の空白である可能性があります。

<code class="python">driver.find_element_by_css_selector('.button .c_button .s_button').click()</code>

このセレクターは、次のように指定します。個々のクラス名はスペースで区切られており、HTML 構造と正確に一致しない可能性があります。

解決策: CSS セレクターでクラス名の間のスペースを削除します:

<code class="python">driver.find_element_by_css_selector('.button.c_button.s_button').click()</code>

この変更されたセレクターでは、クラスは分離せずに連結され、HTML 要素のクラス属性との正確な一致が保証されます。

例:

<code class="python"># Click the "Search" button
search_button = driver.find_element_by_css_selector('.button.c_button.s_button[onclick="submitForm(\'mTF\')"]')
search_button.click()

# Click the "Reset" button
reset_button = driver.find_element_by_css_selector('.button.c_button.s_button[onclick="submitForm(\'rMTF\')"]')
reset_button.click()</code>

変更された CSS を利用することによりセレクターを使用すると、「検索」または「リセット」など、目的のボタンを正確に識別してクリックできます。

以上がPython で Selenium を使用してボタンをクリックするときにセレクターの問題を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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