Wie kann man mit Powershell den echten Quellcode einer Seite lesen?

Kokujou

Lieutenant
Registriert
Dez. 2017
Beiträge
929
Hintergrund:
Ich versuche gerade ein kleines bescheidenes Tool zu bauen mit dem ich Seiteninhalte eines bestimmten Musters runterladen kann.
Das Problem: Offenbar ist das nicht so einfach. Wenn ich
Invoke-WebRequest
verwende, dann gibt es oft nur einen bruchteil des Codes zurück. iframes werden nicht aufgelöst und divs sind plötzlich leer obwohl eigentlich was drin sein sollte.
vermutlich liegt es nicht am Befehl selbst, vermutlich muss an so einem Befehl mehr dran sein, die Frage ist was?
ich hab schon versucht den User-Agent im Header zu spezifizieren aber bisher ohne erfolg.

Was muss ich tun um den Quelltext so zu kriegen, wie ich es im kontextmenü des browsers könnte?
 
Um auf die Inhalte eines iFrames zuzugreifen, musst du vermutlich die URL auslesen und dann auf diese URL einen weiteren Request absetzen. Warum divs nicht gefüllt sind, kann man so ohne weiteres nicht sagen, das liegt vermutlich an der Art und Weise, wie die Seite, die du auslesen willst, gerendert wird. Ich schätze, dass dort auch JavaScript verwendet wird, das sich um die Befüllung der divs kümmert. Falls ich da richtig liege, wirst du vermutlich gar nicht (bzw. nicht ohne sehr großen Aufwand und erst recht nicht mit einer Powershell) in die Inhalte kommen.
 
aber warum stehen sie dann im quelltext des browsers? wie machen browser das dass sie den source so problemlos anzeigen können?
und kann man das dann nicht genauso machen?
 
Weißt du was ein Browser auch macht?
Der nimmt die Javascript-Dateien und führt den Code darin aus.

Dreimal darfst raten was dein PS-Kommando nicht macht...
 
anders gesagt ich bräuchte einen echten broser und müsste den dann irgendwie anzapfen... ach herrje
das ist ja schon wieder ein projekt geworden^^
 
Wenn du mal kurz erklären willst, was du eigentlich tun willst, können wir dir vielleicht noch ein paar Tipps geben.
 
Es gibt jede Menge Tools für so ein Vorhaben.

Suche mal nach dem Begriff "Web scraping".
 
naja ich versuche automatisiert dateien aus einer website runterzuladen. sie haben ein sehr deutliches pattern und iframes nachzufolgen ist jetzt auch nicht das problem aber auf der resultierenden Seite ist der video-container dann leider immer leer, vermutlich weil er irgnedwie durchjavascript befüllt wird... also komm ich da vermutlichw irklich nicht ran.

schade... ich wollte eigentlich nur ein kleines automatisiertes script schreiben was mir die arbeit erleichtert 30 seiten zu besuchen und manuell die files runterzuladen, aber wenn das jetzt so ausufert geht es wohl schneller so.
 
stimmt... als forms komponente gibt es den ja... und damit könnte man intern auch zugriff auf den code des dargestellten dokuments nach der Ausführung aller skripte kriegen.

DAs ist gut! ein bischen umständlich, aber da ich ja glücklicherweise eine funktionierende .Net umgebung habe passt es.

Auf PS bin ich nur fixiert weils ursprünglich nur ein kleines Skript'chen sein sollte um mir die Arbeit zu erleichtern^^
 
Zurück
Oben