Automação de página da Web Powershell funciona na Internet, não na intranet
Eu estou tentando fazer alguma automação simples com o Powershell, puxando URLs de link de uma das páginas de intranet local da nossa empresa e, em seguida, fazendo algum trabalho com essas URLs. Eventualmente eu vou usar o script para abrir cada link e clicar em um botão na página. Estou usando o Internet Explorer 9 no Windows 7 x64.
Aqui está um exemplo de um script simples de funcionamento do PowerShell que exibe todos os links em uma página:
$ie = new-object -com "InternetExplorer.Application"
$ie.Visible = $true
$ie.Navigate( "http://www.reddit.com" )
While ($ie.Busy) {
Sleep 1
}
$links = $ie.Document.getElementsByTagName("a")
$links | foreach {
write-host $_.href
}
Esse script funciona bem até eu substituir o URL por um site de intranet local. Segue o esquema de URL normal (http://internaldomain.com/etc ), mas é reconhecido como um site de intranet. Uma vez que eu estou tentando raspar uma página na zona da intranet, o valor $ ie.Document de repente se torna NULL e o script falha.
Eu estou supondo que está relacionado a algum cenário obscuro para essa zona ... Eu não tenho certeza. Eu encontrei algumas sugestões on-line, como adicioná-lo aos seus sites confiáveis, mas isso não funcionou. Esta é a primeira vez que uso o Powershell para automação da web, portanto, qualquer ajuda ou insight seria bem-vinda.