webseite holen

Status
Nicht offen für weitere Antworten.
M

marek

Gast
hallo. ich möchte auf dieser seite mal als erster auf einen eintrag antworten. dazu möchte ich ein programm schreiben, dass die webseite immer wieder anfordert und selbst prüft, ob sie sich verändert hat.
wie kann ich mit java eine webseite anfordern/holen/aufrufen?

ich hoffe ihr versteht was ich meine.

mfg, marek
 

André Uhres

Top Contributor
Code:
//package swing03;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import javax.swing.*;
public class URL_Demo extends JFrame {
    public URL_Demo() {
        initComponents();
    }
    private void initComponents() {
        setTitle("URL Connect");
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        toolbar = new JPanel();
        tabbedpane = new JTabbedPane();
        combobox = new JComboBox();
        combobox.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
            "http://kqe.de/seite_1.html",
            "http://news.bbc.co.uk/sport1/hi/football/teams/a/arsenal/default.stm" ,
                    "http://www.amazon.com/"
        }));
        combobox.setPreferredSize(new java.awt.Dimension(500, 22));
        combobox.setSelectedIndex(0);
        combobox.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                displayPage();
            }
        });
        toolbar.add(combobox);
        getContentPane().add(toolbar, BorderLayout.NORTH);
        getContentPane().add(tabbedpane);
        setExtendedState(JFrame.MAXIMIZED_BOTH);
        setVisible(true);
        displayPage();
    }
    private void displayPage() {
        urlString = combobox.getSelectedItem().toString();
        setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
        URL url = null;
        InputStream input = null;
        try{
            url = new URL( urlString );
        }catch(MalformedURLException ex){
            ex.printStackTrace();
        }
        StringBuffer strb = null;
        try{
            try{
                input = url.openStream();
            }catch(UnknownHostException ex){
            }
            if( input != null ){
                int c = input.read();
                strb = new StringBuffer();
                while( c != -1 ){
                    char cc = (char)c;
                    strb.append(cc);
                    c = input.read();
                }
            }
        }catch(IOException ex){
            ex.printStackTrace();
        }
        scrollpane = new JScrollPane();
        tabbedpane.add(scrollpane);
        tabbedpane.setTitleAt(count++, urlString);
        tabbedpane.setSelectedComponent(scrollpane);
        editorpane = new JEditorPane();
        editorpane.setEditable(false);
        editorpane.setContentType("text/html");
        scrollpane.setViewportView(editorpane);
        if( strb != null ){
            editorpane.setText(strb.toString());
            editorpane.setCaretPosition(0);
        }else{
            Toolkit.getDefaultToolkit().beep();
            String htmlText =
                    "<html>"
                    +"<body BGCOLOR=\"#ffffe0\">"
                    +"
Connection failed: 
 " +urlString+
                    "

Make sure you are connected to the Internet"
                    +"</body>"
                    +"</html>";
            editorpane.setText(htmlText);
        }
        setCursor(Cursor.getDefaultCursor());
    }
    public static void main(String args[]) {
        new URL_Demo();
    }
    private String urlString;
    private JEditorPane editorpane;
    private JPanel toolbar;
    private JTabbedPane tabbedpane;
    private JComboBox combobox;
    private JScrollPane scrollpane;
    private int count;
}
 
Y

youssef

Gast
Hallo.
ich finde dieses Demo-Beispiel sehr interessant. ich habe es ausprobiert aber bekomme nur Connection timed error bei den Aufruf von openStream()
funktioniert das Beispiel bei euch ?
ich habe nach der Ursachen im google gesucht. ein paar Beiträge weisen auf der Verwendung von Threads hin.
ich habe auch das Öffnen der Url und das Lesen in einem Thread gepackt aber ich bekomme trotdem denselben Fehler.

youssef
 
Y

youssef

Gast
und woran kann es liegen dass bei mir nicht funktioniert.
ich habe doch eine Internetverbindung und ich kann die Seiten von Browser aufrufen.
weiss jemand bescheid

youssef
 
M

marek

Gast
danke!
bei mir funktionierts auf jeden fall (nur fehler bei der darstellung).
jetzt muss ich noch gucken ob ich den quelltext kapier und selbst was draus machen kann.
mfg, marek
 
M

marek

Gast
youssef hat gesagt.:
und woran kann es liegen dass bei mir nicht funktioniert.
ich habe doch eine Internetverbindung und ich kann die Seiten von Browser aufrufen.
weiss jemand bescheid

youssef

ich wette deine firewall blockiert java. hast du zonealarm oder so was?
 
Y

youssef

Gast
es hat sich erledigt.
es lag an der Proxy einstellungen:
habe ich gelöst mit:
Code:
System.setProperty("proxySet", "true");
System.setProperty("proxyHost", "180.161.0.5");
System.setProperty("proxyPort", "3128");

youssef
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Webseite holen, Knöpfe drücken, Textfelder holen, etc. Netzwerkprogrammierung 7
J Webseite mit Kundenportal Netzwerkprogrammierung 5
C Quelltext Webseite schlägt noch immer fehl Netzwerkprogrammierung 30
H Daten auf einer Webseite eintragen Netzwerkprogrammierung 11
K Mit Java ASPX Webseite fern steuern Netzwerkprogrammierung 2
D Webseite(mit JavaScript-Element) mit Java auslesen Netzwerkprogrammierung 0
B HTTP Webseite unter IP-Addresse nicht aufrufbar - unter Domain schon Netzwerkprogrammierung 9
O HTTP Zugriff und Aktionen auf einer Webseite ausführen Netzwerkprogrammierung 9
S Automatischer Login auf einer Webseite Netzwerkprogrammierung 12
H Daten an Textfeld einer Webseite schicken Netzwerkprogrammierung 2
E Webseite mit Login laden Netzwerkprogrammierung 5
J VideoStream von Webseite lesen/speichern Netzwerkprogrammierung 7
M Download von Webseite Netzwerkprogrammierung 4
T Actions WebSeite Netzwerkprogrammierung 3
M Per eigenem Java SE Prog einloggen auf Webseite Netzwerkprogrammierung 19
aze Applet von Webseite aufrufen und mit diesem kommunizieren Netzwerkprogrammierung 8
hdi Webseite auf Download-Links prüfen und Download starten? Netzwerkprogrammierung 7
S Zugriff auf Webseite Netzwerkprogrammierung 3
J programm zum autom. ausdruck einer webseite Netzwerkprogrammierung 2
P Webseite ausfüllen und abschicken Netzwerkprogrammierung 6
G Webseite <=> Java Netzwerkprogrammierung 4
S webseite mit cookie besuchen Netzwerkprogrammierung 5
M webseite automatisch ausfüllen und abschicken Netzwerkprogrammierung 2
E In Webseite einloggen/ GET, POST an PHP-Script übergeben Netzwerkprogrammierung 2
agent47 Fritz!Box Session ID holen Netzwerkprogrammierung 1
Rudolf Socket Externe IP holen und in Textfeld setzen Netzwerkprogrammierung 3
D Problem beim holen einer PHP-Seite via HttpClient Netzwerkprogrammierung 19
M den Server aus seinem accept-Zustand holen Netzwerkprogrammierung 3

Ähnliche Java Themen


Oben