金字塔中的文件转换web api

convertit的Python项目详细描述


convertit是一个格式转换web服务。

以其他格式检索文档!输入文件被转换并返回! 使用一个死的简单的GET请求,文档被拉取。使用POST请求,它接受附件。

https://api.travis-ci.org/makinacorpus/convertit.png

支持的转换:

  • odt->;pdf
  • odt->;文档
  • ODS->;xls
  • csv->;ODS
  • csv->;xls
  • SVG->;pdf
  • SVG->;PNG

以前转换的文档会在一路上被清除(根据每个请求)。

用法

使用get request

例如,从odt转换为pdf

curl http://convertit/?url=http://server/document.odt&to=application/pdf
HTTP/1.1 302 Found
Content-Disposition: attachement; filename=document.pdf
...

获取参数:

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

查询参数

  • :输出mimetype(可选,如果未提供,则默认为application/pdf);
  • from:输入mimetype(可选,根据输入url或文件猜测,如果未提供)。

安装

系统依赖性

  • 对于opendocument支持:unoconv
  • 对于svg支持:inkscape

转换二进制文件应该在系统中PATHwhich在内部使用。)

下载

  • pypi下载并提取已发布的tarball

  • 出血边缘版本位于github

    git clone https://github.com/makinacorpus/convertit.git
    cd convertit
    

发展

make serve

应用程序运行后,您可以访问浏览器中的http://localhost:6543/

运行测试:

make tests

产量

使用gunicorn例如:

gunicorn_paster --workers=1 production.ini

使用Docker:

sudo docker build -t="convertit" .
sudo docker run -p :6543 convertit

反馈

打开an issue报告 错误或请求新功能。

学分

作者

  • 安托万·塞萨尔
  • 亚历克斯·马兰登

贡献者

更改日志

1.1.5(2015-04-01)

  • 修复unconv转换器中的系统崩溃

1.1.4(2015-04-01)

  • 使用flock而不是芹菜序列化并行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}u forwarded}。替换为 对应的标题(如果可用)。 它避免了客户机发起请求以知道自己的地址。 示例:

    curl "http://convertit/?url=http://{X_FORWARDED_FOR}/document.odt&to=application/pdf"
    

1.0(2013-09-03)

  • 初始工作版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何表示1。。Java中的n关系   java在安卓应用程序中添加polaris viewer   Java字符串::replaceAll仅替换第一个出现(可能不正确的正则表达式)   java Tomcat/JBoss部署后脚本   如何在Heroku Java应用程序中运行发出web请求的周期进程   java如何以纳秒为单位证明算法的时间   Solaris上的java自定义ListCellRenderer(使用jre5)   java试图为我的播放器类测试块实现播放器重力(RealtutsGml平台教程)   c#消耗一个。带有java的net web服务未显示预期结果   java在KOI8\R中检索html   基于java图形的搜索与基于随机的搜索   java如何检查安卓设备上的可用空间?在SD卡上?