我正在尝试捕获页面上的数据,该页面仅在初始页面加载几秒钟后出现在页面上。当我运行下面的代码时,它会返回Loading...这是它一开始在页面上所说的,但是我需要在下面添加逻辑,所以运行时它会等到它没有说Loading...然后对 Loading... 后显示的实际歌曲(或其他数据)进行匹配。
Invoke-WebRequest -uri "http://www.2dayfm.com.au" -UseBasicParsing -SessionVariable mysession
$rawstationdata = Invoke-RestMethod -Uri "http://www.2dayfm.com.au" -WebSession $mysession
$null = $rawstationdata -match '\s+id\s*=\s*"nowPlayingInfo"\s*>(.*)<\Wspan';$matches[1]
我需要添加的逻辑是等到它不再说Loading...并且等待不超过 30 秒(作为超时),以防它永远不会从说Loading...
我需要使用UseBasicParsing选项,因为我需要将其与 Internet Explorer 隔离,还需要使用Invoke-WebRequest而不是 IE 方法,因为这将作为工作流在 Azure 自动化中运行。