# Queltext einer Webseite auslesen



## u6g58h8i67roi (26. Nov 2007)

Ich möchte den inhalt einer Webseite auslesen und auf relevanten inhalt überprüfen das heißt im klartext ich möchte ein datum auslesen und eine zahl (ein integer mit bis zu 7 stellen) die nachher in eine berechnung eingefügt werden müssen

wie kann ich jetzt java diese aufgabe lösen lassen?


ein freund von mir hat mir das so in etwa gezeigt



> try
> {
> URL url = new URL("http://knuddels.de/ww/" + URLEncoder.encode(N ick));
> BufferedReader bufferedreader = new BufferedReader(new                 InputStreamReader(url.openConnection().getInputStream()));
> ...




aber das klappt irgendwie nich =(


----------



## Alien (26. Nov 2007)

Hallo,

ich habe heute ein Programm fertig gestellt, mit dem du den Quelltext einer Website downloaden kannst.
hier klicken
Mit diesem Code hast du schonmal den Quelltext. Jetzt musst du ihn "nur noch" auswerten ;-) Wie das funktioniert ist wieder eine andere Geschichte ;-)

MfG
Michael


----------



## u6g58h8i67roi (27. Nov 2007)

ich bekomm heut noch nen raster und schmeiß den rechner ausm fenster -.-*

das else scheint falsch zu sein, aber anscheinend bin ich zu dumm den fehler zu erkennen, oder einfach zu übermüdet



```
package DNA.java;



import java.awt.*;
import java.text.*;
import java.io.* ;
import java.util.*;
import java.lang.*;
import javax.swing.*;
import java.net.* ;

public class Main {
    
    
    public Main() {}
    
    
    public static void main(String[] berechnung) throws Exception {
        
       String line;
    
      
      BufferedReader bReader = new BufferedReader(new InputStreamReader(System.in));
      String userinput = "";
      String read = "";
      URL url;
      int i = 0;
      
      System.out.print("\thttp://");
      userinput = "http://knuddels.de/ww/"+bReader.readLine(); //System.out.println("Userinput: "+url);
      url = new URL(userinput);
      
      BufferedReader br1 = new BufferedReader(new InputStreamReader(url.openStream()));
      
      System.out.println("");
      while((read = br1.readLine()) != null)
          
          
          
       
          
      {
         i++;
         System.out.println(i+"\t| "+read);
      } 
      
      
      
      
      
        while((line = bReader.readLine()) != null) {
            String nick = bReader.readLine();   
                // Wenn Zeile (Hier auch als line dafiniert) Das blabla beinhaltet, dann führe Block aus
                if (line.contains ("<FONT FACE=\"Arial\">
[B]"));
                {
                    // reader schließen
                    bReader.close();
                    // Blah-test
                }
                if(line.contains("../../images/ico_ribbon.gif"));
                {
                

                // Ersetzt das Geblubber, durch nix ^^
                line.replace("<FONT FACE=\"Arial\">
[B]" + nick +"<FONT COLOR=\"#000000\" SIZE=2>[/B]<FONT COLOR=\"000000\"><a href=\"http://spenden.knuddels.de\" target=_blank><img border=0 src=\"../../images/ico_ribbon.gif\"></a> hat sich am [B]", "");
                String datum = line.substring(0, 10);                     
                }
                else
                {
               // Wenn kein BLAH vorhanden ersetze das:
               line.replace("<FONT FACE=\"Arial\">
[B]" + nick + "<FONT COLOR=\"#000000\" SIZE=2>[/B]<FONT COLOR=\"000000\"> hat sich am [B]\"", "");
               line.replace("[/B]<FONT COLOR=\"000000\"> um ", "");
                }
               
                
                
                
                
        }
      
    }
    }
```


----------



## TheTobi (27. Nov 2007)

Was gibt er denn für einen Fehler aus?? Hab meine Kristallkugel hier grad nicht rumliegen, muss sie bei Zeiten mal suchen.


P.S.: Hat jemand ne ahnung was ein Queltext ist?? 

Quält der mich vielleicht??


----------



## u6g58h8i67roi (27. Nov 2007)

der fehler lag in den zeilen


```
if (line.contains ("<FONT FACE=\"Arial\">
[B]"));
```

und 


```
if(line.contains("../../images/ico_ribbon.gif"));
```

die ; waren zuviel

P.S. nach fast 20 guten antworten MUSSTE ja eine blöde kommen =) , gitb halt überall schwarze schafe ,egal solang es nicht überhand nimmt =)


----------



## u6g58h8i67roi (28. Nov 2007)

ich wollte mal wissen warum reaplce hier nicht funktioniert?
ich bekomme nach dem replace immernoch die ursprüngliche ausgabe.


```
package DNA.java;



import java.awt.*;
import java.text.*;
import java.io.* ;
import java.util.*;
import java.lang.*;
import javax.swing.*;
import java.net.* ;

public class Main {
    
    
    public Main() {}
    
    
    public static void main(String[] berechnung) throws Exception {
    
    
     BufferedReader br0 = new BufferedReader(new InputStreamReader(System.in));
      String nick = "";
      String read ;
      read = new String ("lol");
      URL url;
      int i = 0;
      
      System.out.println("Bitte nick eingeben");
      nick = "http://knuddels.de/ww/"+br0.readLine(); 
      
      url = new URL(nick);
      System.out.println("Userinput: "+url);
      BufferedReader br1 = new BufferedReader(new InputStreamReader(url.openStream()));
      
      System.out.println("");
      while((read = br1.readLine()) != null)
      {
         i++;
         System.out.println(i+"\t| "+read);
         
         read.replace ("<HTML><HEAD><META HTTP-EQUIV=\"Refresh\" CONTENT=\"0; URL=", "");
         read.replace ("\"></HEAD></HTML>", "");
         System.out.println(read);
      }
     
      br0.close();
      
      
    }}
```


----------



## u6g58h8i67roi (28. Nov 2007)

ich sollte nicht immer vorschnell fragen stellen -.-*

ich musste noch ein read =
davorhauen


----------

