python seleniumで、ボタンのエレメントを取得するコードを書いているのですが、 xpathなら成功するのに、class nameだと失敗してしまいます。

python seleniumで、ボタンのエレメントを取得するコードを書いているのですが、 xpathなら成功するのに、class nameだと失敗してしまいます。 class nameはhtmlソースにきちんと書いてあったのに、 なぜ失敗してしまうのでしょうか。 xpathだとサイトのメンテナンスによりプログラムを変更せねばならないので、 できればあまり変わることのない要素をえらべるようにしたいです。 ■■HTMLソース <button type="submit" class="btn btn-block btn-neg-light-gray btn-text-blue btn-icon-right btn-arrow-next"> パスワードを入力する </button> ■■Python seleniumコード from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC import time from datetime import datetime from selenium.common.exceptions import TimeoutException MaxWaitTime = 100 driver = webdriver.Chrome("c:/driver/chromedriver.exe") driver.get('URL') WebDriverWait(driver, MaxWaitTime).until(EC.presence_of_all_elements_located) element2 = driver.find_element_by_class_name("btn btn-block btn-neg-light-gray btn-text-blue btn-icon-right btn-arrow-next") ■■エラーメッセージ selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".btn btn-block btn-neg-light-gray btn-text-blue btn-icon-right btn-arrow-next"} (Session info: chrome=85.0.4183.102)

画像

HTML、CSS | プログラミング17閲覧xmlns="http://www.w3.org/2000/svg">500

その他の回答(1件)