# Aktuellen Sourcecode aus Browser laden



## Baumlol (22. Mai 2016)

Guten Tag zusammen,

das mag jetzt ein wenig seltsam klingen, aber gibt es einen Weg, mittels Java den aktuellen Sourcecode einer geöffneten Webseite eines Browsers zu laden?

Das Szenario: Ich habe eine Webseite die viele Informationen regelmäßig mit Ajax nachlädt. Die Webseite erfordert für die Darstellung und Funktionsfähigkeit einen aktuellen Browser wie Firefox oder Chrome. Da ich gewisse Daten dieser Webseite gerne auslesen möchte, benötige ich den aktuellen Quellcode in meinem Java Programm. Mit JSoup habe ich schon ein wenig rumexperimentiert, aber sobald Ajax ins Spiel kommt, habe ich hier nicht viele Chancen, zumal JS ohne Visualisierung bei dieser Seite relativ viele Probleme macht.

Ich weiß, dass ich nicht in Firefox oder so eingreifen kann, aber vielleicht gibt es ja ein Plugin, dass diese Schnittstelle zur Verfügung stellt? Ich suche nun schon einige Tage und habe leider absolut keinen Ansatz.

Meine Notlösung wäre die Daten mittels Screenshots und Bildanalyse auszuwerten, aber das wird eine Menge Arbeit. Schöner wäre es für mich, wenn ich das über den Code machen könnte.

Hat jemand von euch vielleicht eine Idee? Es würde mir sehr weiterhelfen.

Habt dank.


Viele Grüße


----------



## RalleYTN (23. Mai 2016)

Wenn es nur ums HTML gehts dann sollte das hier helfen:


```
URL url = new URL("http://www.google.de/");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line = null;

while((line = reader.readLine()) != null) {

    System.out.println(line);
}

reader.close();
connection.diconnect();
```


----------



## mrBrown (23. Mai 2016)

uU könnte HtmlUnit sein interessant sein, guck's dir mal an 



RalleYTN hat gesagt.:


> Wenn es nur ums HTML gehts dann sollte das hier helfen



Es geht eben nicht um nur HTML ^^


----------



## Xyz1 (23. Mai 2016)

Baumlol hat gesagt.:


> Ich weiß, dass ich nicht in Firefox oder so eingreifen kann, aber vielleicht gibt es ja ein Plugin, dass diese Schnittstelle zur Verfügung stellt? Ich suche nun schon einige Tage und habe leider absolut keinen Ansatz.



Lest doch bitte die Frage vollständig. Das wäre auch meine Frage.

*HtmlUnit* kann das ist aber sehr kompliziert und hat Overhead.

Das Navigieren durch Seiten macht keinen Spaß.

Außerdem gibt's in der Wildniss dirty HTML und dirty JS,
alle Fehlermeldungen das betreffend, müssen annulliert
werden.

Schließlich lässt sich sagen, dass das sehr danach klingt,
du hast etwas Illegales damit vor, afaiccs.


----------



## mrBrown (23. Mai 2016)

DerWissende hat gesagt.:


> Schließlich lässt sich sagen, dass das sehr danach klingt,
> du hast etwas Illegales damit vor, afaiccs.



Webseiten öffnen ist mittlerweile illegal geworden? Dann schließ mal besser schnell deinen Browser


----------



## Xyz1 (23. Mai 2016)

mrBrown hat gesagt.:


> Webseiten öffnen ist mittlerweile illegal geworden? Dann schließ mal besser schnell deinen Browser



Es wird nicht nur das Öffnen sein, sondern auch die Automatisierung selbiger. Sei's, weil er 1000mal eine Seite öffnet oder Ähnliches. Deshalb sollte man ihm auch keine Hilfestellung gewähren, imo.


----------



## mrBrown (23. Mai 2016)

DerWissende hat gesagt.:


> Es wird nicht nur das Öffnen sein, sondern auch die Automatisierung selbiger. Sei's, weil er 1000mal eine Seite öffnet oder Ähnliches. Deshalb sollte man ihm auch keine Hilfestellung gewähren, imo.



Da scheinst du echt mehr zu wissen als alle anderen...


----------



## Xyz1 (23. Mai 2016)

