目次
経緯
pythonでスクレイピングのプログラムの依頼を受けてました。
とりあえず、プログラムが完成して、
依頼者のパソコンで試したところ、”.find_element_by_id()”のところでエラーがでてしまい。
うまくいきませんでした。
なので、今回、勉強しました。
seleniumのバージョンが違った
結論からいいますと、
「selenium」のバージョンが違ったことが原因でした。
私は「selenium3」で、
依頼者は「selenium4」を使っていました。
「selenium3」と「selenium4」では構文が違うので、うまく動かなったということです。
なので、まず、やったことは、
使っている「selenium」を調べました。
コマンドプロンプトを開いて、
python3 selenium.__version__
の順で入力すると、seleniumのバージョンが確認できます。
次にバージョンに合った構文でプログラムを書きます。
「selenium3」と「selenium4」の構文の違いは以下のようになります。
#要素がIDの場合 .find_element_by_id('xxxx') #selenium3 .find_element(By.ID,'xxxx') #selenium4 #要素がNAMEの場合 .find_element_by_name("xxxx") #selenium3 .find_element(By.NAME,"xxxx") #selenium4
となります。
「selenium4」を使う場合「from selenium.webdriver.common.by import By」
をインポートしてから使ってください。
他の要素の書き方も変わっていたので、各々調べてみてください。
参考になれば、幸いです。
ここまで読んでいただきありがとうございました。