python - 停止 minidom 将 < > 转换为 < >

标签 python xml google-app-engine minidom

我正在尝试将一些数据从我的谷歌应用引擎数据存储输出到 xml,以便 flash 文件可以读取它,

问题是当使用 CDATA 标签时,输出的 xml 包含 < 而不是 <

例如

<name>&lt;![CDATA][name]]&gt;</name>

这是我的 python,它输出 xml:

    doc = Document()

    feed = doc.createElement("feed")
    doc.appendChild(feed)
    tags_element = doc.createElement("names")
    feed.appendChild(tags_element)
    copen = "<![CDATA]["
    cclose = "]]>"

    tags = db.GqlQuery("SELECT * FROM Tag ORDER BY date DESC")

    for tag in tags:
        tag_element = doc.createElement("name")
        tags_element.appendChild(tag_element)
        the_tag = doc.createTextNode("%s%s%s" % (copen,str(tag.thetag), cclose))
        tag_element.appendChild(the_tag)

    self.response.headers["Content-Type"] = "application/xml"
    self.response.out.write(doc.toprettyxml(indent="    "))

我知道这是一个编码问题,只是似乎无法解决问题,

提前致谢

最佳答案

createCDATASection 方法似乎对我有用。

for tag in tags:
    tag_element = doc.createCDATASection(tag.thetag)
    tags_element.appendChild(tag_element)

关于python - 停止 minidom 将 < > 转换为 < >,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2780506/

相关文章:

python - 如何离线安装 Flask?

c++ - 与 replaceChild 相关的内存泄漏

java - 通过 ResponseEntity 下载 XML 在 IE 中不起作用

java - 将 `init-param` 从 Guice 传递给 servlet 不起作用

Python Selenium 一个隐藏框架,有时会与 java 脚本断言一起出现

python - Flask Babel 翻译路径

python - SQLAlchemy 在 PostgresQL 中创建 View

sql - T-SQL 读取带有命名空间的 xml 文件

Java/JSP输出文本文件

java - Google App Engine 可以用来驱动桌面应用程序吗?