mrBrown hat gesagt.:


> Da scheinst du echt mehr zu wissen als alle anderen...



Jetzt weißt du bescheid. 

Ich hätte ihm auch nicht:
`HttpURLConnection connection` gezeigt --- schon alleine mit dieser Klasse kann er zu viel von Website Betreibern nicht gewolltes anstellen... Das nur als kleine Randnotiz.


----------



## JStein52 (23. Mai 2016)

DerWissende hat gesagt.:


> Ich hätte ihm auch nicht:
> HttpURLConnection connection gezeigt ---


Wie krass ist das denn ... ich wüsste nicht dass das geheim ist.


----------



## Meniskusschaden (23. Mai 2016)

Deshalb habe ich auch noch nie öffentlich die Existenz des Internet erwähnt. Nicht auszudenken was passiert, wenn die falschen Leute erfahren, dass es so etwas Gefährliches gibt.


----------



## JStein52 (23. Mai 2016)

Frau Merkel hat da ja schon mal Andeutungen gemacht dass es da was Neues gibt ...


----------



## Cromewell (23. Mai 2016)

Diese Diskussion x)


----------



## Xyz1 (23. Mai 2016)

Ist doch so, die Fragestellung legt nahe - oder: lässt nur eine logische Schlussfolgerung zu -, dass die aus den Antworten gewonnene Erkenntnisse nur für ILLEGALE Zwecke eingesetzt werden können - besser gesagt: nur werden!

Ganz einfach gesagt: Baumlol hat etwas ILLEGALES damit vor.

Wenn ihr mir widersprechen möchtet, beantwortet doch einfach seine Frage und schaut dann, was aus der Antwort wird. 

Wahrscheinlich steht jetzt schon viel Offtopic in diesem Thread.


----------



## JStein52 (23. Mai 2016)

DerWissende hat gesagt.:


> Ganz einfach gesagt: Baumlol hat etwas ILLEGALES damit vor


Wieso hat er illegales damit vor ? Einfache Idee:  er will sich auf einem Informationsdienst anmelden und sagen wir aktuelle Börsendaten abrufen


----------



## Xyz1 (23. Mai 2016)

Es gibt nur zwei Möglichkeiten:
- Es ist Illegal -> Der Börsendienst verbietet Robots und damit ist's Illegal.
- Es ist Nicht illegal -> Es wird eine öffentliche API angeboten,
- welche den Einsatz von HtmlUnit erübrigt.
Das ist common practise...


----------



## mrBrown (23. Mai 2016)

DerWissende hat gesagt.:


> Es gibt nur zwei Möglichkeiten:
> - Es ist Illegal -> Der Börsendienst verbietet Robots und damit ist's Illegal.
> - Es ist Nicht illegal -> Es wird eine öffentliche API angeboten,
> - welche den Einsatz von HtmlUnit erübrigt.
> Das ist common practise...



Ist Google eigentlich illegal?


----------



## Xyz1 (23. Mai 2016)

... Kann hartnäckig sein, aber verkleidet sich nicht als Mensch. 

So, nun sind wir doch weit vom Thema ab. Ich bin raus aus der Disku.


----------



## mrBrown (23. Mai 2016)

Unsinn reden und dann verschwinden weil "zu weit weg vom Thema" war Punkt 1 im Trollseminar, oder?


----------



## Xyz1 (23. Mai 2016)

mrBrown hat gesagt.:


> Unsinn reden und dann verschwinden weil "zu weit weg vom Thema" war Punkt 1 im Trollseminar, oder?



Dann helf ihm doch, anstatt hier zu stänkern...


----------



## JStein52 (23. Mai 2016)

DerWissende hat gesagt.:


> Dann helf ihm doch


Hast du mal darüber nachgedacht ob er ihm nicht schon geholfen hat ? Ist dir aufgefallen dass der TE seit dem Tip von @mrBrown sich nicht mehr gemeldet hat ?


----------



## mrBrown (23. Mai 2016)

DerWissende hat gesagt.:


> Dann helf ihm doch, anstatt hier zu stänkern...


Ich dachte man sich ein Vorbild an dir nehmen? 

Abgesehen davon, lies meinen Beitrag oben mal, laut dir funktioniert der Tipp mit dem ich helfen wollte...


