2013-09-25 3 views
1

Я пытаюсь создать сценарий powershell, который откроет новое окно IE из javascript-ссылки, и я бы хотел прочитать текст из этого нового окна. Пока сценарий будет читать только содержимое исходного окна IE, и я не уверен, как заставить скрипт читать контент с новой страницы IE.Прочтите текст из нового окна с powershell

$ie = new-object -com InternetExplorer.Application 

    $ie.navigate("https://www.testsite.com/") 

    do {sleep 1} until (-not ($ie.Busy)) 

    $ie.visible = $true 

    $doc = $ie.document 

    if ($ie.document.documentelement.innerText.Contains('Welcome') -eq "True") { 
     "Site is RUNNING" 
    } else { 
     "Site is STOPPED" 
    } 

    $link = @($ie.Document.getElementsByTagName('A')) | Where-Object {$_.innerText -eq 'Click here for new site'} 

    $link.click() 

    if ($ie.document.documentelement.innerText.Contains('New Page') -eq "True") { 
     "Site is RUNNING" 
    } else { 
     "Site is STOPPED" 
    } 

Новое окно всплывает после $ link.click(), и я не знаю, как что-нибудь из нового окна чтения. Я мог бы прочитать текст с оригинальной страницы www.test.com/, но не с новой страницы.

спасибо.

PT

ответ

0

Вы можете использовать следующий код, чтобы перебрать все IE окна/вкладки и выберите один с названием вы ищете:

$title = '...' 

$ie2 = (New-Object -COM 'Shell.Application').Windows() | ? { 
    $_.Name -eq 'Windows Internet Explorer' -and $_.LocationName -eq $title 
} 
+0

Спасибо. Я смог использовать ту же концепцию для создания отдельного shell.application и grab output из этого окна. – user2816863

Смежные вопросы