Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

convertit

Package Overview
Dependencies
Maintainers
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

convertit

A file conversion Web API in Pyramid

  • 2.2.0
  • PyPI
  • Socket score

Maintainers
7

Convertit is a format conversion webservice.

Retrieve your document in an other format ! The input file is converted and served back ! Using a dead simple GET request, documents are pulled. Using POST request, it takes the attachment.

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

Supported conversions:

  • odt -> pdf
  • odt -> doc
  • ods -> xls
  • csv -> ods
  • csv -> xls
  • svg -> pdf
  • svg -> png

Previously converted documents are cleaned along the way (on each request).

===== USAGE

Using GET request

Example, convert from odt to pdf :

::

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

GET parameters:

url: absolute url of the document to be converted.

"url" also supports a "{X_FORWARDED_FOR}" placeholder for requests not knowing their own host. "{X_FORWARDED_FOR}" will be replaced with the corresponding "X_FORWARDED_FOR" header if available. Be warned that "X_FORWARDED_FOR" is not a safe value since it can be modified by user agents or given false value by forward proxies. Use only if really needed. Exemple::

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

Using POST request

Upload data in POST parameter named file:

::

curl -F "file=@tiger.svg" http://convertit/?to=image/png
HTTP/1.1 302 Found
Content-Disposition: attachement; filename=tiger.png

Query parameters

  • to: output mimetype (optionnal, default to application/pdf if not provided);
  • from: input mimetype (optionnal, guessed from input url or file if not provided).

======= INSTALL

System dependencies

  • for OpenDocument support: unoconv
  • for SVG support: inkscape

Conversion binaries should be in system PATH (which is used internally.)

Download

  • Download and extract a released tarball from pypi <http://pypi.python.org/pypi/convertit>_

  • The bleeding edge version is hosted on github <https://github.com/makinacorpus/convertit>_ ::

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

Development

::

make serve

Once the application is running, you may visit http://localhost:6543/ in your browser.

Run tests: ::

make tests

Production

Using gunicorn for example :

::

gunicorn --workers=1 --paste=production.ini

Using Docker :

::

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

Feedback

Open an issue <https://github.com/makinacorpus/convertit/issues>_ to report a bug or request a new feature.

======= CREDITS

Companies

|makinacom|_

  • Planet Makina Corpus <http://www.makina-corpus.org>_
  • Contact us <mailto:python@makina-corpus.org>_

.. |makinacom| image:: http://depot.makina-corpus.org/public/logo.gif .. _makinacom: http://www.makina-corpus.com

Authors

  • Antoine Cezar
  • Alex Marandon

Contributors

========= CHANGELOG

2.0.0 (2019-11-22)

  • Move from Python 2 to Python 3

1.1.5 (2015-04-01)

  • Fix systematic crash in unoconv converter

1.1.4 (2015-04-01)

  • Serialize parallel libreoffice conversions with flock instead of celery

1.1.3 (2015-01-20)

  • Serialize parallel libreoffice conversions

1.1.2 (2014-12-30)

  • Fix a crash in unoconv error handling
  • Log errors
  • Add a warning about unoconv not able to work in parallel

1.1.1 (2014-12-18)

  • Send HTTP errors as raw strings instead of HTML documents

1.1.0 (2014-05-21)

  • Use original request header Accept-language to download the URL

  • Add {X_FORWARDED_FOR} placeholder in GET url parameter. Replaced by the corresponding header if available. It avoids the client initiating the request to be aware of its own address. Exemple::

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

1.0 (2013-09-03)

  • Initial working version

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc