以下のサイトはIEで正常に開くために使用されましたが、現在は概要セクションは表示されません。しかし、もし私がクロームでそれを開くと、それはありません。powershellのウェブスクレーピングがもう機能していません
https://support.microsoft.com/en-us/help/4022887/title#!%2Fen-us%2Fhelp%2F4022887%2Ftitle%22
私は、COM何を経由して、次のコードのPowerShell 5(ここでは職場でのシステム変更のいくつかの並べ替えまで)
$web ="https://support.microsoft.com/en-us/help/4022887/title#!/en-us/help/4022887/title"
$ie = new-object -ComObject "InternetExplorer.Application"
$ie.silent = $true
$ie.navigate($web)
while($ie.busy){ sleep 1 }
$result = $ie.document.body.getElementsByClassName("kb-summary-section") | select -ExpandProperty innertext
$ie.quit()
を使用して作業しますが、それはIEを使用しているようには$に返さ取得されていました結果。私はInvoke-WebRequestを試しましたが、再度希望の結果を返しません。私はそれがまだIEエンジンを使用している疑いがあります。だから私の質問は、今、私たちのIE上に置かれている制限/制限を下回る、純粋な.netルートでも、powershellやchromeのブラウザ機能を使って要約セクションのための上記のURLを掻き集める方法の誰もがあります環境??
編集 私はまだ$ ie.document.bodyに情報を取得しています(私は取得したものを表示するために文書を添付する方法を知らず、貼り付けるには時間がかかります)。クロムサイトは正しく表示されますが、IEには要約部分がありません
あなたはIEが物理的に何も表示しないと言っていますか?それはブラウザの問題、パワーシェルの問題ではないようです。 IEを使用してサイトに実際に移動するとどうなりますか? – ShanayL
'Invoke-WebRequest'がカバーの下でIEを使用している疑いがあります:' Invoke-WebRequest'は直接HTTPリクエストを発行し、ブラウザを自動化しません。これは、ページを取得するために使用できない理由です。ページはJavaScriptを使用して作成され、プレーンなHTMLとしてダウンロードするとサマリーテキストは含まれません。これを回避するには、IEの自動化のすべてが必要です。 IEでページが正しく表示されない場合、Chromeを簡単に近くで自動化することができないため、スクレイピングの取り組みは失敗する可能性が最も高いです。管理者に制限について質問してください。 –