現状の問題
Pythonで開発したスクレイピングのシステムをネットワークドライブ上で共有して使いたい
このような場合、Seleniumのdriverを起動する際にwebdriver_managerを使用していると、エラーが発生し起動することはありません。
なぜ?
webdriver_managerを使用する際に下記のコードを実行するはずです。
ChromeDriverManager().install()
ここで問題が発生します。
{ネットワークドライブのパス}
上記の現在のディレクトリで CMD.EXE を開始しました。
UNCパスはサポートされていません。Windows ディレクトリを既定で使用します。
このような文字列が出力されるだけで、一向にdriverが起動されることはありません。
原因としては次の要因が考えられます。(あくまで推測です)
アクセス権限
このコードは最新のChromeDriverをインストールする処理ですが、ネットワークドライブ上だと特定のアクセス権限が必要となります。
ネットワークドライブ上のシステムからローカルにdriverをインストールするには権限が足りていない可能性が考えられます。
そもそもパスが違う
実行している環境はネットワークドライブ上で、driverのインストール先はローカルの為、そもそもパスが取れない・もしくはパスの与え方が異なる可能性があります。
調べていくとUNCパスとやらが関係してくるようで、そこまで調査する気力と時間はありませんでした。
解決策
素直にwebdriver_managerを使用せずネットワークドライブ上にChromeDriver.exeを置いて、相対パスをwebdriver.Chromeに指定することで起動させることができます。
残念ながらwebdriver_managerを使う方法は分かりませんでした。
webdriver_managerを使える解決方法が分かり次第、記事を更新したいと思います。