13
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Selenium使う際のエラー対応

Last updated at Posted at 2022-05-16

はじめに

最近Pythonを始めた初学者です。現在スクレイピンを学習中ですが、Selenumを使う際に、エラーに遭遇したのでまとめます。

使用環境とバージョン

・Jupyter Lab
・Python 2.7.16

エラーの起こったタイミング

Seleniumのwebdriverをインストールし、Chromを立ち上げ立ち上げました。その後に、idを取得しようと、find_element_by_id()を使用した所、下記エラーをはきました。

selenium.find_element_by_id("value") NameError: name 'selenium' is not defined Exception ignored in: > Traceback (most recent call last):

原因と対策

調べてみると、Seleniumの最新バージョンのSelenium4から書き方が変わり、非推奨になったらしいです。
現在は...
書き方に関しては、

find_element(By.ID, "id-name")

と書くのが推奨されているようです。

またそれに加えてimpot文も合わせて入力する必要があります。

from selenium.webdriver.common.by import By

これを忘れてしまうと、エラーが出ます。
以下に他の書き方もまとめるので、エラーに当たった方は参考にしていただけると幸いです。

新しい書き方一覧

class指定

  • 今までの書き方(class指定)
browser.find_element_by_class_name("class-name")
  • 新しいの書き方(class指定)
browser.find_element(By.CLASS_NAME, "class-name")

name指定

  • 今までの書き方(name指定)
browser.find_element_by_name("element_name")
  • 新しいの書き方(name指定)
browser.find_element(By.NAME, "element_name")

cssセレクタ指定

  • 今までの書き方(cssセレクタ指定)
browser.find_element_by_css_selector("element_css_selector")
  • 新しいの書き方(cssセレクタ指定)
browser.find_element(By.CSS_SELECTOR, "element_css_selector")
13
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?