Unvollständiger Quelltext ausgelesen

Status
Nicht offen für weitere Antworten.

Spi

Mitglied
Ich schreibe für private Zwecke ein Programm, bei dem unter anderem die Website SpiRyu's deviantART gallery zugreife... Wenn ich den Quelltext dieser Website mit Firefox(version 2) ansehe, befindet sich dort an manchen Stellen eckige Klammern, in denen wiederum eckige Klammern stehen mit verschiedenen Nummern drinnen. Diese Nummern muss ich auslesen.
Wenn ich nun aber diese Website mit Java einlese, steht in diesen eckigen Klammern plötzlich nichts.
Mir ist dabei aufgefallen, dass im Internet Explorer, und im Safari die Klammern auch leer sind.
Warum ist das so und kann ich doch irgendwie auf diese eckigen Klammern zugreifen?
Hier ist ein Teil meines Quelltextes:
Java:
URL url = new URL("http://spiryu.deviantart.com/gallery/");
URLConnection con = url.openConnection();
con.addRequestProperty("user-agent", "firefox");//sonst gibts 403
BufferedReader r = new BufferedReader(new InputStreamReader(con.getInputStream()));
 
Zuletzt bearbeitet:
T

tuxedo

Gast
Was für eckige Klammern und Zahlen sollen das denn sein? Im Quelltext der Seite hab ich beim überliegen mit FF3.5 nix gesehen.

- Alex
 

Spi

Mitglied
Die stehen in einer sehr langen Zeile die mit "DiFi.chache{" anfängt...
Das in den eckigen Klammern, was ich meine sieht ca. so aus:
":[["1","128276400"],["1","128276013"],["1","128275732"]... usw
 

Localtime

Mitglied
Hi Spi,

das sieht mir ganz so aus, als ob die Seite excessiv mit JavaScript (Ajax) arbeitet. Nach dem ersten Laden der Seiten werden die Unterseiten sehr schnell trotz den Grafiken aufgebaut. Schätze ein Großteil der Grafiken werden vorgeladen.

Da das ganze ein gewerblicher Shop ist hat sich wohl jemand was ganz Tolles in JavaScript einfallen lassen, damit die Seite nicht geklaut werden kann (eventuell auch um die Originalblider zu schützen).

Auf jeden Fall steht da drin, wie das Menu aufgebaut ist, was im Menu angezeigt wird, welcher Link welche Farbe haben soll, ob ein Untermenu angezeigt werden soll ... usw.

Das ist bestimmt ein ganz tolles Content Manage System.


Gruß Localtime
 

Spi

Mitglied
Öhm... ja so ca. hab ich das auch schon verstanden...^^
Aber gibt es trotzdem irgendeine Möglichkeit darauf zuzugreifen?
 

Localtime

Mitglied
Wenn die eigentliche Seite nur ein Grundgerüst besitzt (Ajax) müßtest Du erst in Java einen Browser schreiben, der alles nachlädt. Ob man dann da rankommt, weiß ich nicht. Habe mich damit noch nicht beschäftigt.

Ist das ganze Gedöns von Anfang an drin und Du weißt wonach Du suchst:
die kompl. Seite in einen String und dann --> Regular Expression.

Gruß Localtime
 

Spi

Mitglied
es ist alles drin nur nicht das in den klammern was ich brauche... das ist das problem
 
T

tuxedo

Gast
Andere Idee wäre:

Vielleicht hat Firefox oder ein anderer Browser einen Kommandozeilenparameter der die angegebene Seite lädt, rendert und das HTML Ergebnis speichern kann.

Dann müsstest du nur die HTML File einlesen und parsen.

- Alex
 

Spi

Mitglied
Wie meinst du das? Dass ich den Quelltext speichere oder was?
Nun mein Programm sollte aber nun mal auch bei anderen deviantArt-Gallerien funktionieren, deswegen geht das nicht.
 
T

tuxedo

Gast
Ich meine, dass du vielleicht einen echten Browser das rendern und generieren des korrekten Quellcodes überlassen sollst. Dann musst DU dich nicht mit unvollständigem HTML Code herumschlagen und kannst einfach das nutzen, was FF, Opera, Safari, IE, ... dir liefern. Vorrausgesetzt einer dieser Browser kann per Kommandozeilenparameter oder ähnlichem dern Quelltext einer angegeben URL runterladen.

- Alex
 

Spi

Mitglied
Aha ok, ich verstehe was du meinst. Ich werd mal schauen, was ich machen kann.

Edit:
Das war Gott sei Dank nicht nötig... Habe auf einer anderen Seite (die Statistiken) alles gefunden was ich brauchte, und brauch daher diese Sachen nicht mehr.
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben