{ "info": { "author": "Lou Marvin Caraig", "author_email": "loumarvincaraig@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python", "Topic :: Internet", "Topic :: Internet :: WWW/HTTP" ], "description": "# RequestsThrottler: HTTP requests throttler\n\nRequestsThrottler is an Apache2 Licensed HTTP library, written in Python, and powered by futures and [Requests](https://github.com/kennethreitz/requests).\nSee the [full documentation](http://pythonhosted.org/RequestsThrottler).\n\nWith RequestsThrottler you can easily throttle HTTP requests! After having created your throttler with a delay of your choice, you just have to:\n\n1. Start the throttler\n2. Submit your requests\n3. Shutdown the throttler\n\nHere's an example:\n\n import requests\n from requests_throttler import BaseThrottler\n\n bt = BaseThrottler(name='base-throttler', delay=1.5)\n request = requests.Request(method='GET', url='http://www.google.com')\n reqs = [request for i in range(0, 5)]\n\n bt.start()\n throttled_requests = bt.multi_submit(reqs)\n bt.shutdown()\n\n responses = [tr.response for tr in throttled_requests]\n\n\nToo hard? Then just submit your requests inside a with statement! Here's an example:\n\n import requests\n from requests_throttler import BaseThrottler\n\n with BaseThrottler(name='base-throttler', delay=1.5) as bt:\n request = requests.Request(method='GET', url='http://www.google.com')\n reqs = [request for i in range(0, 5)]\n throttled_requests = bt.multi_submit(reqs)\n\n responses = [tr.response for tr in throttled_requests]\n\n\n## Installation\n\nUse `pip` to install RequestsThrottler:\n\n $ pip install RequestsThrottler\n\n\n## Features\n\n- `BaseThrottler` a simple throttler with a fixed amount of delay\n\n\n# Release History\n\n\n## 0.2.5 (2019-02-18)\n\n- Unpinned deps in `setup.py`\n\n\n## 0.2.4 (2014-07-13)\n\n- Fixed wrong request preparation (thanks to bleedinge for reporting the problem)\n\n\n## 0.2.3 (2014-02-16)\n\n- Fixed installation via `pip` (thanks to Gavin D'mello for reporting the problem)\n\n\n## 0.2.2 (2014-01-15)\n\n- Added possibility to use a user-defined session when using `BaseThrottler`\n- Fixed example, updated README\n\n\n## 0.2.1 (2014-01-14)\n\n- Added implicit way to set `delay` for `BaseThrottler` by using `reqs_over_time`\n\n\n## 0.2.0 (2014-01-04)\n\n- Reorganized modules\n- Changed `submit` method signature in favor of two methods: `submit` and `multi_submit`\n- Added documentation\n\n\n## 0.1.1 (2013-12-31)\n\n- Fixed not working previous release\n- Changed example.py\n\n\n## 0.1.0 (2013-12-30)\n\n- `BaseThrottler` a simple throttler with a fixed amount of delay\n\n\n", "description_content_type": "text/markdown", "docs_url": "https://pythonhosted.org/RequestsThrottler/", "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/se7entyse7en/requests-throttler", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "RequestsThrottler", "package_url": "https://pypi.org/project/RequestsThrottler/", "platform": "", "project_url": "https://pypi.org/project/RequestsThrottler/", "project_urls": { "Homepage": "https://github.com/se7entyse7en/requests-throttler" }, "release_url": "https://pypi.org/project/RequestsThrottler/0.2.5/", "requires_dist": [ "requests (>=2.1.0)", "futures (>=2.1.5)" ], "requires_python": "", "summary": "Python HTTP requests throttler", "version": "0.2.5" }, "last_serial": 4834529, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "3a71e9e448acd1b2d9d8761ba4c66ab2", "sha256": "a128bb62e337ddccdf7a1f57f101330d8fba9d8d5dfd87c15edbd576a7ec6fe2" }, "downloads": -1, "filename": "RequestsThrottler-0.1.0.tar.gz", "has_sig": false, "md5_digest": "3a71e9e448acd1b2d9d8761ba4c66ab2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11154, "upload_time": "2013-12-30T19:03:28", "url": "https://files.pythonhosted.org/packages/d5/db/fc7558a14efa163cd2d3e4515cdfbbfc2dacc1d2c4285b095104c58065c7/RequestsThrottler-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "5bfed774895cdbeaf00ac4c46727d4a0", "sha256": "00c138e51cecde9672e64d4d74edbce130a15fecb7a51d6f3d0ece4df68627c3" }, "downloads": -1, "filename": "RequestsThrottler-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5bfed774895cdbeaf00ac4c46727d4a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11366, "upload_time": "2013-12-30T23:57:55", "url": "https://files.pythonhosted.org/packages/0c/ef/ac8a830a8177fcdf865547d67272f2bd34b247b4f65f81a1f8bd77ee43df/RequestsThrottler-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "900e285c04cd27d36f30c17a1eec3dc9", "sha256": "a70da4ed94b1bb5867b4a6286747862202004980d2bfd6a73f4362425189e721" }, "downloads": -1, "filename": "RequestsThrottler-0.2.0.tar.gz", "has_sig": false, "md5_digest": "900e285c04cd27d36f30c17a1eec3dc9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12479, "upload_time": "2014-01-04T23:08:25", "url": "https://files.pythonhosted.org/packages/b1/c4/d05888f4b172495747b6edc320c096cd4c553a0c65ae9964b9fc0d9a9c63/RequestsThrottler-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "50fd70cdaa4f7e8e45073be6c625ba0c", "sha256": "42bb55603a62010ad90ae73f247a36a3e0097b8d62435566c16090b907b22dfa" }, "downloads": -1, "filename": "RequestsThrottler-0.2.1.tar.gz", "has_sig": false, "md5_digest": "50fd70cdaa4f7e8e45073be6c625ba0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13315, "upload_time": "2014-01-14T00:05:57", "url": "https://files.pythonhosted.org/packages/bd/bc/f7abf22b7c7bcad31b53d6bdc82a665f65493c8eea5c1ec40b9ac1f2093c/RequestsThrottler-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "e1b9ca836fae89a3e618e9bdd899fd16", "sha256": "73b9559c7150966464d639a4a3753f06e2d2223a40b0a48a2e5adba84af42ec1" }, "downloads": -1, "filename": "RequestsThrottler-0.2.2.tar.gz", "has_sig": false, "md5_digest": "e1b9ca836fae89a3e618e9bdd899fd16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13454, "upload_time": "2014-01-15T21:16:32", "url": "https://files.pythonhosted.org/packages/9e/5d/1aa7aecf146198972ad2b2803462f29992f9e2d6df992dc6d4d71e38915d/RequestsThrottler-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "93e571f15e32469fdc268d58708662fe", "sha256": "17c781311198d478e8cba765e9bba0654ee0ff9aaf648d87871b618f89166415" }, "downloads": -1, "filename": "RequestsThrottler-0.2.3.tar.gz", "has_sig": false, "md5_digest": "93e571f15e32469fdc268d58708662fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13877, "upload_time": "2014-02-16T19:40:11", "url": "https://files.pythonhosted.org/packages/be/64/41c894bdd0bdd4fabe796c483fcb72506262778f1aa3d4b90c42b55a9e67/RequestsThrottler-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "c774d28f68e9e8dcadf2c1e613a184d0", "sha256": "a41fdb56a7a6e2d0c365b8829948c7bdd468f5d67f34337093627101ff76dcfa" }, "downloads": -1, "filename": "RequestsThrottler-0.2.4.tar.gz", "has_sig": false, "md5_digest": "c774d28f68e9e8dcadf2c1e613a184d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14007, "upload_time": "2014-07-13T10:33:06", "url": "https://files.pythonhosted.org/packages/f2/ab/4753265ecb01078eb79d63cbacc18d806298f8925c9697915d49b6bceb27/RequestsThrottler-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "982129ae36bd81c19ce7cdac8fa531d6", "sha256": "c25cf05be5ecceb624d4e6d65d621d764d9385a027613dae4847d4fc67126680" }, "downloads": -1, "filename": "RequestsThrottler-0.2.5-py2-none-any.whl", "has_sig": false, "md5_digest": "982129ae36bd81c19ce7cdac8fa531d6", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 16093, "upload_time": "2019-02-18T11:11:08", "url": "https://files.pythonhosted.org/packages/02/3e/b855f66645325147fd0e81bdca64ded6f61b7d0e962a8d24e8f64b93c7ce/RequestsThrottler-0.2.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d16ba27f7324e4920a56fe843f26b18", "sha256": "dabba1fc94353199ba61541b58462012388f445ffc0f89f25856739ad544e395" }, "downloads": -1, "filename": "RequestsThrottler-0.2.5.tar.gz", "has_sig": false, "md5_digest": "3d16ba27f7324e4920a56fe843f26b18", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13861, "upload_time": "2019-02-18T11:11:10", "url": "https://files.pythonhosted.org/packages/d3/f3/a7e9e051f356c3b412bcb139ebbb26e5750be2d6af7c64aa495d125787b5/RequestsThrottler-0.2.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "982129ae36bd81c19ce7cdac8fa531d6", "sha256": "c25cf05be5ecceb624d4e6d65d621d764d9385a027613dae4847d4fc67126680" }, "downloads": -1, "filename": "RequestsThrottler-0.2.5-py2-none-any.whl", "has_sig": false, "md5_digest": "982129ae36bd81c19ce7cdac8fa531d6", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 16093, "upload_time": "2019-02-18T11:11:08", "url": "https://files.pythonhosted.org/packages/02/3e/b855f66645325147fd0e81bdca64ded6f61b7d0e962a8d24e8f64b93c7ce/RequestsThrottler-0.2.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d16ba27f7324e4920a56fe843f26b18", "sha256": "dabba1fc94353199ba61541b58462012388f445ffc0f89f25856739ad544e395" }, "downloads": -1, "filename": "RequestsThrottler-0.2.5.tar.gz", "has_sig": false, "md5_digest": "3d16ba27f7324e4920a56fe843f26b18", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13861, "upload_time": "2019-02-18T11:11:10", "url": "https://files.pythonhosted.org/packages/d3/f3/a7e9e051f356c3b412bcb139ebbb26e5750be2d6af7c64aa495d125787b5/RequestsThrottler-0.2.5.tar.gz" } ] }