在 Python 中将 JSON 转换为 HTML 表
Posted
技术标签:
【中文标题】在 Python 中将 JSON 转换为 HTML 表【英文标题】:Converting JSON to HTML table in Python 【发布时间】:2015-09-09 17:57:01 【问题描述】:我一直在使用 Python 的 JSON 库来使用 Python 从 JSON 文件中获取数据。
infoFromJson = json.loads(jsonfile)
我完全了解如何在 Python 中处理 JSON 文件。但是,我正在尝试找到一种以一种很好的方式格式化 JSON 格式的方法。
我更喜欢将 JSON 转换为嵌套的 html 表格格式。
我为 Python 找到了 json2html,它完全符合我刚才的描述。 但是,当我运行他们提供的脚本时,它实际上并没有输出任何内容。
有人使用过这个工具吗?或者有人对替代品有建议吗?
【问题讨论】:
【参考方案1】:尝试以下方法:
infoFromJson = json.loads(jsonfile)
print(json2html.convert(json = infoFromJson))
json2html.convert
的结果是一个字符串。
如果你没有json2html 模块:
$ pip install json2html
更多示例here。
【讨论】:
这行得通,谢谢!出于某种原因,如果我尝试将您提供的两行合并为一行,它不会打印出任何内容(包括没有错误)。感谢您的帮助! 我怀疑这是一个命名/范围问题,但是如果您将 json 的导入别名为不同的名称,它是否可以在一行中工作? 抱歉,您能否进一步解释一下“将 json 的导入别名为其他名称”是什么意思? 您在一行中执行此操作时遇到的问题可能是 json 库和 json 默认参数的名称相似.但我不知道:Pimport json as jason; print json2html.convert(json = jason.loads(jsonfile)
尽管如此,很高兴它有效。 ^_^
至少对我来说,它看起来像import json2html
和json2html.json2html.convert
【参考方案2】:
现在最好使用 json2table(至少对于 Python 3)
import json2table
import json
infoFromJson = json.loads(jsonfile)
build_direction = "LEFT_TO_RIGHT"
table_attributes = "style": "width:100%"
print(json2table.convert(infoFromJson,
build_direction=build_direction,
table_attributes=table_attributes))
【讨论】:
我在 python 3 中尝试了 json2html 和 json2table 并且在使用复杂 json 结构的 json2table 中遇到了一些问题。我要使用 json2html,但不明白为什么不应该这样做。代码看起来没问题,项目得到维护。 这个版本很好,格式更灵活。以上是关于在 Python 中将 JSON 转换为 HTML 表的主要内容,如果未能解决你的问题,请参考以下文章