Salut,
Pour récupérer l'arbre DOM : htmlparser : http://htmlparser.sourceforge.net/
Parser parser = new Parser ("http://whatever");
NodeList list = parser.parse (null);
// do something with your list of nodes.
Pour le XML, parcourir la NodeList (getChildren, getNextSibling de la classe Node) et générer le XML à la volée.