Moin Leute,
Ich habe mir einen Kleinen Java Webcrawler gebaut, der alle Links mir von einer Homepage ausgiebt.
Ich habe auch hin bekommen, dass wenn zwischen den html Tags <A> & </A>
Text steht, das der mir ausgegebn wird.
Ich würde nun aber auch gerne HTML code ausgeben wenn der zwischen den Tags steht?
Hier mein script
Vielen Dank
Ich habe mir einen Kleinen Java Webcrawler gebaut, der alle Links mir von einer Homepage ausgiebt.
Ich habe auch hin bekommen, dass wenn zwischen den html Tags <A> & </A>
Text steht, das der mir ausgegebn wird.
Ich würde nun aber auch gerne HTML code ausgeben wenn der zwischen den Tags steht?
Hier mein script
Java:
URL url = null;
try {
url = new URL( "http:" );
} catch (MalformedURLException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
URLConnection con = null;
try {
con = url.openConnection();
String data = URLEncoder.encode("user_choice", "UTF-8") + "=" + URLEncoder.encode("Enter", "UTF-8");
data += "&" + URLEncoder.encode("page", "UTF-8") + "=" + URLEncoder.encode(""+1, "UTF-8");
con.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(con.getOutputStream());
wr.write(data); wr.flush();
} catch (IOException e1) {
e1.printStackTrace();
}
BufferedReader br = null;
try {
br = new BufferedReader( new InputStreamReader( con.getInputStream() ) );
} catch (IOException e) {
e.printStackTrace();
}
HTMLEditorKit editorKit = new HTMLEditorKit();
HTMLDocument htmlDoc = new HTMLDocument();
htmlDoc.putProperty( "IgnoreCharsetDirective", Boolean.TRUE );
try {
editorKit.read( br, htmlDoc, 0 );
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BadLocationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String[] ALink = new String[500];
String[] AText = new String[500];
int a = 0;
{// LINKS
int length;
String text = null;
HTMLDocument.Iterator iter = htmlDoc.getIterator( HTML.Tag.A );
while( iter.isValid() )
{
//System.out.println( "a: " + iter.getAttributes().getAttribute( HTML.Attribute.HREF ) );
length = iter.getEndOffset()-iter.getStartOffset();
try {
text = htmlDoc.getText(iter.getStartOffset(), length);// hier lese ich den Test aus, aber ich möchte ja den HTML code :)
} catch (BadLocationException e) {
e.printStackTrace();
}
//System.out.println( "->: " + text );
ALink[a] = (String) iter.getAttributes().getAttribute( HTML.Attribute.HREF );
AText[a] = text;
a++;
iter.next();
}
}
Vielen Dank