行いたいこと
Pythonのコードで、固定の秒数ではなく
「implicitly_wait」を使用して
要素が見つかるまでの待機時間を設定したいと思います。
今回はYoutubeを表示した際に、「野球」タブが表示されるまで
待機させてみます。
ソースコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.common.by import By # Chromeを指定 driver = webdriver.Chrome(ChromeDriverManager().install()) # ブラウザのサイズを指定して起動 driver.set_window_size(1500,1000) # Youtubeのサイト url = 'https://www.youtube.com/' # URLを起動する driver.get(url) # /*---------------------------------------------------- # URLを表示してから、最初の要素が見つかるまで最大で15秒待機 # ----------------------------------------------------*/ # 野球タブが見つかるまで最大で15秒待機する driver.implicitly_wait(15) # 野球タブの指定 baseball = driver.find_element(By.XPATH,'//*[text()="野球"]') baseball.click() |
解説
driver.find_element(xxx)
を使用する前に「implicitly_wait(15)」
を使用しています。
これでfind_elementの要素が見つかるまで()に入れた秒数間待機します。
()の中は最大の待ち時間なので、例えば5秒で要素を見つけた場合は
15秒待たず、5秒で処理が行われます。
今回は以上となります。
最後までお読みいただきありがとうございました!