agivx3
Goto Top

Button in HTTP Link auslösen

Ich würde gerne verstehen wie man per HTTP Link einen Button auf der Ziel-Webseite auslösen kann. Als Beispiel
füge ich diesen Link auf einer MS Seite an:

https://catalog.update.microsoft.com/Search.aspx?q=2023-01%202019%20x64

Mein Ziel wäre, das der Button "Herunterladen" gleich mit ausgelöst wird.

Content-Key: 5573652036

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

Printed on: April 29, 2024 at 09:04 o'clock

Member: Crusher79
Crusher79 Jan 23, 2023 at 10:02:05 (UTC)
Goto Top
Hallo,

https://www.wsusoffline.net/

Hilft bei so einer Seite. Die Frage, ob man zig GB verbraten will.

Ansonsten ist oft das Problem, dass die Links dynamisch sind und nicht von Dauer sein müssen. Wenn es statische Inhalte sind, wären die Dev Tools von Friefox dein Freund - Shift + F12 und Netzwerkanalyse.

Oben ist es recht langweilig, da danach direkt eine Seite mit den DL Link geladen wird!

GET
	https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2023/01/windows10.0-kb5022286-x64_6e84985d215be67ce1395cb2627b5ee68cf4dcb6.msu

Wir unterscheiden ja GET und POST.

Wenn du mehr wissen willst google mal danach. Powershell kann auch Seiten aufrufen oder APIs konsumieren.

https://www.script-example.com/powershell-invoke-webrequest


Für Updates gibt es seit Jahren - fast schon Jahrzehnten - Offline Scripte. Die alles saugen und man muss nur noch die EXE oder MSI Pakete ausführen.

Manchmal verbirgt sich hinter den Button ein SECRET.

$LoginXML = Invoke-WebRequest $Phoneurl -Method Post -Body $LoginPOST -SessionVariable session -TimeoutSec 2
if ($LoginXML) {
$LoginXML = Invoke-WebRequest $Phoneurl -Method Post -Body $($DateTimePage) -WebSession $session 
$LoginXML = Invoke-WebRequest $Phoneurl -Method Post -Body "$DateTimePageSet1$(($LoginXML.Forms).Fields['page_ident'])$DateTimePageSet2" -WebSession $session   
}
}

Das muss dir jetzt nichts sagen! Hier geht es um ein unify Telefon. Auf den Seiten verbirgt sich hinter ein Button-Klick leider etwas mehr!

($LoginXML.Forms).Fields['page_ident']

Die so genannte page_ident wird immer wieder neu erzeugt. Hier ist der Trick, die zuerst zu lesen und dann in den eig. POST Befehl mit einzubauen.

Im Ganzen wurde mit den Script ein NTP Server gesetzt.

Ja, es geht. Aber ist nicht immer ganz einfach! Du solltest HTML, Formulare als Basis beherrschen. Man kann nicht immer bei modernen Seiten einfach Dinge automatisieren. Mit etwas Analyse kommt man aber recht weit.

mfg Crusher
Member: agivx3
agivx3 Jan 23, 2023 updated at 10:26:54 (UTC)
Goto Top
Hallo Crusher,

danke für den ausführlichen Kommentar. Mir ging es aber wirklich nur um die Syntax der HTTP Zeile um genau diesen einen Knopf "Herunterladen" nach der Suche gleich mit auszulösen (also ohne Powershell etc.)

Das sollte doch gehen, oder liege ich da falsch ?

Gruss
Andi
Member: godlie
godlie Jan 23, 2023 at 10:22:30 (UTC)
Goto Top
Hallo,

nein das wird mit einem reinen Link nicht funktionieren, da dieser Button vermutlich eine Form auslöst.

grüße
Member: agivx3
agivx3 Jan 23, 2023 at 10:28:51 (UTC)
Goto Top
D.h. der Button löst z.B. irgendeine Funktion aus, und diese kann ich auch nicht gleich mit Parametern in der HTTP Zeile ansprechen ?
Member: godlie
godlie Jan 23, 2023 at 10:37:51 (UTC)
Goto Top
Auf den Button ist eine Event registriert, da kommst mit einem Link nicht ran.
https://catalog.update.microsoft.com/ScriptResource.axd?d=NJmAwtEo3Ipnlaxl6CMhvrkdqm_yxvjqkpYsU8np-a1hZKqNHieny7c8n0uFLH4lzuKZ2_3k4RIn1u-oD0Hipvv6bGQQXy6aHGv0t5q6qO1D0p3K1XQnZtU9otznsIz2SPmyOXUpjM0fXDhvEXkcl622PtyhpuYTTG0Cu-XpPYo1&t=ffffffffaa493ab8