Python Selenium

AWSやGCPなどのVPSサーバーでSeleniumがSessionNotCreatedになるときの対処法

この記事は約3分で読めます。

 

今回はAWSやGCPなどのVPSサーバーでSeleniumがSessionNotCreatedになるときの対処法について紹介したいと思います

 

エラーメッセージ

 

SessionNotCreatedException: Message: session not created:

 

エラーの原因

 

① ブラウザとドライバーのバージョンが違う

 

よくある原因は「ブラウザとドライバーのバージョンが違う」ことです。これはSeleniumでは4.6以降のバージョンで、ブラウザドライバーがPATHに存在しない場合に自動的に設定される仕様となっているのでseleniumのバージョンをアップグレードすることで解決します

 

$ pip install selenium==4.17.2

 

<Selenium4でのコードサンプル>

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()

driver.get("http://~~~~~~")
time.sleep(3)
driver.find_element(By.NAME, "adminid").send_keys(adminID)
driver.find_element(By.NAME, "loginname").send_keys(loginName)
driver.find_element(By.NAME, "password").send_keys(password)
driver.find_element(By.NAME, "login").click()
driver.quit()

 

関連記事:Seleniumで「’WebDriver’ object has no attribute ‘find_element_by_○○’」が表示される原因と解決法

 

②そもそもGoogleChromeがインストールされていない

 

例えばGCPやAWSなどのVPSクラウド環境の場合、よくよく考えるとサーバーにGoogleChromeがインストールされていなかった、というケースがあります。

 

その場合以下のコマンドでgoogle-chromeをインストールすれば解決する可能性があります

# Install Chrome
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt-get -f install -y --force-yes
sudo dpkg -i google-chrome-stable_current_amd64.deb

 

それでも治らない場合は下記のコマンドでgoogle-chromeとchromedriverのバージョンが一致しているか確認するとズレていないかチェックしてみてください

 

$ google-chrome --version
$ chromedriver --version

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました