basmati123
Grünschnabel
Hallo,
ich hoffe, ich bin hier im richtigen Forum.
Ich versuche derzeit einen Html-Quelltext in einen Xml-Quelltext umzuwandeln und ihn dann auszulesen - mit Xpath.
Leider habe ich sehr wenig Ahnung von Xml.
Hier wandel ich den Html-Quelltext in Xml um (hoffe ich wenigstens)
quelltext ist der InputStream, der den Html-Quelltext enthält
Ich hoffe, ich habe nur das notwendige gemacht und nicht etwa etwas überflüssiges?
die klasse des erstellen objekts unten, dass das xml-dokument übergeben bekommt, sieht folgendermaßen aus:
Ich versuche also zur Zeit den Titel aus dem HTML-Quelltext auszulesen, aber ich verstehe irgendwie nicht (auch nach mehrmaligem Nachlesen), wie ich das genau anstellen soll - sind meine Ansätze richtig?
Kann mir jemand einen Tipp geben?
Für Hilfe wäre ich sehr dankbar.
Mit freundlichen Grüßen,
basmati123
ich hoffe, ich bin hier im richtigen Forum.
Ich versuche derzeit einen Html-Quelltext in einen Xml-Quelltext umzuwandeln und ihn dann auszulesen - mit Xpath.
Leider habe ich sehr wenig Ahnung von Xml.
Hier wandel ich den Html-Quelltext in Xml um (hoffe ich wenigstens)
quelltext ist der InputStream, der den Html-Quelltext enthält
Code:
public void umwandeln() {
org.cyberneko.html.parsers.DOMParser parser =
new org.cyberneko.html.parsers.DOMParser();
try {
parser.parse( new InputSource(quelltext) );
}
catch (Exception e){
System.out.println(e.getMessage());
}
// Um XML-Dokument als JDOM-Document weiterzuverarbeiten,
// DOMBuilder nutzen:
DOMBuilder builder = new DOMBuilder(null);
org.jdom.Document document = builder.build( parser.getDocument() );
// Ausgabe des quelltextes in xml-form
try {
new XMLOutputter().output(document, System.out);
} catch (IOException e) {
e.printStackTrace();
}
// Objekt der Klasse XmlHTMLInterpretation erzeugen und ihr das //xml-dokument übergeben, um es in der Klasse zu interpretieren/auszulesen
XmlHTMLInterpretation interpret = new XmlHTMLInterpretation(document);
}
Ich hoffe, ich habe nur das notwendige gemacht und nicht etwa etwas überflüssiges?
die klasse des erstellen objekts unten, dass das xml-dokument übergeben bekommt, sieht folgendermaßen aus:
Code:
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathFactory;
import org.jdom.Document;
public class XmlHTMLInterpretation {
Document document;
XPath xpath;
XmlHTMLInterpretation(Document document){
this.document = document;
this.xpath = XPathFactory.newInstance().newXPath();
// Hier versuche ich irgendwie den Titel herauszubekommen - war nur rumprobiererei
String titel = getEinzelInhalt("/wurzel/head/title");
System.out.println(titel);
titel = getEinzelInhalt("/@title");
System.out.println(titel);
}
public String getEinzelInhalt(String p) {
String ergebnis = null;
try {
ergebnis = xpath.evaluate(p, document);
System.out.println(ergebnis);
} catch (Exception e) {
System.out.println(e.getMessage());
}
return ergebnis;
}
}
Ich versuche also zur Zeit den Titel aus dem HTML-Quelltext auszulesen, aber ich verstehe irgendwie nicht (auch nach mehrmaligem Nachlesen), wie ich das genau anstellen soll - sind meine Ansätze richtig?
Kann mir jemand einen Tipp geben?
Für Hilfe wäre ich sehr dankbar.
Mit freundlichen Grüßen,
basmati123