問題は、ブラウザと同じようにpowershellで同じページが表示されないことです。確認するには、コードを試してください:
$HTML = Invoke-WebRequest -Uri "http://www.pgatour.com/leaderboard.html"
$HTML.Content > leaderboard.html
ブラウザでleaderboard.htmlを開きます。ご覧のとおり、メッセージがあります
お使いのブラウザは古くなっている可能性があります。最高のウェブサイト の経験をお持ちの場合は、ブラウザをアップデートすることをお勧めします。
リーダーボードがありません。あなたが試すことができますどのような、IE
$ie = New-Object -com InternetExplorer.Application
#$ie.visible=$true
$ie.navigate("http://www.pgatour.com/leaderboard.html")
while($ie.ReadyState -ne 4) {start-sleep -m 100} #waiting for page is ready
start-sleep -s 30 #waiting for leaderboard to load
$ahrefs = $ie.Document.getElementsByTagName("a")
$names = ($ahrefs | where {$_.className -eq "name expansion"})
$names | foreach {write-host $_.textContent}
注意を介してコンテンツを取得するために、上記の溶液は
非常に遅いですはい、それは動作します!ありがとうございました!!! – YMM
ところで、なぜ私はPSで同じページを取得していないのですか?ページ自体に何か問題がありますか? – YMM
PSはjavascriptを持っておらず、すべての動的コンテンツがレンダリングできないので – Harms