{ "info": { "author": "Makina Corpus", "author_email": "python@makina-corpus.org", "bugtrack_url": null, "classifiers": [ "Framework :: Pylons", "License :: OSI Approved :: GNU Affero General Public License v3", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application" ], "description": "**Convertit** is a format conversion webservice. \n\nRetrieve your document in an other format ! The input file is converted and served back !\nUsing a dead simple ``GET`` request, documents are pulled. Using ``POST`` request, it takes the attachment.\n\n.. image:: https://api.travis-ci.org/makinacorpus/convertit.png\n :target: https://travis-ci.org/makinacorpus/convertit\n\n\nSupported conversions:\n\n- odt -> pdf\n- odt -> doc\n- ods -> xls\n- csv -> ods\n- csv -> xls\n- svg -> pdf\n- svg -> png\n\nPreviously converted documents are cleaned along the way (on each request).\n\n\n=====\nUSAGE\n=====\n\nUsing GET request\n-----------------\n\nExample, convert from *odt* to *pdf* :\n\n::\n\n curl http://convertit/?url=http://server/document.odt&to=application/pdf\n HTTP/1.1 302 Found\n Content-Disposition: attachement; filename=document.pdf\n ...\n\nGET parameters:\n\n**url**: absolute url of the document to be converted.\n\n\"url\" also supports a \"{X_FORWARDED_FOR}\" placeholder for requests not knowing\ntheir own host. \"{X_FORWARDED_FOR}\" will be replaced with the corresponding\n\"X_FORWARDED_FOR\" header if available. Be warned that \"X_FORWARDED_FOR\" is not\na safe value since it can be modified by user agents or given false value by\nforward proxies. Use only if really needed. Exemple::\n\n curl \"http://convertit/?url=http://{X_FORWARDED_FOR}/document.odt&to=application/pdf\"\n\n\nUsing POST request\n------------------\n\nUpload data in POST parameter named ``file``:\n\n::\n\n curl -F \"file=@tiger.svg\" http://convertit/?to=image/png\n HTTP/1.1 302 Found\n Content-Disposition: attachement; filename=tiger.png\n\n\n\nQuery parameters\n----------------\n\n- **to**: output mimetype (optionnal, default to ``application/pdf`` if not provided); \n- **from**: input mimetype (optionnal, guessed from input url or file if not provided).\n\n\n=======\nINSTALL\n=======\n\nSystem dependencies\n-------------------\n* for *OpenDocument* support: ``unoconv``\n* for *SVG* support: ``inkscape``\n\nConversion binaries should be in system ``PATH`` (``which`` is used internally.)\n\nDownload\n---------\n* Download and extract a released tarball from `pypi `_\n* The bleeding edge version is hosted on `github `_ ::\n\n git clone https://github.com/makinacorpus/convertit.git\n cd convertit\n\nDevelopment\n-----------\n\n::\n\n make serve\n\nOnce the application is running, you may visit http://localhost:6543/ in your browser.\n\nRun tests: ::\n\n make tests\n\n\nProduction\n----------\n\nUsing *gunicorn* for example :\n\n::\n\n gunicorn_paster --workers=1 production.ini\n\nUsing Docker :\n\n::\n\n sudo docker build -t=\"convertit\" .\n sudo docker run -p :6543 convertit\n\nFeedback\n--------\n\nOpen `an issue `_ to report a \nbug or request a new feature.\n\n\n=======\nCREDITS\n=======\n\nCompanies\n---------\n|makinacom|_\n\n * `Planet Makina Corpus `_\n * `Contact us `_\n\n.. |makinacom| image:: http://depot.makina-corpus.org/public/logo.gif\n.. _makinacom: http://www.makina-corpus.com\n\nAuthors\n-------\n* Antoine Cezar\n* Alex Marandon\n\nContributors\n-------------\n* kiorky \n* Mathieu Leplatre \n* Ga\u00ebl Utard \n\n\n=========\nCHANGELOG\n=========\n\n1.1.5 (2015-04-01)\n------------------\n\n- Fix systematic crash in unoconv converter\n\n\n1.1.4 (2015-04-01)\n------------------\n\n- Serialize parallel libreoffice conversions with flock instead of celery\n\n\n1.1.3 (2015-01-20)\n------------------\n\n- Serialize parallel libreoffice conversions\n\n\n1.1.2 (2014-12-30)\n------------------\n\n- Fix a crash in unoconv error handling\n- Log errors\n- Add a warning about unoconv not able to work in parallel\n\n\n1.1.1 (2014-12-18)\n------------------\n\n- Send HTTP errors as raw strings instead of HTML documents\n\n\n1.1.0 (2014-05-21)\n------------------\n\n- Use original request header ``Accept-language`` to download the URL\n\n- Add {X_FORWARDED_FOR} placeholder in GET url parameter. Replaced by the\n corresponding header if available.\n It avoids the client initiating the request to be aware of its own address.\n Exemple::\n\n curl \"http://convertit/?url=http://{X_FORWARDED_FOR}/document.odt&to=application/pdf\"\n\n1.0 (2013-09-03)\n----------------\n\n- Initial working version", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/makinacorpus/convertit", "keywords": "web pyramid webservice convert", "license": "AGPLV3", "maintainer": null, "maintainer_email": null, "name": "convertit", "package_url": "https://pypi.org/project/convertit/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/convertit/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/makinacorpus/convertit" }, "release_url": "https://pypi.org/project/convertit/1.1.5/", "requires_dist": null, "requires_python": null, "summary": "A file conversion Web API in Pyramid", "version": "1.1.5" }, "last_serial": 1790144, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "de1a8c3cc464f70423fc97f66cf334bc", "sha256": "6f87628b220a86fb7a0ca2fa2f7de0fd2a2fcb732558d30cf027612ae8c97551" }, "downloads": -1, "filename": "convertit-1.0.zip", "has_sig": false, "md5_digest": "de1a8c3cc464f70423fc97f66cf334bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77114, "upload_time": "2013-09-03T08:34:11", "url": "https://files.pythonhosted.org/packages/43/99/895124659aea5aa666d2eccd3fea5055a0353f4ef012b81637f354ed845e/convertit-1.0.zip" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "99a3954d59f62e78c1e83d8811d192f0", "sha256": "84281076463bff9f3b8fc2be77ef61f2f184753e6c74984200ba255ba188405c" }, "downloads": -1, "filename": "convertit-1.1.0.zip", "has_sig": false, "md5_digest": "99a3954d59f62e78c1e83d8811d192f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79660, "upload_time": "2014-05-21T08:20:43", "url": "https://files.pythonhosted.org/packages/03/02/edcdf4c84574b507749f3ec089186503032bb86a394100172455192e2829/convertit-1.1.0.zip" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "76200727435e8c6882e38fbf35e096d4", "sha256": "666d6994961291f136c021a1cbc357eef711b680e2ee799f847d902d060eade7" }, "downloads": -1, "filename": "convertit-1.1.1.tar.gz", "has_sig": false, "md5_digest": "76200727435e8c6882e38fbf35e096d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71187, "upload_time": "2014-12-18T10:25:34", "url": "https://files.pythonhosted.org/packages/16/72/2cd17508724e99ab3b3aadcca7bdf13c05d08594eb8cb945c09348f22d52/convertit-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "5bdba00d814558fb78e346253b252aca", "sha256": "c860980fa0ed5532d8245684db5b92ba9720e8e796591b5a4b6cf808ced79cc7" }, "downloads": -1, "filename": "convertit-1.1.2.tar.gz", "has_sig": false, "md5_digest": "5bdba00d814558fb78e346253b252aca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71529, "upload_time": "2014-12-30T10:18:02", "url": "https://files.pythonhosted.org/packages/ea/3e/9d4544b016adba69411ab9fa7e3592aa47e02c0a7201828300e497d229aa/convertit-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "fda7fcf59d49a3677c74b3c8b7f9a324", "sha256": "5983b677aec41191b0af5547114077b4726a2234c6822e21937188237d9b08cd" }, "downloads": -1, "filename": "convertit-1.1.3.tar.gz", "has_sig": false, "md5_digest": "fda7fcf59d49a3677c74b3c8b7f9a324", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72074, "upload_time": "2015-01-20T17:42:31", "url": "https://files.pythonhosted.org/packages/db/dd/d544d8292b434a9fb6f62feb41e867c7185280027378cdd7e26853b9942e/convertit-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "6b71e8af546d3457c73bb135f7690bef", "sha256": "cd84ab7e1fd89cc77d5caf6c6beaa27a7dbf6137a7cca97ac00869de0951e057" }, "downloads": -1, "filename": "convertit-1.1.4.tar.gz", "has_sig": false, "md5_digest": "6b71e8af546d3457c73bb135f7690bef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71698, "upload_time": "2015-04-01T13:08:14", "url": "https://files.pythonhosted.org/packages/54/94/dc45949a716f258ac9b53cdb64cbbf1a4c288499a317b1d789f4d5d82095/convertit-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "100d2a2b152faa1e1e96b083d98a0356", "sha256": "b9460c6bc343e845092c1f576493999998e1f24430c920f5d19200126731a2be" }, "downloads": -1, "filename": "convertit-1.1.5.tar.gz", "has_sig": false, "md5_digest": "100d2a2b152faa1e1e96b083d98a0356", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71741, "upload_time": "2015-04-01T15:03:52", "url": "https://files.pythonhosted.org/packages/cd/1f/c5268b7b7eb0eaaefec4189161faad21e0000230a38ef890ec299bfcb411/convertit-1.1.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "100d2a2b152faa1e1e96b083d98a0356", "sha256": "b9460c6bc343e845092c1f576493999998e1f24430c920f5d19200126731a2be" }, "downloads": -1, "filename": "convertit-1.1.5.tar.gz", "has_sig": false, "md5_digest": "100d2a2b152faa1e1e96b083d98a0356", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71741, "upload_time": "2015-04-01T15:03:52", "url": "https://files.pythonhosted.org/packages/cd/1f/c5268b7b7eb0eaaefec4189161faad21e0000230a38ef890ec299bfcb411/convertit-1.1.5.tar.gz" } ] }