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


热门话题
spring boot在使用Java 9的SprnigBoot中找不到org/slf4j/LoggerFactory   java如何查找对象中非空属性的数量   javascript AngularJS和REST:执行删除操作,发送要删除的许多项的数组   java WAS7和Axis获得ClassCastException:IBM Crypto的TDCNP与javax不兼容。加密。密码   当从多个线程以相反顺序执行equals()时,Java的同步集合出现问题   依赖java的spring启动应用程序启动,而不是主模块sbt   java@Async阻止一个线程继续,直到其他线程完成   java按钮故障   java thymeleaf,将模型属性绑定到多个表单元素   使用泛型的java查询   java Hibernate JPA侦听器未收到调用   java如何让我的监听器工作,并用物品位置显示吐司?   java未能延迟初始化角色集合:无法初始化代理无会话   java JBPM持久性示例恢复工作流   JavaSpring以json的形式获取对对象转换的响应   java如何使用Proguard成功地用Dagger 2.0混淆项目?   Android中的java字符串拆分错误   如何使用DockerJavaLibrary启动docker容器?   C++在java中是否有条件编译?