gpt4 book ai didi

html - Clojure 启用 : How to convert enlive nested map data back into HTML?

转载 作者:搜寻专家 更新时间:2023-10-31 08:18:50 27 4
gpt4 key购买 nike

我正在为一个网站写一个抓取工具,目标是创建一个重新格式化的网站版本。作为抓取的一部分,我深入研究了一些可能包含 html 格式的评论,因此我们有:

{... :content ("And, in a lower voice, \"Is this " {:tag :em, :attrs nil, :content ("common")} "?\"")}

问题是:我能否获取此 :content 值的内容并使用内置的 enlive 函数将它们转换为 HTML,如下所示:

Is this <em>common</em>?

我知道我可能会如何编写一些东西来处理这些标签,但我对自制任何东西都非常犹豫,因为我很可能会错过边缘情况。

最佳答案

据我所知,它不是内置的,而且似乎过于具体以至于无法内置。我的解决方案:

(require '[net.cgrand.enlive-html :as html])

(def my-node '{:tag :p,
:content ("And, in a lower voice, \"Is this"
{:tag :em, :attrs nil, :content ("common")} "?\"")})

;; for escaped string:
(apply str (html/emit* (:content my-node)))
=> "And, in a lower voice, \"Is this<em>common</em>?\""

;; print in human readable form
(print (apply str (html/emit* (:content my-node))))
=> And, in a lower voice, "Is this<em>common</em>?"
nil

关于html - Clojure 启用 : How to convert enlive nested map data back into HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21508589/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com