Pyramid中的文件转换Web API
项目描述
Convertit 是一个格式转换的Web服务。
以其他格式检索您的文档!输入文件会被转换并返回!使用简单的 GET 请求,文档被检索。使用 POST 请求,它将接收附件。
支持的转换
odt -> pdf
odt -> doc
ods -> xls
csv -> ods
csv -> xls
svg -> pdf
svg -> png
在转换过程中(每个请求时)清除先前转换的文档。
用法
使用GET请求
例如,将 odt 转换为 pdf
curl http://convertit/?url=http://server/document.odt&to=application/pdf HTTP/1.1 302 Found Content-Disposition: attachement; filename=document.pdf ...
GET参数
url:要转换的文档的绝对URL。
“url”也支持一个“{X_FORWARDED_FOR}”占位符,用于不知道自己主机名的请求。“{X_FORWARDED_FOR}”如果可用,将被替换为相应的“X_FORWARDED_FOR”头。警告:“X_FORWARDED_FOR”不是一个安全值,因为它可以被用户代理修改,或者由转发代理提供错误的值。只有在确实需要时才使用。示例
curl "http://convertit/?url=http://{X_FORWARDED_FOR}/document.odt&to=application/pdf"
使用POST请求
以名为 file 的POST参数上传数据
curl -F "file=@tiger.svg" http://convertit/?to=image/png HTTP/1.1 302 Found Content-Disposition: attachement; filename=tiger.png
查询参数
to:输出MIME类型(可选,如果未提供,默认为 application/pdf);
from:输入MIME类型(可选,如果没有提供,则从输入URL或文件中猜测)。
安装
系统依赖关系
对于 OpenDocument 支持: unoconv
对于 SVG 支持: inkscape
转换二进制文件应在系统 PATH 中(内部使用)。
下载
开发
make serve
一旦应用程序运行,您可以在浏览器中访问 http://localhost:6543/
运行测试
make tests
生产
例如,使用 gunicorn
gunicorn --workers=1 --paste=production.ini
使用Docker
sudo docker build -t="convertit" . sudo docker run -p :6543 convertit
反馈
打开 一个问题 报告错误或请求新功能。
致谢
公司
贡献者
kiorky <kiorky@cryptelium.net>
Mathieu Leplatre <mathieu.leplatre@makina-corpus.com>
Gaël Utard <gael.utard@makina-corpus.com>
Jean-Etienne Castagnede <j.e.castagnede@gmail.com>
变更日志
2.0.0 (2019-11-22)
从Python 2迁移到Python 3
1.1.5 (2015-04-01)
修复unoconv转换器中的系统性崩溃
1.1.4 (2015-04-01)
使用flock而不是celery序列化并行libreoffice转换
1.1.3 (2015-01-20)
序列化并行libreoffice转换
1.1.2 (2014-12-30)
修复unoconv错误处理中的崩溃
记录错误
添加关于unoconv无法并行工作的警告
1.1.1 (2014-12-18)
将HTTP错误作为原始字符串而不是HTML文档发送
1.1.0 (2014-05-21)
使用原始请求头Accept-language下载URL
在GET URL参数中添加{X_FORWARDED_FOR}占位符。如果有相应头,则替换为该头。它避免了客户端发起请求时意识到自己的地址。例如
curl "http://convertit/?url=http://{X_FORWARDED_FOR}/document.odt&to=application/pdf"
1.0 (2013-09-03)
初始工作版本
项目详情
convertit-2.2.0.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3b4b8550c067265fe215c0ee28e30eb463b163d36d25e7e57677047a2e2fa41c |
|
MD5 | 7242dedc96a3f660e64fdd19c6e6ad9b |
|
BLAKE2b-256 | 9d5f1ab8e9720bd510e58eb7a4fdd5c8383a59968174fc882964231601748b7a |