跳转到主要内容

PDFreactor的Python API

项目描述

Python API for PDFreactor (https://www.pdfreactor.com), a HTML-to-PDF processor.

This distribution package is based on (and replaces) the original API module by RealObjects. To make use of it, you need

  • a running PDFreactor server

  • the keys needed to access it; depending on the server configuration

功能

  • The module pdfreactor.api contains the Python API version 8 (based on wrappers/python/lib/PDFreactor.py from the PDFreactor tarball), suitable to talk to PDFreactor server versions 8 to 11.

修改

Here is an overview of the modifications in our distribution, compared to the original PDFreactor.py.

结构变化

  • The original PDFreactor module from the server distribution tarball is called pdfreactor.api here.

  • The exception classes have been moved to the pdfreactor.exceptions module.

兼容性更改

大多数代码缩减措施不会影响PDFreactor类的使用

  • 对代码的通用更改,例如Python版本切换和导入(在Python运行时执行)已移出方法,到模块顶部。

  • 处理选项的代码已替换为方法和辅助函数

    • 对于所有使用 config 参数的方法:如果没有提供,则创建一个,以获取我们的客户端信息。

    • connectionSettings 选项被多个方法使用,并由适当的方法处理。

    • 一些方法在另一个选项之前接受一个可选的 stream 参数。这也由一个特殊函数处理。每种合法的使用都应该继续工作。

不兼容的更改

  • 减少了异常类的数量

    • 所有继承自 ServerException 的类都已 删除,以及 PDFreactor._createServerException 方法。

    • ServerException 现在是 HTTPError,并添加了一些只读属性来提供相同的信息。

      这使我们能够极大地简化转换方法中的错误处理代码。

    • 如果您想使用该包的所有 (剩余) 异常类,请从 pdfreactor.exceptions 模块导入。

安装

只需使用 pip 安装

pip install pdfreactor-api

或者,为了与使用 zc.buildout 构建的项目集成,将其添加到您的 buildout.cfg 脚本中

[buildout]
...
eggs =
    pdfreactor-api

然后运行 bin/buildout

文档

我们预计大多数问题都将受 PDFreactor API 文档的约束;请参阅

示例

RealObjects 提供的一些示例脚本(略有修改)包含在 docs/sample/ 目录中

simple.py

一个示例,展示了如何简单地将 PDFreactor 集成到 Python 应用程序中

async.py

一个示例,展示了推荐的用于中等或大型文档的异步集成

stream.py

一个示例,展示了如何流式传输转换后的 PDF,从而节省内存

贡献

(到这个 API 分发包:)

支持

如果您遇到有关此 API 分发的问题(例如,由于 RealObjects 的新或修改后的 API 版本),请告诉我们;请使用上面提到的 问题跟踪器

有关 PDFreactor 自身的问题,请参考 RealObjects

许可协议

本项目采用 MIT 许可证。

作者

变更日志

1.8.2 (2023-01-20)

错误修复

  • 在 ServerExceptions 的情况下,.result 属性不包含 JSON,而是 XML 文本;调整了 .pdfreactor_says 以处理这种情况(并且不再引发 ValueError)。

    [tobiasherp]

1.8.1[.post0] (2022-08-24)

错误修复

  • 修复了 问题 1,“convertAsBinary 失败,如果配置了 apiKey” [tobiasherp]

1.8.0 (2022-07-12)

  • 初始发布,提供 PDFreactor API v8。 [tobiasherp]

项目详情


下载文件

下载适用于您平台的应用程序文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

pdfreactor-api-1.8.2.tar.gz (19.2 kB 查看哈希值)

上传时间: 源代码

由以下支持