Quelltext verändern möglich?

09/09/2016 19:48 xShizoidx#1
Guten Tag,

ich würde gerne einen Quelltext einen Seite verändern mit einem Skript in Java oder C# (bevorzugt). Bzw. mal kurz erklärt :
1. Ich gehe auf eine Seite
2. Der Standartquelltext der Seite wird dann durch mein C# oder Java Programm verändert und der Benutzer sieht dann meinen modifizierten Quelltext

Es soll zumindest bei Firefox (wichtig) laufen , am Besten jedoch bei allen Browsern und der Lösungsweg möglich einfach sein. Jemand evtl. eine Idee?
09/09/2016 21:04 EngelEatos#2
Warum unbedingt C# oder java?
hierbei würde sich ein Tampermonkey/Greasemonkey-Script anbieten
dabei würde Javascript verwendet werden.
09/09/2016 22:48 xShizoidx#3
Danke erstmal für die Antwort. Damit kann ich schon einmal etwas anfangen.
Aber c# oder java wäre besser, weil das Programm später z.T. noch als Bot missbraucht wird, etc.
09/10/2016 12:21 Menan#4
Also den Inhalt des Browsers mit C# und Java zu ändern wird schwierig..

Dann müsste dein Tool als Proxy fungieren und der Proxy im Browser gesetzt werden, so dass jeder Request durch dein Tool geht, dann kannst du die Antworten modifizieren, bevor du sie an den Browser weiter schickst..
09/10/2016 12:42 Dr. Coxxy#5
das klingt mir ziemlich nach blackhat, was haste denn genau vor?
09/10/2016 13:33 xShizoidx#6
Ich will auf bestimmten Seiten das Frontend etwas abändern und z.T. auch eigene Buttons einfügen. Wenn dieser Button dann gedrückt wird, sollen meine eigenen Funktionen im C# oder Java Programm ausgeführt werden. Deshalb habe ich gedacht, ich kann z.B. einfach in C# die Seite, auf der sich der Browser befindet auslesen und dort dann einen neuen Quelltext reinmachen. Der Quelltext muss nicht direkt vor dem Request geändert werden, das kann auch direkt nach dem Laden der Seite gemacht werden.

Es geht jetzt erstmal um das Ändern des Quelltextes und evtl. noch ermitteln der aktuellen Seite.
09/10/2016 13:43 Shawak#7
Menan hat dir bereits eine Lösung vorgeschlagen, was besseres fällt mir leid auch nicht ein. Chrome/Firefox bieten ja keine API an (zum Glück).
09/10/2016 13:59 Menan#8
Also den Quelltext verändern musst du in jedem Fall nachdem die Seite geladen wurde und dir der originale Source vorliegt, den kannst dann modifizieren.
Greasemonkey macht auch nichts anderes als Javascript onload auszuführen und damit den bereits vorhanden Quelltext zu modifizieren.

1. Lösung ist per Proxy, allerdings denke ich nicht, dass du damit weiter kommst. Wer trägt schon ein Tool eines fremden als Proxy ein und lässt seinen gesamten Traffic tunneln?

2. Lösung wäre eine Kombi aus einem FireFox/Chrome Plugin, welches die Buttons auf der Seite setzt und einem Tool, welches deine Funktionen bietet (falls du diese nicht in JS schreiben kannst? Dann kannst du auch alles per GreaseMonkey / Plugin programmieren) oder du steuerst das Tool eben über das Plugin fern. In wie weit dies nun direkt geht oder über einen Server, der von beiden angesteuert wird zum setzen von Befehlen und ausführen der Befehle durch das Tool kann ich dir leider nicht sagen.

Edit: Da fällt mir gerade ein, dein Tool könnte einen localen Server starten der auf einen bestimmten Port hört, dann könnte das Browser Plugin / Greasemonkey Script einfach die Buttons einfügen und dann per Javascript über aufrufe der localhost:PORT/api Befehle und Informationen an das Programm übergeben.
09/10/2016 14:21 xShizoidx#9
Es gibt ja z.B. mozrepl für Firefox, damit wurde damals eine Bibliothek für Firefox automatisieren , etc. geschrieben für Autoit und es war/ist auch die Funktion zum ändern des Quelltextes dabei gewesen/ist. Mozrepl läuft ja auch soweit ich weiß über Javascript.
Dacht an so etwas in der Art ... also wo ich z.B. ein Firefox addon installiere und dann mit c# irgendwie darauf zugreifen kann und javascript befehle beispielsweise senden kann.
09/10/2016 14:29 Dr. Coxxy#10
Quote:
Originally Posted by xShizoidx View Post
Ich will auf bestimmten Seiten das Frontend etwas abändern und z.T. auch eigene Buttons einfügen. Wenn dieser Button dann gedrückt wird, sollen meine eigenen Funktionen im C# oder Java Programm ausgeführt werden. Deshalb habe ich gedacht, ich kann z.B. einfach in C# die Seite, auf der sich der Browser befindet auslesen und dort dann einen neuen Quelltext reinmachen. Der Quelltext muss nicht direkt vor dem Request geändert werden, das kann auch direkt nach dem Laden der Seite gemacht werden.

Es geht jetzt erstmal um das Ändern des Quelltextes und evtl. noch ermitteln der aktuellen Seite.
damit hast du meine frage immer noch nicht beantwortet, warum willst du das ganze machen, wofür brauchst du das?
09/10/2016 14:40 xShizoidx#11
Quote:
Originally Posted by Dr. Coxxy View Post
damit hast du meine frage immer noch nicht beantwortet, warum willst du das ganze machen, wofür brauchst du das?
Um das Frontend einer fremden Seite zu ändern und dort eigene Buttons einzufügen, welche Funktionen enthalten, welche Datenbankabfragen,Textvergleiche, Daten aus anderen Webseiten auslesen und diese dann auch vergleichen , etc. in C# ausführen sollen und dann das Ergebnis auf diese Seite wieder zurückliefern sollen.

Wenn ich damit irgendeinen Blödsinn vorhätte , warum sollte ich den Quelltext ändern? Um von jemanden die Facebook Logindaten oder zu klauen muss ich ja nicht den Quelltext ändern.