# Daten aus Tabelle von Webseite auslesen



## Umbra (6. Dezember 2004)

Hallo

Weiß einer wie ich effektiv Daten aus einer Tabelle in einer Webseite auslesen kann?
Ich habe z.B. eine Webseite wie hier : http://www.aktuell3000.de/ladung_su...&ankunftsland=&typ_der_ladung=&abholtag=&tag=

Und hole mir die Seite mit:

import java.net.*;
import java.io.*;
public class TestSucheModul {

    public static void main(String[] args) {
        try
        {
          URL url = new URL( "http://www.tutorials.de/" );
          Reader is = new InputStreamReader( url.openStream() );
          BufferedReader in = new BufferedReader( is );
          for ( String s; ( s = in.readLine() ) != null; )
            System.out.println( s );

          in.close();
        }
        catch ( MalformedURLException e ) {
            System.out.println( "MalformedURLException: " + e );
        }
        catch ( IOException e ) {
            System.out.println( "IOException: " + e );
        }

    }
}

}


Dies Spuckt nun den reinen Quellcode der Seite wieder aus.
Damit könnte ich vieleicht mit viel Mühe auch an die Daten kommen die Ich haben will, wenn es aber eine einfachere Methode gibt würde ich diese doch um einiges vorziehen.


----------



## cham (6. Dezember 2004)

Es kommt drauf an, was Du mit den Daten tun willst. Falls Du Sie einfach wieder anzeigen willst, müsstest Du quasi einen Browser nachbilden. 

Zum weiterverarbeiten müsstest Du durch das HTML durchparsen. Besser wäre da vielleicht eine Nachfrage beim Anbieter ob er Webservices oder RDF anbieten könnte.


----------



## torsch2711 (6. Dezember 2004)

Hi,

also ich wüsste jetzt nicht, dass es eine spezielle Library zum herauslesen von HTML Spezifischen Tags gibt, noch besser: eine um Tabellen aus Webseiten zu ziehen. Theoretische würde diese auch nichts anderes machen als den HTML Code zu parsen und auf die Tabellen Tags reagieren. Sprich du müsstest meines Wissens selbst dies übernehmen.

Oder schau mal unter diesem Link, ob du die gewünschte Bibliothek findest:

http://www.jdocs.com/apis.jsp

(Dank an Christian Fein, für diesen superben Link, hilft mir immer wieder weiter  )


----------



## SOSUS (10. Dezember 2004)

Nur so ein Gedanke:

Könnte man nicht mittels XSL aus der html die Tags für die Tabelle selektieren und in
eine XML Datei transformieren und diese dann mit JDom oder so einlesen...!?


----------



## cham (10. Dezember 2004)

dazu müsste die HTML Tabelle aber wohlgeformtes XML enthalten. Das ist meist nicht der Fall.


----------



## SOSUS (13. Dezember 2004)

Meintest du wohlgeformtes HTML?

Weil ich kann doch per XSL sagen: Nimm den Tag der mit <t> (bspw.) beginnt und schreib ihn um in irgendeinen anderen Tag meiner Wahl. Das entstehende XML les ich dann aus. 
Und genauso gehe ich bei den Unterelementen vor.


----------



## cham (14. Dezember 2004)

HTML ist nichts weiter als ein XML Dialekt, von daher meinte ich auch XML. Aber mit Seiten parsen gibt es immer wieder Probleme.


----------



## SOSUS (14. Dezember 2004)

Da geb ich dir Recht!
Die Probleme fangen schon bei der Codierung an. Hab das mal ausprobiert....
Also ist XSL keine Alternative. War ja auch nur so ein Gedanke ;-)


----------



## SOSUS (14. Dezember 2004)

Bitte mal hier schauen:

http://www.galileocomputing.de/open...el_13_006.htm#Rxx365java130060400047F1F018100


----------



## encaladus (19. Februar 2012)

Sorry falscher Thread


----------



## Thomas Darimont (19. Februar 2012)

Hallo,

da es hier bisher noch nicht erwähnt wurde... 
eine einfache Möglichkeit wäre htmlunit:
http://htmlunit.sourceforge.net/table-howto.html

Gruß Tom


----------

