「Microsoft Edgeは自動テストソフトウェアによって制御されています」を消す
公開 2025/01/22 11:11
最終更新
2025/01/22 11:14
Seleniumを使用していて、他人に多少使用させることを考えたとき、
「Microsoft Edgeは自動テストソフトウェアによって制御されています」という表示を邪魔に感じた。
私が考えている処理は、Webページをある程度のところまで誘導してやって、それ以降はアプリを終了してユーザにブラウザの制御権を渡すというもの。
「この制御されています」という表示は制御しているアプリが消えても残るので、誤解を招きそうと思って。
Chromeを使った場合については参考資料が豊富にあるが、Edgeの場合意外と資料が少ない。
Chromiumベースなので機能自体は大差がないはずなのに。
検索上位にあるものとしてmsedge-selenium-toolsからEdgeOptionsを呼び出す方法があったが、msedge-selenium-toolsの最新版(というか最終版?)はmsedge-selenium-tools-3.141.4となっており、これをインストールしようとすると、Seleniumのバージョン3.141を強制される。
現在のSeleniumは4系(これを書いている時点ではselenium-4.13.0が最新)であるため、Selenium 3はサポートされないとするMicrosoftの方針に従わないことになる。
https://learn.microsoft.com/ja-jp/microsoft-edge/webdriver-chromium/?tabs=python
分かっていてあえて使用するのであれば別だが、そうでなければ従うべきだろう。
msedge-selenium-toolsを使わなくても、上のページによれば、Edgeのoptionsについては以下のように別途用意されている。
from selenium.webdriver.edge.options import Options
あとは他の例と同様。
これでよし。
「Microsoft Edgeは自動テストソフトウェアによって制御されています」という表示を邪魔に感じた。
私が考えている処理は、Webページをある程度のところまで誘導してやって、それ以降はアプリを終了してユーザにブラウザの制御権を渡すというもの。
「この制御されています」という表示は制御しているアプリが消えても残るので、誤解を招きそうと思って。
Chromeを使った場合については参考資料が豊富にあるが、Edgeの場合意外と資料が少ない。
Chromiumベースなので機能自体は大差がないはずなのに。
検索上位にあるものとしてmsedge-selenium-toolsからEdgeOptionsを呼び出す方法があったが、msedge-selenium-toolsの最新版(というか最終版?)はmsedge-selenium-tools-3.141.4となっており、これをインストールしようとすると、Seleniumのバージョン3.141を強制される。
現在のSeleniumは4系(これを書いている時点ではselenium-4.13.0が最新)であるため、Selenium 3はサポートされないとするMicrosoftの方針に従わないことになる。
https://learn.microsoft.com/ja-jp/microsoft-edge/webdriver-chromium/?tabs=python
分かっていてあえて使用するのであれば別だが、そうでなければ従うべきだろう。
msedge-selenium-toolsを使わなくても、上のページによれば、Edgeのoptionsについては以下のように別途用意されている。
from selenium.webdriver.edge.options import Options
あとは他の例と同様。
from selenium import webdriver
from selenium.webdriver.edge.options import Options
options = Options()
options.add_experimental_option('excludeSwitches', ['enable-automation'])
driver = webdriver.Edge(options=options)
これでよし。