----------



## Meniskusschaden (23. Mai 2016)

DerWissende hat gesagt.:


> Der Börsendienst verbietet Robots und damit ist's Illegal.


Selbst wenn es einen Börsendienst gibt, der das tut, bedeutet es nicht, dass es für alle Börsendienste verboten ist, geschweige denn für jegliche Art von Diensten. Nebenbei bemerkt, bedeutet das Aussprechen eines Verbotes ja noch lange nicht, dass es gilt. Wenn ich beispielsweise wegen meines entlaufenen Hundes einen Zettel an's schwarze Brett vom Rewe-Supermarkt hefte und dann ein Verbot ausspreche, es zu lesen, wird sich wohl kaum jemand strafbar machen, wenn er es trotzdem tut. Insbesondere bei Diensten, die ohne jegliche Zustimmungsaktion des Nutzers aufrufbar sind, würde ich mal stark anzweifeln, dass es illegal ist, sie automatisiert zu lesen. Wenn man Informationen veröffentlicht, muss man eben auch damit leben, dass sie gelesen werden.
Man kann sich tatsächlich bei manchen Seiten anmelden, die eine automatisierte Abfrage nur gegen Genehmigung erlauben. Ich frage mich, woher du weißt, daß es nicht um so eine Seite geht und die Genehmigung vorliegt.
Man kann sich noch tausend weitere legale Nutzungsmöglichkeiten vorstellen, etwa das Abrufen eigener Vorgangsdaten vom Portal eines Lieferanten oder eben, wie von @mrBrown angedeutet, die Programmierung einer Suchmaschine.


DerWissende hat gesagt.:


> - Es ist Nicht illegal -> Es wird eine öffentliche API angeboten,
> - welche den Einsatz von HtmlUnit erübrigt.
> Das ist common practise...


Was soll uns das sagen? Ist jetzt alles verboten, was nicht üblich ist?



DerWissende hat gesagt.:


> Ganz einfach gesagt: Baumlol hat etwas ILLEGALES damit vor.


Wenn du davon überzeugt bist, solltest du es vielleicht bei der zuständigen Behörde anzeigen. Statt der vielen Behauptungen, die du hier aufgestellt hast, würde ich lieber mal eine Begründung hören, wie du darauf kommst. Da würde mich weniger ein Beispiel für eine illegale Nutzung interessieren, das es sicher gibt, als vielmehr die Begründung für die Schlußfolgerung, dass ausschließlich illegale Zwecke denkbar sind:


DerWissende hat gesagt.:


> Ist doch so, die Fragestellung legt nahe - oder: lässt nur eine logische Schlussfolgerung zu -, dass die aus den Antworten gewonnene Erkenntnisse nur für ILLEGALE Zwecke eingesetzt werden können - besser gesagt: nur werden!


----------



## Xyz1 (26. Mai 2016)

Man hätte es einfacher und schneller, wenn man "in Firefox direkt eingreifen" könnte...

Aber außer ein Plugin (extra Sprache) ist mir da nicht viel bekannt. Euch?

HtmlUnit ist leider wegen JavaScript, Images, CSS und Applets recht langsam, afaik muss JS erst in etwas Valides umgewandelt werden, bevor es innerhalb von Java ausgeführt wird.

Deaktiviert man den ganzen Quatsch, lässt sich auch nicht mehr so viel... wie nenn ich das jetzt... Illegales damit anstellen.

Neben der etwas langsamen Performance kommen dann noch einige Zusatzinformationen...

Edit: Und HtmlUnit ist für "Neuling" auch nicht sofort begreiflich.


----------



## Thallius (26. Mai 2016)

@Meniskusschaden

Mir scheint du hast noch nie ein Impressum irgendeiner Webseite gelesen oder? Dort gibt es eigentlich immer einen Passus der unerlaubtes weitergeben der auf dieser Seite angebotenen Daten untersagt. Und das ist auch gut so.

Klar gibt es sicherlich irgendwelche kleinen privaten Webseiten bei denen das nicht stehen wird die haben dann ja teilweise sogar nicht einmal ein Impressum, was übrigens wiederum ein Verstoß gegen geltendes gesetzt ist aber sobald du die Daten irgendeines professionellen webservices über einen bot, Robot oder eben eine andere Software ausliest und weiterverbreitest machstcdu dich strafbar. 

