メイン画像

PowerShell - Invoke-WebRequest で Internet Explorer のエラーが発生する

PowerShell - Invoke-WebRequest で Internet Explorer のエラーが発生する


PowerShell は通信処理の一部に Internet Explorer (以降 IE) の機能を使っている。
そのため IE がインストールされていない環境や起動構成をしていない環境で通信するとエラーになってしまう。

(確認環境: Windows PowerShell 5.1)

 

このとき発生するのは以下のエラー。

Internet Explorer エンジンを使用できないか、Internet Explorer の初回起動構成が完了していないため、応答のコンテンツを解析できません。UseBasicParsing パラメーターを指定して再試行してください。

メッセージに「応答のコンテンツを解析できません」とあるとおり、要求の送信はできているが、受信した応答を解析できずエラーになっている。

(……少々乱暴だが応答を使う必要がなければ、別にこのままでもいいということになる。エラーが出たままってのは気持ち悪いが)

 

エラーを解消するにはメッセージのとおり、UseBasicParsing パラメーターを指定すればいい。

$response = Invoke-WebRequest -UseBasicParsing -Uri https://www.bing.com

UseBasicParsing を指定することで、応答の解析に IE を使わず、基本的な解析のみ行うようになる。
よって IE がなくてもエラーが起きなくなる。

このパラメーターは Windows Server の Server Core のように最初から IE がインストールされていない環境や、IE をアンインストールした環境で使うときに必要になる。


アカウントを作成 して、もっと沢山の記事を読みませんか?


この記事が気に入ったら ことりと さんを応援しませんか?
メッセージを添えてチップを送ることができます。


この記事にコメントをしてみませんか?


酒とアクアリウムが最近の楽しみ。

おすすめの記事