Du kan godt parser et html dokument.
Først skal du smide dokumentet i en JEditorPane.
JEditorPane pane = new JEditorPane();
Så skal du lægge et dokument i f.eks.
pane.setPage( \"
http://www.eksperten.dk\" );
Dernæst får du et dokument ud som du kan undersøge om det er et html dokument. Hvis det er kan du iterere gennem dokumentet. Nedenstående kode eksempel bruger jeg selv til at ekstrahere alle href tags i et html dokument og lave en popup menu med adresserne. Jeg ved ikke om det er muligt at lede efter alle tags, jeg har kun prøvet at iterere dennem en bestemt type tags ad gangen.
Document document = pane.getDocument();
if ( document instanceof HTMLDocument ) {
HTMLDocument htmldoc = (HTMLDocument)document;
HTMLDocument.Iterator iterator = htmldoc.getIterator( HTML.Tag.A );
iterator.next();
while ( iterator.isValid() ) {
AttributeSet attr = iterator.getAttributes();
boolean found = false;
Enumeration enum = attr.getAttributeNames();
while ( enum.hasMoreElements() && ! found ) {
Object name = enum.nextElement();
if ( name.equals( HTML.Attribute.HREF ) ) {
found = true;
Object value = attr.getAttribute( name );
boolean problem = false;
URL url = null;
try {
url = new URL( (String)value );
} // try
catch ( MalformedURLException murle ) {
problem = true;
} // catch
if ( ! problem ) {
JButton button = new JButton( (String)value );
menu.add( button );
button.addActionListener( buttonListener );
} // if
} // if
} // while
iterator.next();
} // while
} // if