Insofern gebe ich dem wissenden recht, dass eine Webseite, welche keinen kostenlosen offiziellen Webservice für seine Daten anbietet eben nicht will, dass andere ihre Daten weiter verbreiten oder sonstwie für eigene Zwecke programmatisch benutzen.

Gruß

Claus


----------



## Xyz1 (26. Mai 2016)

Und noch wegen der Frage wegen Firefox:
http://stackoverflow.com/questions/5566959/control-firefox-using-java

Also ich sehe da "mehr weniger" Schwarz.^^


----------



## mrBrown (26. Mai 2016)

DerWissende hat gesagt.:


> Deaktiviert man den ganzen Quatsch, lässt sich auch nicht mehr so viel... wie nenn ich das jetzt... Illegales damit anstellen.



Da lässt sich sowieso nicht mehr illegales anstellen mit jedem Browser^^



Thallius hat gesagt.:


> @Meniskusschaden
> 
> Mir scheint du hast noch nie ein Impressum irgendeiner Webseite gelesen oder? Dort gibt es eigentlich immer einen Passus der unerlaubtes weitergeben der auf dieser Seite angebotenen Daten untersagt. Und das ist auch gut so.
> 
> ...



Die Website auslesen und dann mit den Daten illegales anstellen sind aber zwei völlig verschiedene Dinge. Auslesen heißt auch noch lange nicht weitergeben, sondern erstmal nur auslesen, nichts anderes, als zig Millionen Menschen täglich mit zig Browsern machen, da halt dann mit Darstellung. Nichts anderes machen auch Google, Yahoo, Microsoft etc.

Weiterverbreiten ist davon völlig unabhängig, nur weil ich mit dem Browser copy&past'en kann, will ja auch keiner Browser verbieten.


----------



## tommysenf (28. Mai 2016)

Thallius hat gesagt.:


> Mir scheint du hast noch nie ein Impressum irgendeiner Webseite gelesen oder? Dort gibt es eigentlich immer einen Passus der unerlaubtes weitergeben der auf dieser Seite angebotenen Daten untersagt. Und das ist auch gut so.



Wo genau kann ich diesen Passus zum Beispiel hier finden:
http://www.java-forum.org/pages/Impressum/ ?

Wenn ich jetzt ein Tool für den Systray entwickle, welches dieses Forum regelmäßig pollt und mir einen Hinweis gibt wenn ich eine neue private Message habe oder jemand auf einen meiner Beiträge antwortet handle ich dann illegal?


Solche Pauschalaussagen sind halt meist totaler Blödsinn. Automatisches Auslesen von Informationen ist jedenfalls nicht pauschal Verboten und daher sollte man auch niemandem der danach fragt vorwerfen illegal zu handeln. Mir fallen 100te legale Einsatzmöglichkeiten dafür ein.


----------



## Xyz1 (28. Mai 2016)

tommysenf hat gesagt.:


> Mir fallen 100te legale Einsatzmöglichkeiten dafür ein.



Keine einzige. 

1) das Forum ist ein Sonderfall, jeder stellt freiwillig Beiträge ein,
2) du handelst in diesem Fall nicht illegal, der TO hingegen schon.


----------



## JStein52 (28. Mai 2016)

DerWissende hat gesagt.:


> du handelst in diesem Fall nicht illegal, der TO hingegen schon.


Das ist einfach nur Stuss


----------



## mrBrown (28. Mai 2016)

DerWissende hat gesagt.:


> Keine einzige.
> 
> 1) das Forum ist ein Sonderfall, jeder stellt freiwillig Beiträge ein,
> 2) du handelst in diesem Fall nicht illegal, der TO hingegen schon.



Wolltest du nicht schon längst hier raus sein?

Ich kenne auch keine Möglichkeit zur legalen Nutzung - zumindest wenn man alle legalen Dinge als Sonderfall abstempelt...

1: Wird man woanders gezwungen, Internetseiten zu füllen?
2: 





JStein52 hat gesagt.:


> Das ist einfach nur Stuss


----------



