{ "info": { "author": "Yufu Luo", "author_email": "fisherman.luo@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython" ], "description": "\n*******\nDoclink\n*******\n\n.. image:: https://travis-ci.org/Luoyufu/doclink.svg?branch=master\n \u00a0 \u00a0:target: https://travis-ci.org/Luoyufu/doclink\n\n.. image:: https://codecov.io/gh/Luoyufu/doclink/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/Luoyufu/doclink\n\n.. image:: https://img.shields.io/pypi/v/doclink.svg\n :target: https://pypi.python.org/pypi/doclink\n\n.. image:: https://img.shields.io/pypi/pyversions/doclink.svg\n :target: https://pypi.python.org/pypi/doclink\n\n| Build client for Web APIs from pydoc. Inspired by `Uplink `_.\n\nOverview\n========\n| Doclink turns a Python function into HTTP API by writting pydoc to declare the api meta.\n| It is based on Requests and uses YAML with predefined schema as api declaration.\n| When calling the function, response from HTTP API will be passed in as a parameter for futher handling.\n\nFeatures\n========\n* create python function as HTTP API with **pydoc**\n* **YAML** based schema for api declaration\n* handle api response in the **same** function\n* response hook as **middleware**\n* **all** args for Requests supported\n* select base_uri dynamicly from simple **router**\n\nQuick through, with httpbin\n=====\nCreate a consumer instance.\n\n.. code-block:: python\n\n from doclink import Consumer\n\n consumer = Consumer('http://httpbin.org/')\n\nAdd response hook(middleware).\n\n.. code-block:: python\n\n @consumer.resp_hook\n def json_hook(resp):\n resp.json = resp.json()\n\nAdd function for api declaration.\n\n.. code-block:: python\n\n @consumer.get('get')\n def get(resp):\n \"\"\"\n \n args:\n query:\n - arg1: arg1\n - arg2: arg2\n \n \"\"\"\n return resp.json['args']\n\nUse you api.\n\n.. code-block:: python\n\n >>> get()\n {\n \"arg1\": \"arg1\",\n \"arg2\": \"arg2\"\n }\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "doclink", "package_url": "https://pypi.org/project/doclink/", "platform": "", "project_url": "https://pypi.org/project/doclink/", "project_urls": null, "release_url": "https://pypi.org/project/doclink/1.1.0/", "requires_dist": [ "requests (>=2.18.0)", "uritemplate (>=3.0.0)", "pyyaml (>=3.12)", "requests-toolbelt (>=0.8.0)", "six (>=1.11.0)" ], "requires_python": "", "summary": "Create HTTP client from pydoc", "version": "1.1.0" }, "last_serial": 3638223, "releases": { "1.0.2": [ { "comment_text": "", "digests": { "md5": "ced97d64e6f1f81feace0b51b055386d", "sha256": "5d25e0932aa0ae8b94bdf5cc86d1297bd7450ad287a0c1a10ba4c7ddb5800bb7" }, "downloads": -1, "filename": "doclink-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ced97d64e6f1f81feace0b51b055386d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15681, "upload_time": "2018-02-23T10:10:15", "url": "https://files.pythonhosted.org/packages/87/4c/76a5f506fd70c38a1e2629f7e9f191c7eba4717e9e0b69d1546c6332395a/doclink-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5d3f7e3c5b2539d168776c564f975da0", "sha256": "f9ad7c7692990e3640c8d9cac7ae2e51413f132cc789df945dbff90609c57120" }, "downloads": -1, "filename": "doclink-1.0.2.tar.gz", "has_sig": false, "md5_digest": "5d3f7e3c5b2539d168776c564f975da0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10257, "upload_time": "2018-02-23T10:10:17", "url": "https://files.pythonhosted.org/packages/5e/2d/e04cfed0492ebaf8bc23f5a0f3462e606697c4d76e359c7c991d361737d7/doclink-1.0.2.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "ac2c9592f50b9cf8ba75f00e313c13d1", "sha256": "cbab2a520bf49c6840e2ead1e5d25abd04ce739c039473894a6d98c1a68f774c" }, "downloads": -1, "filename": "doclink-1.0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ac2c9592f50b9cf8ba75f00e313c13d1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15780, "upload_time": "2018-02-24T15:09:28", "url": "https://files.pythonhosted.org/packages/5e/99/295ca197e0fd6f31b0e792eb352ea57270d7adc7862d820e38a32a922bd6/doclink-1.0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "592bea3680795ff1c7eb9233be996a05", "sha256": "70288fdc20f3a8672b65f19f3a25e45d611a89bc7b5a5c1a80c15ecd9657bdb1" }, "downloads": -1, "filename": "doclink-1.0.5.tar.gz", "has_sig": false, "md5_digest": "592bea3680795ff1c7eb9233be996a05", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10298, "upload_time": "2018-02-24T15:09:29", "url": "https://files.pythonhosted.org/packages/89/1f/9f51d7e514d427bc1fa98ad736df5aff5e672de509fe3fa264281d038cf6/doclink-1.0.5.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "8671c461aebb87cc2e8992c96bbc55ab", "sha256": "c850f92458aea91eb62f14d7092c2267af2f59e87f73acbce10cd3d5b320ada4" }, "downloads": -1, "filename": "doclink-1.0.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8671c461aebb87cc2e8992c96bbc55ab", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16215, "upload_time": "2018-02-25T09:47:41", "url": "https://files.pythonhosted.org/packages/e2/95/90749382a09562a7a634322745cbb1b077e6ee52104c39ab0b1ebbc99eaa/doclink-1.0.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04f1144781aab4f1fe675d19186e8205", "sha256": "0352d21864f6ba5b810cb4e737496c0aa62efd44e7005b16ed6eb03aafc1dd59" }, "downloads": -1, "filename": "doclink-1.0.7.tar.gz", "has_sig": false, "md5_digest": "04f1144781aab4f1fe675d19186e8205", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10421, "upload_time": "2018-02-25T09:47:44", "url": "https://files.pythonhosted.org/packages/0f/2f/7c4bfa5085cb3f61b835475e958eed198f0b33183c6c1ee3a656b804903b/doclink-1.0.7.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "0580513fa976dc25dec8a16c9a4846e2", "sha256": "de509a3245c5ffceca3de4272c7b7c9f884209b999279d700fa4faf85e15d3db" }, "downloads": -1, "filename": "doclink-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0580513fa976dc25dec8a16c9a4846e2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16290, "upload_time": "2018-03-04T15:18:04", "url": "https://files.pythonhosted.org/packages/3e/e4/2ec88888d2379c8638b0b3c9a18d79c21ded0f1de109894545374370d5a2/doclink-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c7868afb76d568a21b17c71a96438b17", "sha256": "35ce6b522a4d38c47445f74367560d08e43f369abac6bcb4b8c349988a91ad7f" }, "downloads": -1, "filename": "doclink-1.1.0.tar.gz", "has_sig": false, "md5_digest": "c7868afb76d568a21b17c71a96438b17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10517, "upload_time": "2018-03-04T15:18:05", "url": "https://files.pythonhosted.org/packages/e2/09/6e71a3462518343a1137e50d6f843dba7044ffc62f7e3b0c069e4a7a54b9/doclink-1.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0580513fa976dc25dec8a16c9a4846e2", "sha256": "de509a3245c5ffceca3de4272c7b7c9f884209b999279d700fa4faf85e15d3db" }, "downloads": -1, "filename": "doclink-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0580513fa976dc25dec8a16c9a4846e2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16290, "upload_time": "2018-03-04T15:18:04", "url": "https://files.pythonhosted.org/packages/3e/e4/2ec88888d2379c8638b0b3c9a18d79c21ded0f1de109894545374370d5a2/doclink-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c7868afb76d568a21b17c71a96438b17", "sha256": "35ce6b522a4d38c47445f74367560d08e43f369abac6bcb4b8c349988a91ad7f" }, "downloads": -1, "filename": "doclink-1.1.0.tar.gz", "has_sig": false, "md5_digest": "c7868afb76d568a21b17c71a96438b17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10517, "upload_time": "2018-03-04T15:18:05", "url": "https://files.pythonhosted.org/packages/e2/09/6e71a3462518343a1137e50d6f843dba7044ffc62f7e3b0c069e4a7a54b9/doclink-1.1.0.tar.gz" } ] }