回答編集履歴

2

対策追記

2023/10/28 01:42

投稿

otn
otn

スコア86307

test CHANGED
@@ -1,6 +1,8 @@
1
1
  同じ環境で、全く同じプログラムを続けて何度か実行して、`find_element`で要素が見つかったり見つからなかったりすることはよくあります。
2
2
  14行目の前に、`print(driver.page_source)`(ページのHTMLを出力)を入れて、`find_element`を実行する直前のHTMLを確認しましょう。実行ごとに異なっているはずです。
3
- 理由は色々考えられますが、ありそうなのは、JavaScriptによるページの更新に時間が掛かっている。もちろん、他の原因かも知れません。
3
+ 理由は色々考えられますが、ありそうなのは、JavaScriptによるページの更新に時間が掛かっている。
4
+ 原因がこれの場合は、対策としては、「その要素が表れるまで待つ」というコードにすることです。
5
+ もちろん、他の原因かも知れません。
4
6
 
5
7
  環境が異なる場合は、全く同じプログラムを実行して異なる結果になるような要因はもっと増えます。
6
8
 

1

補足追加

2023/10/27 15:39

投稿

otn
otn

スコア86307

test CHANGED
@@ -1,4 +1,6 @@
1
- 全く同じプログラムを実行して、`find_element`で要素が見つかったり見つからなかったりすることはよくあります。
1
+ 同じ環境で、全く同じプログラムを続けて何度か実行して、`find_element`で要素が見つかったり見つからなかったりすることはよくあります。
2
2
  14行目の前に、`print(driver.page_source)`(ページのHTMLを出力)を入れて、`find_element`を実行する直前のHTMLを確認しましょう。実行ごとに異なっているはずです。
3
3
  理由は色々考えられますが、ありそうなのは、JavaScriptによるページの更新に時間が掛かっている。もちろん、他の原因かも知れません。
4
4
 
5
+ 環境が異なる場合は、全く同じプログラムを実行して異なる結果になるような要因はもっと増えます。
6
+