如何使用 python 脚本将 JSON 数据转换为 PDF

Hit*_*Roy 7 python pdf json

我想将从 API 获取的 JSON 数据转换为 PDF。

JSON数据示例

{
    "data": [
        {
            "state": "Manchester",
            "quantity": 20
        },
        {
            "state": "Surrey",
            "quantity": 46
        },
        {
            "state": "Scotland",
            "quantity": 36
        },
        {
            "state": "Kent",
            "quantity": 23
        },
        {
            "state": "Devon",
            "quantity": 43
        },
        {
            "state": "Glamorgan",
            "quantity": 43
        }
     ]   
}
Run Code Online (Sandbox Code Playgroud)

我找到了这个脚本: http://code.activestate.com/recipes/578979-convert-json-to-pdf-with-python-and-xtopdf/

但出现错误

无模块 PDFWriter

有没有其他方法可以将 JSON 数据转换为 PDF。

请帮忙。

ral*_*htp 5

PDFWriter模块位于xtopdf

PDFWriter - xtopdf 工具包的核心类 - 现在可以与 Python 上下文管理器(也称为 Python 语句)一起使用with

http://code.activestate.com/recipes/578790-use-pdfwriter-with-context-manager-support/

如何安装xtopdf位于https://bitbucket.org/vasudevram/xtopdf

安装及使用:

要安装文件,首先确保您已下载并安装了上述所有先决条件,包括设置步骤,例如将所需的目录添加到 PYTHONPATH。然后,将 xtopdf.zip 中的所有文件复制到 PYTHONPATH 上的目录中。

要使用任何 Python 程序,请运行 .py 文件:

python 文件名.py

这将给出有关正确用法和预期参数的用法消息。

要运行 shell 脚本,请执行与上面相同的操作。

开发人员可以查看源代码以获取更多信息。

另一种方法是使用pdfdocument创建 pdf,可以使用piphttps://pypi.python.org/pypi/pdfdocument)安装它

解析 json 数据中的数据(How can I parse GeoJSON with Python , Parse JSON in Python)并使用 pdfdocumenthttps://pypi.python.org/pypi/pdfdocument)将其打印为pdf

  import json
  data = json.loads(datastring)
Run Code Online (Sandbox Code Playgroud)
from io import BytesIO
from pdfdocument.document import PDFDocument

def say_hello():
    f = BytesIO()
    pdf = PDFDocument(f)
    pdf.init_report()
    pdf.h1('Hello World')
    pdf.p('Creating PDFs made easy.')
    pdf.generate()
    return f.getvalue()
Run Code Online (Sandbox Code Playgroud)