回答編集履歴

3

より、簡潔な手段を追記

2022/12/26 20:39

投稿

Demerara
Demerara

スコア392

test CHANGED
@@ -1,3 +1,10 @@
1
- selenium 4.0 以降では、`find_element_by~` といったメソッドは使えなくなってます。4.0 以降は、`find_element(by="class", value="revRvwUserSec")` といった風に指定します。`by` 引数に、セレクターの名前を指定し、`value` にその値を渡します。`value` 側に `#`や `.` は不要です。
1
+ selenium 4.0 以降では、`find_element_by~` といったメソッドは使えなくなってます。4.0 以降は、`find_element(by="class", value="revRvwUserSec")` といった風に指定します。`by` 引数に、セレクターの名前を指定し、`value` にその値を渡します。
2
+
3
+ 個人的には、`xpath` で指定する方が簡単なのでおすすめです。
4
+ 開発者ツールのハイライトされている部分で右クリック、コピーを選んで、`XPath` または `Full XPath` を選択します。その値を、`find_element()` の引数 `value` に渡します。
5
+ たとえば、画像で提示されている箇所なら以下のようになります。
6
+ ```python
7
+ driver.find_element("xpath", "/html/body/div[5]/div[1]/div[5]/div[1]/div/div[3]/div[1]/div[1]/ul/li[2]/dl/dt/a")
8
+ ```
2
9
 
3
10
  参照:[Finding web elements](https://www.selenium.dev/documentation/webdriver/elements/finders/)

2

構文が間違っていたため修正、加えて若干説明を追記

2022/12/26 20:28

投稿

Demerara
Demerara

スコア392

test CHANGED
@@ -1,3 +1,3 @@
1
- selenium 4.0 以降では、`find_element_by~` といったメソッドは使えなくなってます。4.0 以降は、`find_element(by="CSS_SELECTOR", value="div.revRvwUserSec")` といった風に指定します。
1
+ selenium 4.0 以降では、`find_element_by~` といったメソッドは使えなくなってます。4.0 以降は、`find_element(by="class", value="revRvwUserSec")` といった風に指定します。`by` 引数に、セレクターの名前を指定し、`value` にその値を渡します。`value` 側に `#`や `.` は不要です。
2
2
 
3
3
  参照:[Finding web elements](https://www.selenium.dev/documentation/webdriver/elements/finders/)

1

誤字の訂正

2022/12/26 20:06

投稿

Demerara
Demerara

スコア392

test CHANGED
@@ -1,3 +1,3 @@
1
- selenium 4.0 以降では、`find_element_by~` といったメソッドは使えなくなってます。4.0 以降は、`find_element(by=By.CSS_SELECTOR, value="div.revRvwUserSec")` といった風に指定します。
1
+ selenium 4.0 以降では、`find_element_by~` といったメソッドは使えなくなってます。4.0 以降は、`find_element(by="CSS_SELECTOR", value="div.revRvwUserSec")` といった風に指定します。
2
2
 
3
3
  参照:[Finding web elements](https://www.selenium.dev/documentation/webdriver/elements/finders/)