金字塔中的文件转换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第三方库


热门话题
java如何将jaxb插件扩展与gradlejaxbplugin一起使用   java Hibernate列表<Object[]>到特定对象   java使用多态性显示arraylist的输出   java水平堆叠卡,带有一定偏移量   java错误:找不到符号方法liesInt()   java客户机/服务器文件收发中的多线程流管理   在java中可以基于访问重载方法吗?   包含空元素的java排序数组   swing Java按钮/网格布局   java BottomNavigationView getmaxitemcount   java空指针异常字符串生成器   java Xamarin升级导致“类文件版本错误52.0,应为50.0”错误   java我正在尝试打印它,而不只是对每一行进行println   Tomcat7中的java是否需要复制上下文。将xml转换为conf/Catalina/locahost以使其生效   带有注入服务的java REST端点在何处引发自定义WebServiceException?   在Java中使用GPS数据   java如何将JFreeChart ChartPanel导出到包含添加的CrosshairOverlay的图像对象?   内置Eclipse期间的Java 8堆栈溢出   java在GWT编译的JavaScript中如何表示BigDecimal