前提
Python×Seleniumにて、指定したURLにアクセスして「画面キャプチャ」を取得するツールを作成しています。
ただし、試験対象URLのみにアクセスできる箱庭の中で動作させる予定です。サーバ証明書自体は本番環境と同等のものを使用するため、CRL配布サイトや検証用に刻印されているのはCAの配布サイトであり、これら外部サイトへの通信は一律遮断されている状況です。
実現したいこと
対象画面(URL)数が多いことと、当該ツールを動作する環境の都合で「サーバ証明書の検証(CRL配布サイトなどへのアクセス)ができない」ため、CRL配布サイトのドメインをhosts設定にて自端末に向けて意図的に失敗させることで「時間短縮」を狙っているものの、それでもまだ時間がかかるので、さらなる時間短縮を図るため、「サーバ証明書の検証」自体を無効化したいです。
※やりたいことのイメージとしては、Internet Explorer11のインターネットオプションから「詳細設定」にある「サーバーの証明書失効を確認する」のチェックを外したときの挙動をMicrosoft Edgeで実現したいというものです。
※別アプローチとして、これまではFor文を使って直列に画面キャプチャを取得していたものをスレッド化して並列実行させてもみましたが、Seleniumのインスタンス起動周りのオーバーヘッドが大きく、通常通りインターネット接続が可能な環境(本来動作させる予定の端末より端末性能も高い)にてプレ確認をしてみたところ、むしろ直列実行の方が速度を出せるくらいの状況となってしまいました。
試したこと
こちらのサイトを参考にして、「capabilities['acceptInsecureCerts'] = True」を指定して動作させてみましたが、
サーバ証明書の検証が明示的にエラーとなった際、専用のエラー画面へ遷移しなくなるだけであり、検証そのものを差し止める動きとはなりませんでした。
https://qiita.com/saamonumai/items/4e5dd3448cd232bb26e0
※このページに記載のソースコードにて確認しています。
その他のアプローチとしてSeleniumの情報サイトを探して回って「--ignore-certificate-error」といった指定の仕方も含めて調べてみたものの、解決に至っていない状況です。
補足情報(FW/ツールのバージョンなど)
pythoen 3.10.4
Selenium 4.1.3
その他、当方から提示すべき状況/参考にできる情報などありましたらご教示いただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー