# Inhalt von Webseite auslesen



## N00bie :) (12. Jul 2004)

Hi Leute, ich habe mit Hilfe eines Buches dieses kleine Programm erstellt, was mit einer Url als Parameter
den Quelltext der Url zurückliefert.
Nun wollte ich mal fragen ob jemand eine Möglichkeit sieht, nicht den Quelltext, sondern de "richitigen" Text der auf der entsprechenden Website angezeigt wird zu entnehmen, quasi als würde ich mit Strg+A alles auf der Seite markieren..  :bahnhof: ???

Jemand ne Idee, oder ist das so gar nicht umzusetzen


Danke und Gruß
N00bie




```
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;

public class GetFile {
    public static void main(String[] arguments) {
        if (arguments.length == 1) {
            PageFrame page = new PageFrame(arguments[0]);
            page.show();
        } else
            System.out.println("Usage: java GetFile url");
    }
}

class PageFrame extends JFrame {
    JTextArea box = new JTextArea("Getting data ...");
    URL page;

    public PageFrame(String address) {
        super(address);
        setSize(600, 300);
        JScrollPane pane = new JScrollPane(box);
        getContentPane().add(pane);
        WindowListener l = new WindowAdapter() {
            public void windowClosing(WindowEvent evt) {
                System.exit(0);
            }
        };
        addWindowListener(l);

        try {
            page = new URL(address);
            getData(page);
        } catch (MalformedURLException e) {
            System.out.println("Bad URL: " + address);
        }
    }

    void getData(URL url) {
        URLConnection conn = null;
        InputStreamReader in;
        BufferedReader data;
        String line;
        StringBuffer buf = new StringBuffer();
        try {
            conn = this.page.openConnection();
            conn.connect();
            box.setText("Connection opened ...");

            in = new InputStreamReader(conn.getInputStream());
            data = new BufferedReader(in);

            box.setText("Reading data ...");
            while ((line = data.readLine()) != null)
                buf.append(line + "\n");

            box.setText(buf.toString());
        } catch (IOException e) {
            System.out.println("IO Error:" + e.getMessage());
        }
    }

}
```


----------



## bygones (12. Jul 2004)

quelltext in einen string einlesen, dann über regex alle code tags entfernen


```
String text = // einlesen der URL
text = text.replaceAll("</?.+?>", "");
```


----------



## Guest (12. Jul 2004)

Ja, das Hauptproblem besteht aber darin, dass ich gerne Inhalte von Seiten kopieren würde, die das Auslesen
des Quelltextes nicht erlauben oder irgendwelche Php Seiten, deren Quelltext sich nicht mit dem deckt, was man sehen kann. Deswegen fragte ich ob es auch eine Möglichkeit gibt, den text auf der Seite quasi wirklich zu markieren.


----------



## meez (12. Jul 2004)

Htmlparser: http://htmlparser.sourceforge.net


----------