## JStein52 (28. Mai 2016)

Nur mal so, das ist das Impressum bzw. die Nutzungsbedingungen meiner Bank:

Die zum Abruf bereit gehaltenen und angezeigten Börsen- und Wirtschaftsinformationen, Kurse, Indices, Preise, Nachrichten und allgemeinen Marktdaten sowie mit den im Informer enthaltenen Darstellungswerkzeugen generierte und angezeigte Ergebnisse dienen ausschließlich zur Information der Besucher des xxxxxxx Online-Angebots und stellen keine Anlageberatung oder sonstige Empfehlung dar. Die Weiterleitung dargestellter Kursinformationen ist nicht gestattet.

Das Abrufen, Kopieren, Abspeichern und das Be- und Umarbeiten der Webseiten, deren Inhalten oder der mit den Darstellungswerkzeugen generierten oder angezeigten Ergebnisse, im Ganzen oder in Teilen, darf allein zum privaten, nicht kommerziellen Gebrauch vorgenommen werden. Urheberrechtshinweise und Markenbezeichnungen dürfen weder verändert noch beseitigt werden.

Wo wäre da ein Tool das z.B. einmal am Tag meinen Kontostand ausliest verboten ???


----------



## Xyz1 (28. Mai 2016)

mrBrown hat gesagt.:


> Wolltest du nicht schon längst hier raus sein?



Berechtigte Frage.

Baumlol hat sich bisher nicht wieder gemeldet. Sein Nick usw. legen nahe, dass er kein Interesse an einer adäquaten Antwort besitzt. Deswegen darf auch etwas off topic diskutiert werden, imo.

Hier kümmert's wahrscheinlich wenig, wenn man die Webseite automatisch verarbeitet. Es sei denn, man generiert automatisch Beträge, dann würde man wahrscheinlich gesperrt werden.

Aber alle anderen Seiten, insbesondere kommerzielle, mögen "Roboter" gar nicht gerne. Ich bleibe bei meiner Meinung.

@ Stein : Bei deiner Bank könnte schlimmstenfalls auch nicht so viel passieren. Also deine Konten werden nicht eingefroren oder so etwas. Push auf's Handy finde ich ebenso interessant wie unsicher, btw.


----------



## mrBrown (28. Mai 2016)

DerWissende hat gesagt.:


> Berechtigte Frage.
> 
> Baumlol hat sich bisher nicht wieder gemeldet. Sein Nick usw. legen nahe, dass er kein Interesse an einer adäquaten Antwort besitzt. Deswegen darf auch etwas off topic diskutiert werden, imo.
> 
> ...




Das man von den Nicks auf nichts schließen sollte ist doch offensichtlich...
Aber immerhin bist du schon von "illegal" zu "nicht gemocht" gelange...


----------



## tommysenf (28. Mai 2016)

mrBrown hat gesagt.:


> Das man von den Nicks auf nichts schließen sollte ist doch offensichtlich...



Sehr gute Einstellung. Die Wichtigkeit dieser Regel sieht man ja schon am Nicknamen "DerWissende"


----------



## JStein52 (28. Mai 2016)

DerWissende hat gesagt.:


> Bei deiner Bank könnte schlimmstenfalls auch nicht so viel passieren


Und wo passiert was ? Bei der Pentagon-Website ?



DerWissende hat gesagt.:


> Push auf's Handy finde ich ebenso interessant wie unsicher


Ich sage ja nicht dass ich das machen will. Ich sage nur es wäre nicht illegal. Drei andere Banken die ich eben nachgesehne habe haben ähnliche Nutzungsbedingungen. Kannst du vielleicht mal den Wortlaut so eines Impressums posten bei dem das verboten/illegal ist ?


----------



## Thallius (29. Mai 2016)

tommysenf hat gesagt.:


> Wo genau kann ich diesen Passus zum Beispiel hier finden:
> http://www.java-forum.org/pages/Impressum/ ?
> 
> Wenn ich jetzt ein Tool für den Systray entwickle, welches dieses Forum regelmäßig pollt und mir einen Hinweis gibt wenn ich eine neue private Message habe oder jemand auf einen meiner Beiträge antwortet handle ich dann illegal?
> ...



