元システムエンジニアのプログラム覚書と映画レビューその他(仮)

それほど映画に詳しいわけでもないけど、結構映画館に行くのが好きなおっさん元SEが観た映画をレビューします。ネタバレ的なこともいうので、これから観るって人は注意してください笑。たまにプログラムの覚書、グルメ、たわごと…などをぶちまけます。

seleniumでエラー…from unknown error: Runtime.executionContextCreated has invalid 'context'

VBAseleniumを使ってウェブスクレイピングのツールを作って使っている。

 

例えば、ホットメールの大量に送られてくるメールから

必要なメールの、その中身の必要な情報を抜き出して

エクセルに転記するってもの。

 

このseleniumってのがたまに情報が変わってエラーになることがある。

だいたいはクロームのバージョンが変わることによるもの。

 

そうなれば最新のクロームドライバーをダウンロードして

入れ替えればだいたいは解決する。

 

Chromeのバージョンを確認する

f:id:eiga_netabare:20210319155838j:plain

 

同じバージョンのクロームドライバーをダウンロード
http://chromedriver.chromium.org/downloads

 

f:id:eiga_netabare:20210319160040p:plain

 

Windowsならこれを選ぶ

 

f:id:eiga_netabare:20210319160145p:plain

 

②インストール先のクローム(chromedriver.exe)を入れ替える

 SeleniumBasicをダウンロードしてインストールした場所

   ↓

 C:\Users\〇〇〇\SeleniumBasic


  chromedriver.exe ←これを入れ替える

-----------------------------------------

で、解決するはずだが…

 

どうやら今回はそうはいかないみたい。

 

確か、昼に使っていたときは普通に動いていた。

 

で、夜にまた動かそうとすると

突然エラーになった…

 

最初は、

-----------------------------------------

 Dim slmDriver As Selenium.WebDriver

Set slmDriver = New Selenium.WebDriver ← ここでエラー

-----------------------------------------

のところで

ActiveXコンポーネントはオブジェクトを作成できません」

といったメッセージがでた。

 

で、SeleniumBasic をここから

https://florentbr.github.io/SeleniumBasic/

再度ダウンロードして

ダウンロードした「SeleniumBasic-2.0.9.0.exe」を右クリックして 

「管理者として実行」

として再インストールしたら

ここは通るようになった。

  ↓

Set slmDriver = New Selenium.WebDriver

 

でも、ここでエラーになる…

  ↓

slmDriver.Start "chrome"

 

ちなみにエラーメッセージはこれ

  ↓

-----------------------------------------

SessionNotCreatedError
session not created exception
from unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"D1C5837B5BD0823EC8820EE3489FBE17","isDefault":true,"type":"default"},"id":1,"name":"","origin":"://","uniqueId":"-2153874303347958642.8310257426078358944"}
(Session info: chrome=89.0.4389.90)
(Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Windows NT 6.3 x86_64)

-----------------------------------------

 

コチラのページをみると

fu-tara.com

 

Chrome用の「chromedriver.exe」が古いことによるエラー」

とある。

 

でも、上記で書いてきた解決方法はは

このページで説明されていたことと同じはず。

 

でも解決できない…

 

 

確か、夜にエラーになったとき、

エクセルを立ち上げたらOfficeが自動的に更新されたんだけど

もしかしたら、

 それが影響しているのかも…

 

 <追記>-----------------------------------------

もう一度、seleniumBasicをインストール

(SeleniumBasic-2.0.9.0.exe をダブルクリック)して

ロームドライバを入れ替えた。

 

すると…

動くようになった!

 

たぶん、確かにOfficeのアップデートで

ActiveXコンポーネントはオブジェクトを作成できません」

 と、いきなりエラーになったのは関係がありそう。

 

でも、もしかしたら

その後、インストールし直してから

ロームドライバを入れ直すのを忘れていたのかも…💦

 

 

ま、とにかく再インストールしたら

必ずクロームドライバも入れ替えなきゃいけないってこと笑

 

解決、解決!