2013-07-25 2 views
8

Warum funktioniert das folgende Snippet nicht?Parsing Snippets von HTML mit Animationen

(html/select (:body (client/post "http://www.web.onpe.gob.pe/modElecciones/elecciones/elecciones2011/2davuelta/onpe/presidente/extras/provincias.php" {:form-params {"elegido" "010000"}})) [:option]) 

Muß ich etwas mit der html-Zeichenfolge zu tun, es in eine clojure Datenstruktur wie die ersten oder etwas zu machen?

Antwort

9

Yep - Sie html/html-snippet verwenden können, ein rohes HTML-String in etwas zu verwandeln enlive verwenden können, oder html/html-resource eine ganze HTML-Datei zu verwenden.

Versuchen Sie Folgendes:

(html/select 
    (html/html-snippet 
    (:body (client/post "<your-website>" {:form-params {"elegido" "010000"}})) 
    [:option]) 
+0

Wenn ich versuche, die Antwort mit HTML-Schnipsel ich eine arity Ausnahme erhalten zu analysieren https://gist.github.com/PuercoPop/2035343d5af8e0ecfb1d Es ist eine Anforderung Ajax, so dass es ist nicht vollständig HTML, gibt es ein Problem damit? – PuercoPop

+0

Btw die Antwort ist ziemlich kurz, eine Optionsliste: https://gist.github.com/PuercoPop/d80b05a0fc6afd5b8a39 – PuercoPop

+1

Interessant. Wenn ich die Optionsliste mit '(select (html-snippet ) [: option]) analysiere ', bekomme ich' ({: tag: option,: attrs {: value ""},: content ("--seleccionar- - ")} {: tag: option,: attrs {: wert" 010100 "},: inhalt (" CHACHAPOYAS ")} {: tag: option,: attrs {: wert" 010200 "},: inhalt (" BAGUA ")} ...) 'Ich benutze aufschlussreiche 1.1.1 ... –