Python

【Python】Seleniumで「Message: session not created」が発生する原因と解決法

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

 

 

先日MENTAの相談でSeleniumを実行すると「Message: session not created」という相談を受けたので解決法をメモしておきます。

 

「Message: session not created」の原因①

 

結論からいうと原因は「chromeのブラウザのバージョンとseleniumで使用しているwebdriverのバージョンが一致していない」ことが9割です。

 

この場合はWebdriverを更新してください。ただWebdriverを更新するのは毎回面倒なので、webdriver-managerとchromedriver_binaryでドライバーの更新自体を自動化するのがオススメです。

 

# ライブラリをインストールする
$ pip install webdriver-manager
$ pip install selenium
$ pip install --upgrade chromedriver_binary

 

<サンプルコード>

import subprocess
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
import chromedriver_binary 

cmd = 'pip install --upgrade chromedriver_binary' 
res = subprocess.call(cmd, shell=True)
url = 'https://www.mgstage.com/'
d = DesiredCapabilities.CHROME
d['goog:loggingPrefs'] = { 'performance': 'ALL' }
driver = webdriver.Chrome(ChromeDriverManager().install(),desired_capabilities=d)
driver.set_window_size('1200','1000')
driver.get(url)

 

「Message: session not created」の原因②

 

残りは以前実行したSeleniumのセッションが残っていてセッションがパンクしているケースです。

これはヘッドレスモードなどでseleniumを実行していると起こることがあります。

解決法はバックグラウンドで動作しているseleniumのchromeのプロセスをキルしてあげることです。

 

$ pkill chrome

参照:https://qiita.com/tyabotyabo/items/1142a601c460e890631e

 

プロセスの見つけ方などは以下参照

関連記事:【Centos7】Cron上で無限実行しているファイルを停止する

 

終わり

 

 

 


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

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

過去の案件事例:

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

これまでの案件例を見る

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


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

コメント

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