torsten1811

Webseite mit Powershell steuern

Hallo,

ich habe eine Webseite, auf der ich bestimmte Handlungen manuell machen muss. Hier mal ein Beispiel:
- Seite öffnen
- Über ein Menü einen Eintrag wählen
- Nach refresh einen Button anklicken (Download einer xlsx)
- 'Speichern' auswählen

Diese Handlungen möchte ich jetzt über ein Powershell-Script automatisiert ausführen. Die Seite aufrufen ist ja kein Problem. Aber wie sieht es jetzt mit den anderen Handlungen aus? Geht das überhaupt?

Viele Grüße
Torsten
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 585004

Url: https://administrator.de/forum/webseite-mit-powershell-steuern-585004.html

Ausgedruckt am: 30.04.2025 um 08:04 Uhr

144705
144705 04.07.2020 aktualisiert um 21:40:04 Uhr
Goto Top
Gab's erst hier
Webseite auto login
Meist kann man sich das Fernsteuern aber sparen wenn man sich mal mit F12 in der Netzwerkanalyse die übermittelten Daten anschaut, dann reicht es meist nur die entsprechenden GET oder POST Parameter an die jeweilige URL zu senden um den passenden Download zu triggern.
GNULinux
GNULinux 06.07.2020 um 10:13:43 Uhr
Goto Top
Wenns um Performance geht die Anfragen selbst schicken. Falls nicht bzw du JS brauchst, gibts entsprechende Frameworks.
Infos z.B. hier: https://u-labs.de/forum/windows-62/multi-browser-software-mit-automatisc ...
torsten1811
torsten1811 06.07.2020 um 11:45:34 Uhr
Goto Top
Bin nun soweit, dass ich die richtige Seite aufrufe. Allerdings machte er mit eine neue Browserinstanz auf. Soweit so gut. Jetzt möchte ich in der neuen Instanz eine neue Adresse angeben. Aber wie erhalte ich jetzt die instanz auf genau diesen Browser? Denn der erste ist ja auch noch geöffnet.
144705
144705 06.07.2020 aktualisiert um 11:54:37 Uhr
Goto Top
Steht doch in der Kommentaren der Codes.
torsten1811
torsten1811 06.07.2020 um 13:22:04 Uhr
Goto Top
Da finde ich zwar die Möglichkeit bestimmte Objekte (Eingabefelder, Button) anzusprechen. Aber ich habe ja den Focus auf die gesamte Seite verloren!

Oder was gebau meinst du???
144705
144705 06.07.2020 aktualisiert um 13:39:00 Uhr
Goto Top
Zitat von @torsten1811:

Da finde ich zwar die Möglichkeit bestimmte Objekte (Eingabefelder, Button) anzusprechen. Aber ich habe ja den Focus auf die gesamte Seite verloren!
Nö, wieso?? Das Firefox Objekt ist immer definiert an das Fenster/Session gebunden, dazu braucht man keinen Fokus.

Ich meine das Skript in diesem Kommentar
Webseite auto login

Oder was gebau meinst du???
Das fragen sich hier auch alle was du genommen hast. Was ich meine habe ich oben verlinkt.
torsten1811
torsten1811 07.07.2020 um 10:31:03 Uhr
Goto Top
Hallo, habe mich da jetzt mal ein wenig eingearbeitet. Sorry, dass das erst jetzt passiert ist face-wink
Ich habe das Skript aus dem Link mal nachgestellt. Das Skript erzeugt mir eine "Selenium-Firefox"-Instanz, die ich nun mit einigen Funktionen steuern kann. Das funktioniert soweit auch recht gut.
Ich öffne damit eine Seite in unserem Firmennetzwerk. Allerdings ist dazu ein BN/PW notwendig. Nach dem Öffnen der Seite öffnet sich ein Popup zur Angabe von BN/PW. Nur, wie kann ich das jetzt steuern? Am besten wäre es, wenn man diese Infos bereits im Script hinterlegen kann. Habe dazu leider noch keine Lösung gefunden.

Gruß
Torsten
144705
144705 07.07.2020 aktualisiert um 10:33:21 Uhr
Goto Top
Zitat von @torsten1811:

Hallo, habe mich da jetzt mal ein wenig eingearbeitet. Sorry, dass das erst jetzt passiert ist face-wink
Ich habe das Skript aus dem Link mal nachgestellt. Das Skript erzeugt mir eine "Selenium-Firefox"-Instanz, die ich nun mit einigen Funktionen steuern kann. Das funktioniert soweit auch recht gut.
Ich öffne damit eine Seite in unserem Firmennetzwerk. Allerdings ist dazu ein BN/PW notwendig. Nach dem Öffnen der Seite öffnet sich ein Popup zur Angabe von BN/PW. Nur, wie kann ich das jetzt steuern? Am besten wäre es, wenn man diese Infos bereits im Script hinterlegen kann. Habe dazu leider noch keine Lösung gefunden.


Das ist Basic Auth da reicht es die Login-Daten mit in die URL zu packen
http://USERNAME:PASSWORD@domain.tld
Und schon bisse drin.