Cookie弹出更新后,使用Net.WebClient进行刮擦无法正常工作

时间:2019-02-15 16:58:38

标签: powershell web-scraping

我有以下问题:

我使用PS脚本抓取网页。根据响应,可以得出该站点是否处于启动状态或关闭状态的结论。

我的代码有效

foreach ($site in $websitesArray) {
    $Counter = 5
    $ErrorCounter = 0
    if ($site -like 'http://*') {
        $siteSplit = $site.Replace("http://", "")
    }
    else {
        $siteSplit = $site.Replace("https://", "")
    }
    $ip = [System.Net.Dns]::GetHostAddresses($siteSplit)

    for (int i = 0 ; i -lt $Counter ; i++) {
        Try {
            $HTMLstring = $web.DownloadString($site)
        }
        Catch {
            $ErrorCounter++ 
        }
        Start-Sleep 5s 
    }

    if ($ErrorCounter > 3) {
        $body += "The website " + $site + " (" + $ip + ") has returned an HTTP error and is down <br />" 
    }
}

问题是弹出Cookie策略的页面返回以下内容:

远程服务器返回错误:(500)内部服务器错误。

我可以使用什么解决方法来防止这种误报的发生?请记住,我有一个网站列表,所以硬编码的解决方案不会对我有帮助。

0 个答案:

没有答案