%global _empty_manifest_terminate_build 0 Name: python-pygelbooru Version: 0.5.0 Release: 1 Summary: PyGelbooru is an unofficial and lightweight asynchronous library for Gelbooru compatible API's. License: gpl-3.0 URL: https://github.com/FujiMakoto/pygelbooru Source0: https://mirrors.aliyun.com/pypi/web/packages/3e/c4/e3291d3e7985d9269c02832fcc9863682ca4456c187d033a5597761fb8f2/pygelbooru-0.5.0.tar.gz BuildArch: noarch Requires: python3-aiohttp Requires: python3-furl Requires: python3-xmltodict %description # PyGelbooru  PyGelbooru is an unofficial and lightweight asynchronous library for the [Gelbooru](https://gelbooru.com/) API. # Installation This library requires [Python 3.6](https://www.python.org) or above. You can install the library through pip as follows, ```shell script pip install pygelbooru ``` ## Usage ### Searching The primary use for this library is, naturally, to search for images with specific tags. This can be done as so: ```python from pygelbooru import Gelbooru # API key/user ID is optional, but access may be limited without them gelbooru = Gelbooru('API_KEY', 'USER_ID') results = await gelbooru.search_posts(tags=['dog ears', '1girl'], exclude_tags=['nude']) [<GelbooruImage(id=5105386, filename='b77e69be0a4b...dde071dc.jpeg', owner='anon2003')>, <GelbooruImage(id=5105161, filename='bf169f891ebe...02bceb5e.jpeg', owner='cpee')>, <GelbooruImage(id=5104148, filename='46df3ebe2d41...4316d218e.jpg', owner='danbooru')>, <GelbooruImage(id=5104080, filename='e8eec23d151e...419293401.png', owner='anon2003')>, <GelbooruImage(id=5103937, filename='5bf279f3c546...be3fc53c8.jpg', owner='danbooru')>, ... ``` Tags **can** contain spaces when passed as arguments, they will simply be reformated with underscores before being queried, so you don't need to reformat them yourself. Results are returned as a list of GelbooruImage containers. When cast to a string, this will return the image_url, ```python str(results[0]) 'https://img2.gelbooru.com/images/b7/7e/b77e69be0a4b581eac597527dde071dc.jpeg' ``` You can also pull other information returned by the API, https://github.com/FujiMakoto/pygelbooru/blob/master/pygelbooru/gelbooru.py#L32-L47 ### Searching (Random) In addition to searching for a large list of images, PyGelbooru also provides a helper method for when you're really just after a single, random image that matches the specified tags. This method will automatically pull a random image from the last 20,000 Gelbooru image submissions. ```python result = await gelbooru.random_post(tags=['cat ears', '1girl', 'cat hood', 'bell'], exclude_tags=['nude']) <GelbooruImage(id=5106718, filename='bbbdfbf9e883...161753514.png', owner='6498')> ``` ### Comments You can fetch post comments directly from the GelbooruImage container, ```python post = await gelbooru.get_post(5099841) await post.get_comments() [<GelbooruComment(id=2486074, author='Anonymous', created_at='2020-01-28 08:47')>] ``` ### Tags Besides searching for images, you can also pull information on tags as follows, ```python await gelbooru.tag_list(name='dog ears') <GelbooruTag(id=773, name='dog_ears', count=22578)> # Use "name_pattern" to search for partial matches to a specified tag await gelbooru.tag_list(name_pattern='%splatoon%', limit=4) [<GelbooruTag(id=892683, name='splatoon_(series)', count=11353)>, <GelbooruTag(id=759189, name='splatoon_2', count=3488)>, <GelbooruTag(id=612372, name='aori_(splatoon)', count=2266)>, <GelbooruTag(id=612374, name='hotaru_(splatoon)', count=2248)>] ``` %package -n python3-pygelbooru Summary: PyGelbooru is an unofficial and lightweight asynchronous library for Gelbooru compatible API's. Provides: python-pygelbooru BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-pygelbooru # PyGelbooru  PyGelbooru is an unofficial and lightweight asynchronous library for the [Gelbooru](https://gelbooru.com/) API. # Installation This library requires [Python 3.6](https://www.python.org) or above. You can install the library through pip as follows, ```shell script pip install pygelbooru ``` ## Usage ### Searching The primary use for this library is, naturally, to search for images with specific tags. This can be done as so: ```python from pygelbooru import Gelbooru # API key/user ID is optional, but access may be limited without them gelbooru = Gelbooru('API_KEY', 'USER_ID') results = await gelbooru.search_posts(tags=['dog ears', '1girl'], exclude_tags=['nude']) [<GelbooruImage(id=5105386, filename='b77e69be0a4b...dde071dc.jpeg', owner='anon2003')>, <GelbooruImage(id=5105161, filename='bf169f891ebe...02bceb5e.jpeg', owner='cpee')>, <GelbooruImage(id=5104148, filename='46df3ebe2d41...4316d218e.jpg', owner='danbooru')>, <GelbooruImage(id=5104080, filename='e8eec23d151e...419293401.png', owner='anon2003')>, <GelbooruImage(id=5103937, filename='5bf279f3c546...be3fc53c8.jpg', owner='danbooru')>, ... ``` Tags **can** contain spaces when passed as arguments, they will simply be reformated with underscores before being queried, so you don't need to reformat them yourself. Results are returned as a list of GelbooruImage containers. When cast to a string, this will return the image_url, ```python str(results[0]) 'https://img2.gelbooru.com/images/b7/7e/b77e69be0a4b581eac597527dde071dc.jpeg' ``` You can also pull other information returned by the API, https://github.com/FujiMakoto/pygelbooru/blob/master/pygelbooru/gelbooru.py#L32-L47 ### Searching (Random) In addition to searching for a large list of images, PyGelbooru also provides a helper method for when you're really just after a single, random image that matches the specified tags. This method will automatically pull a random image from the last 20,000 Gelbooru image submissions. ```python result = await gelbooru.random_post(tags=['cat ears', '1girl', 'cat hood', 'bell'], exclude_tags=['nude']) <GelbooruImage(id=5106718, filename='bbbdfbf9e883...161753514.png', owner='6498')> ``` ### Comments You can fetch post comments directly from the GelbooruImage container, ```python post = await gelbooru.get_post(5099841) await post.get_comments() [<GelbooruComment(id=2486074, author='Anonymous', created_at='2020-01-28 08:47')>] ``` ### Tags Besides searching for images, you can also pull information on tags as follows, ```python await gelbooru.tag_list(name='dog ears') <GelbooruTag(id=773, name='dog_ears', count=22578)> # Use "name_pattern" to search for partial matches to a specified tag await gelbooru.tag_list(name_pattern='%splatoon%', limit=4) [<GelbooruTag(id=892683, name='splatoon_(series)', count=11353)>, <GelbooruTag(id=759189, name='splatoon_2', count=3488)>, <GelbooruTag(id=612372, name='aori_(splatoon)', count=2266)>, <GelbooruTag(id=612374, name='hotaru_(splatoon)', count=2248)>] ``` %package help Summary: Development documents and examples for pygelbooru Provides: python3-pygelbooru-doc %description help # PyGelbooru  PyGelbooru is an unofficial and lightweight asynchronous library for the [Gelbooru](https://gelbooru.com/) API. # Installation This library requires [Python 3.6](https://www.python.org) or above. You can install the library through pip as follows, ```shell script pip install pygelbooru ``` ## Usage ### Searching The primary use for this library is, naturally, to search for images with specific tags. This can be done as so: ```python from pygelbooru import Gelbooru # API key/user ID is optional, but access may be limited without them gelbooru = Gelbooru('API_KEY', 'USER_ID') results = await gelbooru.search_posts(tags=['dog ears', '1girl'], exclude_tags=['nude']) [<GelbooruImage(id=5105386, filename='b77e69be0a4b...dde071dc.jpeg', owner='anon2003')>, <GelbooruImage(id=5105161, filename='bf169f891ebe...02bceb5e.jpeg', owner='cpee')>, <GelbooruImage(id=5104148, filename='46df3ebe2d41...4316d218e.jpg', owner='danbooru')>, <GelbooruImage(id=5104080, filename='e8eec23d151e...419293401.png', owner='anon2003')>, <GelbooruImage(id=5103937, filename='5bf279f3c546...be3fc53c8.jpg', owner='danbooru')>, ... ``` Tags **can** contain spaces when passed as arguments, they will simply be reformated with underscores before being queried, so you don't need to reformat them yourself. Results are returned as a list of GelbooruImage containers. When cast to a string, this will return the image_url, ```python str(results[0]) 'https://img2.gelbooru.com/images/b7/7e/b77e69be0a4b581eac597527dde071dc.jpeg' ``` You can also pull other information returned by the API, https://github.com/FujiMakoto/pygelbooru/blob/master/pygelbooru/gelbooru.py#L32-L47 ### Searching (Random) In addition to searching for a large list of images, PyGelbooru also provides a helper method for when you're really just after a single, random image that matches the specified tags. This method will automatically pull a random image from the last 20,000 Gelbooru image submissions. ```python result = await gelbooru.random_post(tags=['cat ears', '1girl', 'cat hood', 'bell'], exclude_tags=['nude']) <GelbooruImage(id=5106718, filename='bbbdfbf9e883...161753514.png', owner='6498')> ``` ### Comments You can fetch post comments directly from the GelbooruImage container, ```python post = await gelbooru.get_post(5099841) await post.get_comments() [<GelbooruComment(id=2486074, author='Anonymous', created_at='2020-01-28 08:47')>] ``` ### Tags Besides searching for images, you can also pull information on tags as follows, ```python await gelbooru.tag_list(name='dog ears') <GelbooruTag(id=773, name='dog_ears', count=22578)> # Use "name_pattern" to search for partial matches to a specified tag await gelbooru.tag_list(name_pattern='%splatoon%', limit=4) [<GelbooruTag(id=892683, name='splatoon_(series)', count=11353)>, <GelbooruTag(id=759189, name='splatoon_2', count=3488)>, <GelbooruTag(id=612372, name='aori_(splatoon)', count=2266)>, <GelbooruTag(id=612374, name='hotaru_(splatoon)', count=2248)>] ``` %prep %autosetup -n pygelbooru-0.5.0 %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-pygelbooru -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Thu Jun 08 2023 Python_Bot <Python_Bot@openeuler.org> - 0.5.0-1 - Package Spec generated