So versuche ich einige der WootAPI mit XPath zu analysieren. Ein Problem, auf das ich stoße, ist, dass ein paar der Elemente Doppelpunkte in ihrem Namen haben, wie woot:price
oder woot:condition
. Nun, versuchen, den XPath //rss/channel/item/woot:price
zu verwenden, wird nicht den Inhalt des Elements woot:price
wegen des Doppelpunkts greifen, denke ich. Was kann ich tun, um es trotzdem zu bekommen?Verwenden Sie XPath, um den Elementnamen mit einem Doppelpunkt zu analysieren
6
A
Antwort
10
Die Doppelpunkte sind, weil die Elemente ein Namespace-Präfix haben und an den Woot-Namespace gebunden sind.
Sie sollten auf XML namespaces and how they affect XPATH and XSLT nachlesen.
Wenn Sie die Woot Elemente in Ihrem XPath verweisen möchten, werden Sie entweder müssen:
- den Namespace Woot Deklarieren
http://www.woot.com/
so dass, wenn Sie verwenden, dass Namespacepräfix in Ihrem XPath wird es selbstverständlich sein. - Verwenden Sie eine allgemeinere XPATH-Anweisung, die Prädikatfilter verwendet, die
local-name()
undnamespace-uri()
verwenden, um das Element abzugleichen.//rss/channel/item/*[local-name()='price' and namespace-uri()='http://www.woot.com/']
Verwandte Themen
- 1. XPath, um eindeutige Elementnamen zu erhalten
- 2. Verwenden Sie die Iteratorvariable für den Elementnamen?
- 3. Holen Sie den XPath zu einem XElement?
- 4. Verwenden von Xpath mit PHP zum Analysieren von HTML
- 5. Wie Regex verwenden, um Links zu analysieren
- 6. Verwenden Sie Wildcard, um Attribut in XPath
- 7. Verwenden von Jsoup, um HTML zu analysieren?
- 8. XPath, um alle untergeordneten Elemente außer einem mit einem bestimmten Namen zu erhalten?
- 9. Was ist der beste Weg, um einen Doppelpunkt getrennt Zeichenfolge zu analysieren mit pyparsing
- 10. Wie ein Muster verwenden, um Elementnamen in kompakten RelaxNG
- 11. Verwenden Sie xpath und scrapy, um durch STIX-Dateien zu gehen?
- 12. Möchten Sie den XPath
- 13. XML mit XPath & Namespaces in Java analysieren
- 14. XPATH verwenden, um Text zu suchen, der
- 15. Xpath, um den Textwert eines Knotens abzurufen
- 16. Verwenden Sie die Eingabetaste, um zu den Eingängen zu gehen
- 17. Wie kann ich ein JSON mit Doppelpunkt in Android analysieren?
- 18. HTML analysieren, um den Variablenwert des Skripts zu erhalten
- 19. Javascript regulären Ausdruck - Wert nach dem Doppelpunkt, ohne den Doppelpunkt
- 20. Python: XPath verwenden, um Daten aus einer Tabelle zu erhalten
- 21. Verwenden Sie xPath oder Regex?
- 22. mit CTAKES, um klinische Dokumente zu analysieren
- 23. XPath, mit xlink: href, um mehrere Elemente zu laden
- 24. des WAITFORCONDITION mit einem XPath-
- 25. Verwenden Sie audioplayer.js, um den nächsten Track mit den Bedienelementen
- 26. Greifen Sie Zahlen nach einem Doppelpunkt?
- 27. Wie kann ich HTML mit html5lib analysieren und den analysierten HTML-Code mit XPath abfragen?
- 28. Wie kann ich PHP verwenden, um eine Datumszeichenfolge zu analysieren?
- 29. XPath, um den gesamten Text in einem Element als einen Wert zu erhalten, Zeilenumbrüche werden entfernt
- 30. Wie kann ich XPath verwenden, um Elemente zu erhalten?
1. wissen, wie das in Java zu tun? 2. Ich habe versucht, das von Ihnen angegebene Beispiel zu verwenden, und es hat nicht funktioniert. : \ – Chiggins
Ich hatte einen Fehler in der XPATH, die ich zur Verfügung gestellt hatte (es fehlte das "h" im woot namespace uri und hatte nicht die schließende Klammer). Ich habe es aktualisiert. Wiederholen. –
Ah, scheinest du das Beispiel in 2 zu beheben, funktioniert wie Magie. :) – Chiggins