diff options
author | CoprDistGit <infra@openeuler.org> | 2023-04-11 22:33:53 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-04-11 22:33:53 +0000 |
commit | 2ebd814fdbb2f5fa848f1fbd5cddc2a04e50cf2d (patch) | |
tree | 0f46b8e9a8c73014169ce2f19d704b08768bbf21 | |
parent | 8a9ff577bf5fda4cb8745e0ec121c933d2039e24 (diff) |
automatic import of python-many-requests
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-many-requests.spec | 272 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 274 insertions, 0 deletions
@@ -0,0 +1 @@ +/many_requests-0.2.1.tar.gz diff --git a/python-many-requests.spec b/python-many-requests.spec new file mode 100644 index 0000000..f11c32a --- /dev/null +++ b/python-many-requests.spec @@ -0,0 +1,272 @@ +%global _empty_manifest_terminate_build 0 +Name: python-many-requests +Version: 0.2.1 +Release: 1 +Summary: Dead easy interface for executing many HTTP requests asynchronously. Also provides helper functions for executing embarrassingly parallel async coroutines. +License: MIT License +URL: https://github.com/joshlk/many_requests +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/43/63/6e65967a4afd327f2b1f7898b52fb3fa985561ceca6b36a15b66c180ba5c/many_requests-0.2.1.tar.gz +BuildArch: noarch + +Requires: python3-trio +Requires: python3-asks +Requires: python3-tqdm +Requires: python3-pytest +Requires: python3-wheel +Requires: python3-setuptools +Requires: python3-twine +Requires: python3-sphinx +Requires: python3-codecov +Requires: python3-recommonmark +Requires: python3-sphinx-rtd-theme +Requires: python3-bump2version +Requires: python3-aiohttp +Requires: python3-requests +Requires: python3-aiohttp-basicauth-middleware +Requires: python3-sphinx +Requires: python3-sphinx-rtd-theme + +%description +[](https://pypi.org/project/many_requests/) + +[](https://travis-ci.com/joshlk/many_requests) +[](https://joshlk.github.io/many_requests) + +# many_requests + +Dead easy interface for executing many HTTP requests asynchronously. +It has been tested in the wild with over 10 million requests. +Automatically handles errors and executes retries. + +Built on-top of [Trio](https://github.com/python-trio/trio) and [asks](https://github.com/theelous3/asks). Interface heavily inspired by [Requests](https://github.com/psf/requests) and [joblib](https://github.com/joblib/joblib). + +Also provides helper functions for executing [embarrassingly parallel](https://en.wikipedia.org/wiki/Embarrassingly_parallel) async coroutines. + +To install: + +```bash +pip install many-requests +``` + +## Example Usage + +Execute 10 GET requests for example.org: + +```python +from many_requests import ManyRequests +responses = ManyRequests(n_workers=5, n_connections=5)( + method='GET', + url=['https://example.org' for i in range(10)]) +``` + +Query HackNews API for 10 items and parse JSON output: + +```python +responses = ManyRequests(n_workers=5, n_connections=5, json=True)( + method='GET', + url=[f'https://hacker-news.firebaseio.com/v0/item/{i}.json?print=pretty' for i in range(10)]) +``` + +To use basic authentication with all requests: + +```python +from asks import BasicAuth +username = 'user' +password = 'pw' +responses = ManyRequests(n_workers=5, n_connections=5)( + method='GET', + url=['https://example.org' for i in range(10)], + auth=BasicAuth((username, password))) +``` + +To execute embarrassingly parallel async coroutines, for example 10 `trio.sleep` calls: + +```python +from many_requests import EasyAsync, delayed +import trio +outputs = EasyAsync(n_workers = 4)(delayed(trio.sleep)(i) for i in range(10)) +``` + + + + +%package -n python3-many-requests +Summary: Dead easy interface for executing many HTTP requests asynchronously. Also provides helper functions for executing embarrassingly parallel async coroutines. +Provides: python-many-requests +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-many-requests +[](https://pypi.org/project/many_requests/) + +[](https://travis-ci.com/joshlk/many_requests) +[](https://joshlk.github.io/many_requests) + +# many_requests + +Dead easy interface for executing many HTTP requests asynchronously. +It has been tested in the wild with over 10 million requests. +Automatically handles errors and executes retries. + +Built on-top of [Trio](https://github.com/python-trio/trio) and [asks](https://github.com/theelous3/asks). Interface heavily inspired by [Requests](https://github.com/psf/requests) and [joblib](https://github.com/joblib/joblib). + +Also provides helper functions for executing [embarrassingly parallel](https://en.wikipedia.org/wiki/Embarrassingly_parallel) async coroutines. + +To install: + +```bash +pip install many-requests +``` + +## Example Usage + +Execute 10 GET requests for example.org: + +```python +from many_requests import ManyRequests +responses = ManyRequests(n_workers=5, n_connections=5)( + method='GET', + url=['https://example.org' for i in range(10)]) +``` + +Query HackNews API for 10 items and parse JSON output: + +```python +responses = ManyRequests(n_workers=5, n_connections=5, json=True)( + method='GET', + url=[f'https://hacker-news.firebaseio.com/v0/item/{i}.json?print=pretty' for i in range(10)]) +``` + +To use basic authentication with all requests: + +```python +from asks import BasicAuth +username = 'user' +password = 'pw' +responses = ManyRequests(n_workers=5, n_connections=5)( + method='GET', + url=['https://example.org' for i in range(10)], + auth=BasicAuth((username, password))) +``` + +To execute embarrassingly parallel async coroutines, for example 10 `trio.sleep` calls: + +```python +from many_requests import EasyAsync, delayed +import trio +outputs = EasyAsync(n_workers = 4)(delayed(trio.sleep)(i) for i in range(10)) +``` + + + + +%package help +Summary: Development documents and examples for many-requests +Provides: python3-many-requests-doc +%description help +[](https://pypi.org/project/many_requests/) + +[](https://travis-ci.com/joshlk/many_requests) +[](https://joshlk.github.io/many_requests) + +# many_requests + +Dead easy interface for executing many HTTP requests asynchronously. +It has been tested in the wild with over 10 million requests. +Automatically handles errors and executes retries. + +Built on-top of [Trio](https://github.com/python-trio/trio) and [asks](https://github.com/theelous3/asks). Interface heavily inspired by [Requests](https://github.com/psf/requests) and [joblib](https://github.com/joblib/joblib). + +Also provides helper functions for executing [embarrassingly parallel](https://en.wikipedia.org/wiki/Embarrassingly_parallel) async coroutines. + +To install: + +```bash +pip install many-requests +``` + +## Example Usage + +Execute 10 GET requests for example.org: + +```python +from many_requests import ManyRequests +responses = ManyRequests(n_workers=5, n_connections=5)( + method='GET', + url=['https://example.org' for i in range(10)]) +``` + +Query HackNews API for 10 items and parse JSON output: + +```python +responses = ManyRequests(n_workers=5, n_connections=5, json=True)( + method='GET', + url=[f'https://hacker-news.firebaseio.com/v0/item/{i}.json?print=pretty' for i in range(10)]) +``` + +To use basic authentication with all requests: + +```python +from asks import BasicAuth +username = 'user' +password = 'pw' +responses = ManyRequests(n_workers=5, n_connections=5)( + method='GET', + url=['https://example.org' for i in range(10)], + auth=BasicAuth((username, password))) +``` + +To execute embarrassingly parallel async coroutines, for example 10 `trio.sleep` calls: + +```python +from many_requests import EasyAsync, delayed +import trio +outputs = EasyAsync(n_workers = 4)(delayed(trio.sleep)(i) for i in range(10)) +``` + + + + +%prep +%autosetup -n many-requests-0.2.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-many-requests -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.1-1 +- Package Spec generated @@ -0,0 +1 @@ +b4e15b320545ad5ecd01a4dd094ea455 many_requests-0.2.1.tar.gz |