c20082005
Goto Top

Powershell Einloggen Internetseite funktioniert nicht mehr

Hallo zusammen,

ich habe mich vor dem Neuaufsetzen des Rechners immer folgendermaßen bei einer Internetseite eingeloggt:

$ie = New-Object -com "InternetExplorer.Application"  
$ie.Navigate("https://huhu.de")  
$ie.visible = $true
...
$ie.Document.IHTMLDocument3_getElementById("uiViewUser").value = "user"  
$ie.Document.IHTMLDocument3_getElementById("uiPass").value=$Passwd  
$ie.Document.IHTMLDocument3_getElementById("uiSubmitLogin").Click();  

Jetzt funktioniert es nur noch mit

$ie.Document.getElementById("uiViewUser").value = "user"  
$ie.Document.getElementById("uiPass").value=$script:Passwd  
$ie.Document.getElementById("uiSubmitLogin").Click();  

Dei Internetseite hat sich nicht geändert.
Kann mir bitte jemand sagen, warum das nicht mehr mit IHTMLDocument3_getElementById funktioniert?

Gruß

Klaus

Content-Key: 373276

Url: https://administrator.de/contentid/373276

Printed on: April 16, 2024 at 21:04 o'clock

Member: SeaStorm
SeaStorm May 07, 2018 at 14:38:17 (UTC)
Goto Top
hast du evtl. office nicht (mehr) installiert? IMHO kommt das Object durch Office ins powershell
Mitglied: 136037
136037 May 07, 2018 updated at 16:09:26 (UTC)
Goto Top
IHTMLDocument3
Ist ja auch Blödsinn hier eine Erweiterung zu verwenden, denn die Funktion wurde ja an sich nicht verändert.
Jetzt funktioniert es nur noch mit
Und das ist ja auch die korrekte Verwendung face-smile.
Member: c20082005
c20082005 May 08, 2018 updated at 06:31:58 (UTC)
Goto Top
Danke für die Antworten.
Nein, Office habe ich vorher und jetzt nicht installiert.

Mit diesem Thema beschäftige ich mich schon seit n Monaten.
Um es kurz zu machen:
Mit dem Befehl "getElementById(" hatte ich sporadische Fehler, mit dem "IHTMLDocument3_getElementById(" nicht.

Was ich herausgefunden habe:
"IHTMLDocument3_getElementById(" funktioniert bei mir, wenn ich das Paket "Microsoft Visual Studio Express" installiert habe. Dann funktioniert auch das Auslesen der Seite mit
$Seiteninhalt=($ie.document.documentelement).innerText"  
ohne Probleme.
Siehe auch:
Powershell Internetexplorer steuern

Meine Frage ist: Von den 12GB(!), die man damit installiert, braucht man für das Ausführen der beiden Befehle wahrscheinlich nur einen Bruchteil.
Gibt es eine "schlankere" Methode, um die beiden Befehle auszuführen?
Mitglied: 136037
136037 May 08, 2018 updated at 07:35:46 (UTC)
Goto Top
Gibt es eine "schlankere" Methode, um die beiden Befehle auszuführen?
Ja, direkt den Forumlarinhalt per POST oder GET Request an die Zielseite schicken face-wink.

Btw. Was du suchst ist die MSXML2 Bibliothek https://msdn.microsoft.com/de-de/library/cc507436(v=vs.85).aspx