{ "info": { "author": "Anybox", "author_email": "rboyer@anybox.fr", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3 :: Only", "Topic :: Internet :: WWW/HTTP", "Typing :: Typed" ], "description": "# Clauseur : extraction d'annotations depuis hypothesis \n\nAttention, c'est un PoC\n\n\n## Installation\n\n```sh\npython3 -m venv venv\npip install clauseur\n\n# variables d'environnement:\n# * soit exporter HYPOTHESIS_{USERNAME,PASSWORD,TOKEN}\n# * soit copier https://gitlab.anybox.cloud/rboyer/clauseur/blob/master/.env.tpl \n# le renommer .env et renseigner les variables\n```\n\n## Usage \n\n### en ligne de commande\n\n```sh\n# clauseur --help pour le d\u00e9tail\nclauseur https://hypothes.is/groups/9Je32V26/testanybot\n# filtrer par tag\nclauseur --tag tag1 --tag tag2 https://hypothes.is/groups/9Je32V26/testanybot\n# mode verbeux\nclauseur --debug https://hypothes.is/groups/9Je32V26/testanybot\n```\n\n### en tant que librairie\n\n```python\nfrom clauseur.extract import join_group, get_annotations, leave_group, format_as_markdown_table\n\ngroup = join_group(url)\nannotations = get_annotations(group[\"id\"], [\"tag1\", \"tag2\"])\nleave_group(group[\"id\"])\ntables = format_as_markdown_table(annotations)\n```\n\n## Exemple de retour\n\n * un tableau par document dans le groupe\n * en titre : le nom du fichier utilis\u00e9 cit\u00e9\n * colonne Citation: le texte surlign\u00e9\n * colonne Commentaire: l'annotation\n\n```markdown\n# Piloter-Prestashop-avec-OpenERP.pdf\n\nCitation | Commentaire\n---------|------------\nOpenERP | devenu Odoo\n```\n\n# autredoc.pdf\n\nCitation | Commentaire\n---------|------------\nAbc | Def\n```\n\n# Historique des modifications\n\n## Version actuelle\n\n### Correctifs\n\n* D\u00e9compte tags uniques.\n\n\n## 0.7.0 (2019-05-11)\n\n### Nouveaut\u00e9s\n\n* Ajout des tags & dates sur les annotations.\n\n\n## 0.6.1 (2019-04-25)\n\n### Nouveaut\u00e9s\n\n* --version sur cli.\n\n\n## 0.6.0 (2019-04-24)\n\n### Nouveaut\u00e9s\n\n* Assainissement des annotations.\n\n### Changements\n\n* Am\u00e9lioration documentation usage cli / librairie.\n\n\n## 0.4.1 (2019-04-23)\n\n### Correctifs\n\n* Meilleure gestion des erreurs argparse.\n\n\n## 0.4.0 (2019-04-23)\n\n### Nouveaut\u00e9s\n\n* Mod\u00e8le d'app flask pour r\u00e9pondre \u00e0 un appel type slashcommand.\n\n* D\u00e9couplage cli / librairie.\n\n\n## 0.3.1 (2019-04-23)\n\n### Changements\n\n* Documenter l'installation via pip.\n\n### Correctifs\n\n* Descriptif pypi.\n\n\n## 0.3.0 (2019-04-22)\n\n### Nouveaut\u00e9s\n\n* Release auto sur pypi.\n\n* Filtre par tag(s)\n\n### Changements\n\n* G\u00e9n\u00e8re un tableau par fichier.\n\n### Correctifs\n\n* Ajout licence.\n\n\n## 0.2.0 (2019-04-22)\n\n### Nouveaut\u00e9s\n\n* CI.\n\n* Variables d'environnement dans .env.\n\n### Changements\n\n* Simplification de l'api.\n\n\n## 0.1.0 (2019-04-19)\n\n### Nouveaut\u00e9s\n\n* Initialisation package.\n\n* Prototype.\n\n### Autres\n\n* Imp: pkg: gitchangelog pour g\u00e9n\u00e9rer le changelog.\n\n* Imp: requirements avec pip-tools.\n\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.anybox.cloud/rboyer/clauseur", "keywords": "", "license": "MIT", "maintainer": "Renaud Boyer", "maintainer_email": "rboyer@anybox.fr", "name": "clauseur", "package_url": "https://pypi.org/project/clauseur/", "platform": "any", "project_url": "https://pypi.org/project/clauseur/", "project_urls": { "Bug Tracker": "https://gitlab.anybox.cloud/rboyer/clauseur/issues", "Documentation": "https://gitlab.anybox.cloud/rboyer/clauseur", "Homepage": "https://gitlab.anybox.cloud/rboyer/clauseur", "Source Code": "https://gitlab.anybox.cloud/rboyer/clauseur" }, "release_url": "https://pypi.org/project/clauseur/0.7.1/", "requires_dist": [ "certifi (==2019.3.9)", "chardet (==3.0.4)", "idna (==2.8)", "lxml (==4.3.3)", "markdown2 (==2.3.7)", "python-dotenv (==0.10.1)", "requests (==2.21.0)", "urllib3 (==1.24.2)" ], "requires_python": ">= 3.5", "summary": "G\u00e9n\u00e9rateur de tableau \u00ab clause \u00e0 clause \u00bb \u00e0 partir de l\u2019API d\u2019hypothesis", "version": "0.7.1" }, "last_serial": 5264128, "releases": { "0.3.0": [ { "comment_text": "", "digests": { "md5": "ec90278a8fd435c89ade8f9c3a7f04e6", "sha256": "015a54f7fa76a8084e2766a9ce3fbe5ea736e023b59cb8c149aa36301901b8ff" }, "downloads": -1, "filename": "clauseur-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ec90278a8fd435c89ade8f9c3a7f04e6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.7", "size": 5934, "upload_time": "2019-04-22T14:32:06", "url": "https://files.pythonhosted.org/packages/72/02/990c8c9f2e914795fed80e28e95ea935c5e016788acd8012753f4f539b4a/clauseur-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "567dedfb1d0bc9eb97e060a1cb2bf047", "sha256": "e4f498e03f3eb806f5db25fe15653543a8c2bf2dd78d3600786de82e61fae3fe" }, "downloads": -1, "filename": "clauseur-0.3.0.tar.gz", "has_sig": false, "md5_digest": "567dedfb1d0bc9eb97e060a1cb2bf047", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.7", "size": 4877, "upload_time": "2019-04-22T14:32:07", "url": "https://files.pythonhosted.org/packages/c2/f3/6919f2e0dad10d24d30fefe8fbedd0874388b9e7373ce3a8dfc6f6040e05/clauseur-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "4fd573867b7893bc2f5bd2e8b8ad0923", "sha256": "9ee5e6f9da48cbad1bdade4deaae66f6b41a97e3bf5475312cd2a422bb860fec" }, "downloads": -1, "filename": "clauseur-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4fd573867b7893bc2f5bd2e8b8ad0923", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.7", "size": 6036, "upload_time": "2019-04-23T08:19:46", "url": "https://files.pythonhosted.org/packages/23/ea/c0f0d016c664a7543edb8e66f539e31a0b0072296ea90f57dc34d8ee2dde/clauseur-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6b61bcdb40a622e2bd89dd9155409b3d", "sha256": "ee3f6013aaeb005d7bb3ed9c541e28b9a1759d77b714efdfc1c4ba3d5a853cc9" }, "downloads": -1, "filename": "clauseur-0.3.1.tar.gz", "has_sig": false, "md5_digest": "6b61bcdb40a622e2bd89dd9155409b3d", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.7", "size": 5047, "upload_time": "2019-04-23T08:19:48", "url": "https://files.pythonhosted.org/packages/30/20/8a9b236869efb9a2916b5b6d8f7538d9b783142b2baad552083f6d748144/clauseur-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "a0b09bbcbc770f82e3196e38b5997651", "sha256": "609d3e02112f3654d6f31bd1b9930f505bf32c25e57f13e77f97cb8636b7d280" }, "downloads": -1, "filename": "clauseur-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a0b09bbcbc770f82e3196e38b5997651", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.7", "size": 6381, "upload_time": "2019-04-23T15:25:46", "url": "https://files.pythonhosted.org/packages/a6/73/680a7ff1825c0fc00cc95f01cc9cdd0b4c02ba92e0413e336398fb5ff062/clauseur-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "73a9d09856766a1cabb736dcec191ea1", "sha256": "c22529aedbb9d6739a5fa09595ace4ed8adb8e07562da1ecc786ab73d038d045" }, "downloads": -1, "filename": "clauseur-0.4.0.tar.gz", "has_sig": false, "md5_digest": "73a9d09856766a1cabb736dcec191ea1", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.7", "size": 5395, "upload_time": "2019-04-23T15:25:47", "url": "https://files.pythonhosted.org/packages/26/97/07fe4b8471a53add781533060bc8d8ce9da09622b778b180b23c531a10e2/clauseur-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "7175f5a0dc5db398bf387d424eb10998", "sha256": "dae1b0e47676ec14bc63edd02cb30ed8989deedef131e15099ae5dcbf3f40ca9" }, "downloads": -1, "filename": "clauseur-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7175f5a0dc5db398bf387d424eb10998", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.7", "size": 6486, "upload_time": "2019-04-23T16:10:58", "url": "https://files.pythonhosted.org/packages/a3/16/309a7221c7d80ca4514abc7b938e5d3da5dda75f64643aaabe861e0912ae/clauseur-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f56be037e2fc6fbafc417fe4a3784d39", "sha256": "040a56c7192bed51eb6d58331bc586828336d92b373182dcb646908000c66ac7" }, "downloads": -1, "filename": "clauseur-0.4.1.tar.gz", "has_sig": false, "md5_digest": "f56be037e2fc6fbafc417fe4a3784d39", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.7", "size": 5487, "upload_time": "2019-04-23T16:11:00", "url": "https://files.pythonhosted.org/packages/b4/7d/e32467d770f5de93866ba7272be20a4d39fb00ea2054c6ee13b839d9edd5/clauseur-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "02814c0a9596956c3a598fe49f9d3431", "sha256": "dc1deeb5dbb15f7099e937537e5929aba5bdab62ca038a805baff9eb88a31df7" }, "downloads": -1, "filename": "clauseur-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "02814c0a9596956c3a598fe49f9d3431", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5", "size": 6540, "upload_time": "2019-04-24T08:52:11", "url": "https://files.pythonhosted.org/packages/32/ef/4d43bfb995cd9dcd392e332e6f2d7ac6303edd188e0e081dc092696ae38b/clauseur-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6137cc667715ee1aae386c6d102c3b77", "sha256": "bacd21a5a82b63202c35d2b5a75a00e7f4daaf09c158a79230e74f5e85b653c8" }, "downloads": -1, "filename": "clauseur-0.5.0.tar.gz", "has_sig": false, "md5_digest": "6137cc667715ee1aae386c6d102c3b77", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5", "size": 5565, "upload_time": "2019-04-24T08:52:12", "url": "https://files.pythonhosted.org/packages/b0/1c/37e46397538faa585a67f33277bb06920db8ffaf2b42473c21b675526586/clauseur-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "1edf6915ac7441de323064020be7be50", "sha256": "e4db5cfe06a15afe88ad7badfbc9d548968fbfa486a67801befd1e3bfe80a744" }, "downloads": -1, "filename": "clauseur-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "1edf6915ac7441de323064020be7be50", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5", "size": 6897, "upload_time": "2019-04-24T14:29:18", "url": "https://files.pythonhosted.org/packages/e5/4d/a611dcc1258b3abafc69c9aaae7ec8e3b902a931e1cc8726560a68f05b6b/clauseur-0.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2962bde25e7c0e325616b3cab7d51a62", "sha256": "d992431279a54d5b6e8e1f1674e84f0ecd545e435f91a861da20c40282d77837" }, "downloads": -1, "filename": "clauseur-0.6.0.tar.gz", "has_sig": false, "md5_digest": "2962bde25e7c0e325616b3cab7d51a62", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5", "size": 5890, "upload_time": "2019-04-24T14:29:20", "url": "https://files.pythonhosted.org/packages/b5/10/fce80cc49c266a07efd81085598e6499dbf2d7641c9a3100cb6d19db37ab/clauseur-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "cc26bcd63824b6163d89d0d695867007", "sha256": "ac04670d99e360f0c27aac72cf15602405c99081d5654e86bee86a39d24d2012" }, "downloads": -1, "filename": "clauseur-0.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cc26bcd63824b6163d89d0d695867007", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5", "size": 6967, "upload_time": "2019-04-25T14:52:10", "url": "https://files.pythonhosted.org/packages/7c/74/5dc62a57db1c8544d6f4336275fbcafe150d89145be40fbde59d9fed1ecb/clauseur-0.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0b3e9ac1631131ec6bd4e2404d4b84a9", "sha256": "9b7eb7d0b44e00e16411c04c1cf8e907d0a86a896dad964ab55693c6ea29753f" }, "downloads": -1, "filename": "clauseur-0.6.1.tar.gz", "has_sig": false, "md5_digest": "0b3e9ac1631131ec6bd4e2404d4b84a9", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5", "size": 5953, "upload_time": "2019-04-25T14:52:13", "url": "https://files.pythonhosted.org/packages/a4/5c/883ee5c95fc23b26c34de758ff74e3f54dfe318ce43eab909b07a98b21e1/clauseur-0.6.1.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "5bd7951dde1fef33ade9a6f82d7936a0", "sha256": "ca489cd83cae8a5c44900708f24d3db8c7e7b4f7a8595b0eb9a21b351ab3b1c1" }, "downloads": -1, "filename": "clauseur-0.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5bd7951dde1fef33ade9a6f82d7936a0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5", "size": 7212, "upload_time": "2019-05-11T09:30:07", "url": "https://files.pythonhosted.org/packages/dc/5e/e8ff62a7900fe14c64f399c9972385169082fdbe3cdd72f7e5c5be7948e7/clauseur-0.7.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "678c537a40cf00e3afdb49a5fba92e4b", "sha256": "d3dc85352dae8510539e91970e5dfc4b1a8539bee20e3f9daf24c869050acaff" }, "downloads": -1, "filename": "clauseur-0.7.0.tar.gz", "has_sig": false, "md5_digest": "678c537a40cf00e3afdb49a5fba92e4b", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5", "size": 6169, "upload_time": "2019-05-11T09:30:09", "url": "https://files.pythonhosted.org/packages/71/0d/da9f0c14bda39caace3e056444e8a93da5bf7a0216dac8e79bfe207726cf/clauseur-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "375274b739e05b25cebd26cda18800b7", "sha256": "ce859a3ada18f5fb1cfeffa593e08b5630d2d290051f60d67360e3c7ea75d67b" }, "downloads": -1, "filename": "clauseur-0.7.1-py3-none-any.whl", "has_sig": false, "md5_digest": "375274b739e05b25cebd26cda18800b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5", "size": 7267, "upload_time": "2019-05-13T19:56:20", "url": "https://files.pythonhosted.org/packages/ba/8d/c75048e45d3743891e28ed339e998f612b19f98b5457718a325b6800a2af/clauseur-0.7.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e61e8fbacf89ebb636b2209caa098b2", "sha256": "e005d347d7414e04090aa116ece0599f27a693ba647aaedefabde20f69083be0" }, "downloads": -1, "filename": "clauseur-0.7.1.tar.gz", "has_sig": false, "md5_digest": "3e61e8fbacf89ebb636b2209caa098b2", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5", "size": 6222, "upload_time": "2019-05-13T19:56:21", "url": "https://files.pythonhosted.org/packages/d2/67/f47c965630086a3cf0cfa7b7e92488e12a5cea9b4d1b709fd417b9ca331e/clauseur-0.7.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "375274b739e05b25cebd26cda18800b7", "sha256": "ce859a3ada18f5fb1cfeffa593e08b5630d2d290051f60d67360e3c7ea75d67b" }, "downloads": -1, "filename": "clauseur-0.7.1-py3-none-any.whl", "has_sig": false, "md5_digest": "375274b739e05b25cebd26cda18800b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5", "size": 7267, "upload_time": "2019-05-13T19:56:20", "url": "https://files.pythonhosted.org/packages/ba/8d/c75048e45d3743891e28ed339e998f612b19f98b5457718a325b6800a2af/clauseur-0.7.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e61e8fbacf89ebb636b2209caa098b2", "sha256": "e005d347d7414e04090aa116ece0599f27a693ba647aaedefabde20f69083be0" }, "downloads": -1, "filename": "clauseur-0.7.1.tar.gz", "has_sig": false, "md5_digest": "3e61e8fbacf89ebb636b2209caa098b2", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5", "size": 6222, "upload_time": "2019-05-13T19:56:21", "url": "https://files.pythonhosted.org/packages/d2/67/f47c965630086a3cf0cfa7b7e92488e12a5cea9b4d1b709fd417b9ca331e/clauseur-0.7.1.tar.gz" } ] }