Ja du handelst dann illegal. Weil die Webseite lebt von ihren Werbeeinnahmen durch die Werbung die dungezwungenermassen siehst wenn du deine privaten Nachrichten checkst. Mit deinem Programm umgehst du dieses und schadest damit dem Betreiber.


----------



## JStein52 (29. Mai 2016)

Thallius hat gesagt.:


> Ja du handelst dann illegal. Weil die Webseite lebt von ihren Werbeeinnahmen


Jetzt wird es aber komisch. Hier entwickelt jeder seine eigene Definition von illegal. Illegal ist es für mich dann wenn es im Impressum oder in Nutzungsbedingungen die ich akzeptiere verboten wird. Wenn es das nicht wird ist auch nichts illegal. Ist es denn auch illegal wenn ich mir den ganzen Werbemist der so links und rechts hochpoppt gar nicht anschaue ?

Wobei ich mich gerade mal bemüht habe hier im Forum Werbung zu finden, war aber keine. Und zur Zeit sind 31 Bots hier im Forum aktiv.


----------



## Cromewell (29. Mai 2016)

Ich habe bisher auch nur Werbung gesehen, als ich nicht angemeldet war - sprich, ich war Gast.


----------



## AndiE (29. Mai 2016)

Ich würde ja mal auf den Anfangspost zurückkommen. Der TO meint, dass die Webseite mit Ajax arbeitet. Woher will er das wissen? Bisher dachte ich, der Endnutzer sieht das nicht. Und da denke ich mal, es ist seine eigene Webseite, die er baut, und deren Werte er auch in einer Anwendung nutzen will. Es gibt ja die Möglichkeit über einen App-Server eine dynamische Webseite und einen Service auszuliefern. aber das ist vielleicht dem TO nicht so bekannt.


----------



## tommysenf (29. Mai 2016)

Thallius hat gesagt.:


> Ja du handelst dann illegal. Weil die Webseite lebt von ihren Werbeeinnahmen durch die Werbung die dungezwungenermassen siehst wenn du deine privaten Nachrichten checkst. Mit deinem Programm umgehst du dieses und schadest damit dem Betreiber.


Mit der Begründung wären auch AdBlocker illegal, was aber nicht der Fall ist, wie mehrere Gerichtsverfahren nachgewiesen haben.


----------



## Xyz1 (29. Mai 2016)

Wenn AdBlock illegal ist, hab ich mir wahrscheinlich schon mehrere Strafen eingehandelt... (Es vermeidet ja eigentlich unnötigen Traffic.)

Hier auf der Seite sieht man ohne Werbe-Blocker öfters mal Werbung: "Lerne Java hier-und-da...", oder so ähnlich...

Ich glaube nicht, das Baumlol Schutzmechanismen auf seiner eigenen Website umgehen will... Und auf Websites ist der Betreiber der "Hausherr".


----------



## mrBrown (29. Mai 2016)

DerWissende hat gesagt.:


> Wenn AdBlock illegal ist, hab ich mir wahrscheinlich schon mehrere Strafen eingehandelt... (Es vermeidet ja eigentlich unnötigen Traffic.)
> 
> Hier auf der Seite sieht man ohne Werbe-Blocker öfters mal Werbung: "Lerne Java hier-und-da...", oder so ähnlich...



Die sieht man aber nicht als angemeldeter Nutzer



DerWissende hat gesagt.:


> Ich glaube nicht, das Baumlol Schutzmechanismen auf seiner eigenen Website umgehen will... Und auf Websites ist der Betreiber der "Hausherr".


Er will auch generell keine Schutzmechanismen umgehen^^


----------



## Xyz1 (29. Mai 2016)

mrBrown hat gesagt.:


> Er will auch generell keine Schutzmechanismen umgehen^^



Das können wir erst feststellen, wenn er sich noch mal meldet - VORAUSGESETZT, wir haben ihn mit unserer Diskussion noch nicht "abgeschreckt"...


----------



## Meniskusschaden (29. Mai 2016)

Hier ist noch ein Link zu unserer Diskussion (besonders interessant finde ich die Bemerkung zur einseitigen Beschränkung in Absatz 3): http://medien-internet-und-recht.de/volltext.php?mir_dok_id=1912


----------

