Improve handling of slow websites
This commit is contained in:
parent
fab0da1d65
commit
51f352f095
1 changed files with 34 additions and 11 deletions
|
@ -90,18 +90,24 @@ $null = New-Module {
|
|||
|
||||
$browser = [OpenQA.Selenium.Firefox.FirefoxDriver]::new($options);
|
||||
$browser.Navigate().GoToUrl($URL);
|
||||
$null = & $downloadAction -Browser $browser;
|
||||
|
||||
while (& $downloadChecker) {
|
||||
Write-Host "Waiting for the download to finish…";
|
||||
Start-Sleep 1;
|
||||
try {
|
||||
$null = & $downloadAction -Browser $browser;
|
||||
|
||||
while (& $downloadChecker) {
|
||||
Write-Host "Waiting for the download to finish…";
|
||||
Start-Sleep 1;
|
||||
}
|
||||
|
||||
$file = Get-ChildItem $dir;
|
||||
$result = Move-Item $file $OutDir -PassThru;
|
||||
$browser.Quit();
|
||||
Remove-Item -Recurse $dir;
|
||||
$result;
|
||||
}
|
||||
catch {
|
||||
throw $Error;
|
||||
}
|
||||
|
||||
$file = Get-ChildItem $dir;
|
||||
$result = Move-Item $file $OutDir -PassThru;
|
||||
$browser.Quit();
|
||||
Remove-Item -Recurse $dir;
|
||||
$result;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -130,7 +136,24 @@ $null = New-Module {
|
|||
[OpenQA.Selenium.Firefox.FirefoxDriver] $Browser
|
||||
)
|
||||
|
||||
$Browser.FindElement([OpenQA.Selenium.By]::CssSelector($ButtonSelector)).Click();
|
||||
$selector = [OpenQA.Selenium.By]::CssSelector($ButtonSelector);
|
||||
[OpenQA.Selenium.IWebElement] $element = $null;
|
||||
|
||||
for ($i = 0; $i -lt 5; $i++) {
|
||||
$element = $Browser.FindElement($selector);
|
||||
|
||||
if ($element) {
|
||||
break;
|
||||
} else {
|
||||
Start-Sleep 1;
|
||||
}
|
||||
}
|
||||
|
||||
if ($element) {
|
||||
$Browser.FindElement([OpenQA.Selenium.By]::CssSelector($ButtonSelector)).Click();
|
||||
} else {
|
||||
throw "Unable to find download button!";
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue