Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

実行エラー33

解決したいこと

久々にVBA でChromeブラウザを使おうと思ったらうまく動かず、動くようにしたいです。
chromedriverのバージョンの問題かと思い、ファイルを入れ替えてみたのですが、問題が解決しません。
有識者の方ご教示お願いいたします。

VBA内容

Dim Driver As New Selenium.WebDriver
Sub checkin()

    '■プロファイルパスを指定 'chrome://versionで確認可能
    Dim str As String: str = "C:\Users\" & Environ("USERNAME") & "\AppData\Local\Google\Chrome\User Data"
    Driver.AddArgument ("--user-data-dir=" & str)
    
    '■ここはプロファイルによって変動する
    Driver.AddArgument ("--profile-directory=Profile 108")

    '■ブラウザを起動
    Driver.Start "chrome"
    Driver.Wait 500


End Sub

Error1.png

Error2.png

0 likes

3Answer

タスクマネージャーを開いて、chrome.exechromedriver.exe を完全に終了させる。

  Driver.AddArgument "--profile-directory=Profile 108"
+ Driver.AddArgument "--remote-debugging-port=9222" '追加する
  Driver.Start "chrome"

で、どうでしょうか。

0Like

Comments

  1. 回答ありがとうございます。
    早速試してみましたが、状況に変化はなく黄色部分でエラーが発生する状況です。
    chromedriverのバージョンについては問題ない認識なのですが、
    相違ないでしょうか。

    Error3.png

  2. Chromeのアドレスバーに chrome://version と打ち込み、「プロフィール パス」の最後が本当に Pofile 108 になっていますか?

    --

    プロフィール 不一致でもエラーになりませんでした。とすると、chromedriverのバージョン不一致なのかも知れません。

  3. Chromeのアドレスバーに chrome://version と打ち込みましたが、
    最後はPofile 108となっておりました。

chromedriverのバージョンの問題かと思い、ファイルを入れ替えてみたのですが、問題が解決しません。

上記の「ファイルを入れ替え」とは何を何に入れ替えなのですか?

0Like

Comments

  1. 久しぶりにseleniumをつかってみようと思ったので、
    古いchromedriverから新しいchromedriverへ入れ替えを実施いたしました。

  2. それはバージョン146ということですか?

    プロファイル名(Profile 108)に空白があるので対策してみてください。(ダブルクォーテーションで囲む)

  3. バージョン146をダウンロードしたつもりなのですがうまくいかずです。
    ダブルクォーテーションで囲んでみましたが、結果は変わらずでした。

  4. エラーの原因を特定するためにオプション指定は止めてChromeを起動させることができるかからやってみてはどうでしょうか?成功したらオプション指定を一つずつ追加してやってみてください。

  5. 下記のバージョンに更新が入ったため、chromedriverを変更しました。
    バージョン 146.0.7680.80

    説明が不足しており申し訳ないです。
    chrome自体は起動するのですが(指定したユーザプロファイルで開く)、
    エラーで止まってしまい、開くだけでおわってしまう状態です。

  6. chrome自体は起動するのですが(指定したユーザプロファイルで開く)、
    エラーで止まってしまい、開くだけでおわってしまう状態です。

    そのプロファイルだけ上手く行かないのですか?他でも同様ですか?

  7. 他のプロファイルでもやってみましたが同じでした。

以下の原因が考えられるので、ご確認ください

  • Windows10以降はMicrosoftアカウントでログインすると、ユーザー名とホームディレクトリが必ずしも一致しないので、環境変数「USERNAME」ではなく「LOCALAPPDATA」を利用してください
  • プロファイル名やディレクトリに空白が入る可能性があるので、ダブルクォーテーションをエスケープして含めて見てください
    ※必ずしも必要と限らないので1つ目の対策が効かないときに試してください
Dim Driver As New Selenium.WebDriver
Sub checkin()
    Dim str As String: str = """" & Environ("LOCALAPPDATA") & "\Google\Chrome\User Data" & """"
    Driver.AddArgument ("--user-data-dir=" & str)
    Driver.AddArgument ("--profile-directory=""Profile 108""")
    Driver.Start "chrome"
    Driver.Wait 500
End Sub

0Like

Comments

  1. 回答ありがとうございます。
    USERNAMEからLOCALAPPDATAに変更したところ
    chrome起動→エラーではなく
    chrome起動せずエラーとなりました。
    ダブルクォーテーションでも改善せずの状態です。

  2. エラーの内容が変われば都度スクリーンショットやエラーメッセージの添付をお願いします。

    また、VBAのライブラリは下記のものを使用していますか?
    https://github.com/GCuser99/SeleniumVBA

  3. 現在のエラーは添付の状態となっております。
    (バージョンが変わったことによりメッセージが若干変わっております。
    VBAのライブラリについてはどうしていたかあまり覚えていないです。

    Error4.png

Your answer might help someone💌