A Python wrapper for waifu.im API.
Project description
waifuim.py
A Python wrapper for waifu.im API.
Table of Contents
Installation
Python 3.6 or higher is required.
Install from PyPI
$ pip install waifuim.py
Install from source
$ pip install git+https://github.com/Waifu-im/waifuim.py
Usage
For now you can only use WaifuAioClient wich is async. Maybe a sync client will be released in the future.
Examples with WaifuAioClient
import asyncio
from waifuim import WaifuAioClient
async def main():
async with WaifuAioClient() as wf:
# Get the json that the api return for the waifu tag
waifujson= await wf.sfw('waifu',raw = True)
# Get one random image url for the waifu tag
waifu_url = await wf.sfw('waifu')
# Get 30 images url for the waifu tag (12 is the tag id)
waifulist= await wf.nsfw(12, many = True)
# Get one ero image excluding some files and the .gif extension
ero = await wf.nsfw('ero',exclude = ['file1', 'file2.png'], gif = False)
# Get your gallery (returns a dict)
gallery=await wf.fav(toggle = ['file20'], insert = ['file1'], token = "A token")
#get the endpoints
endpoints=await wf.endpoints(full = True) #it is optional
# Get some informations about one or multiple images
info=await wf.info(images = ["file1.png" ,"file2"])
# Get the 30 most liked waifu images
top=await wf.sfw("waifu", many = True, top = True)
# Get completly random images, you can use same kwargs as sfw and nsfw
random=await wf.random()
asyncio.run(main())
import asyncio
from waifuim import WaifuAioClient
async def main():
wf=WaifuAioClient()
# Get the json that the api return for the waifu tag
waifujson= await wf.sfw('waifu', raw = True)
# Get one random image url for the waifu tag
waifu_url = await wf.sfw('waifu')
# Get 30 images url for the waifu tag (12 is the tag id)
waifulist= await wf.nsfw('waifu', many = True)
# Get one ero image excluding some files and the .gif extension
ero = await wf.nsfw('ero', exclude = ['file1', 'file2.png', 'file3.jpeg'], gif = False)
# Get your gallery (returns a dict)
gallery=await wf.fav(toggle = ['file20'], delete = ['file1'])
# Get the endpoints
endpoints=await wf.endpoints(full=True) #it is optional
# Get some informations about one or multiple images
info=await wf.info(images = ["file1.png", "file2"])
# Get the 30 most liked waifu images
top=await wf.sfw("waifu", many = True, top = True)
# Get completly random images, you can use same kwargs as sfw and nsfw
random=await wf.random()
await wf.close()
asyncio.run(main())
Some interesting attributes
You can pass some useful kwargs to the class
from waifuim import WaifuAioClient
wf = WaifuAioClient(session = an_aiohttpClientSession_created_asynchronously,
appname = "TheNameOfYourApplication",
token = "The default token to use in routes requiring authentifiction.")
# ...
License
MIT © Buco
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
waifuim.py-2.4.3.tar.gz
(7.7 kB
view details)
File details
Details for the file waifuim.py-2.4.3.tar.gz.
File metadata
- Download URL: waifuim.py-2.4.3.tar.gz
- Upload date:
- Size: 7.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed2f09f40f6848a929b5adc0adb83fc601f93f539d42274b639ffeb1e70cde4d
|
|
| MD5 |
9cfbba10a8884a9dd5d5ca68abe9bebd
|
|
| BLAKE2b-256 |
1419d2d1dfc40cbb31e8b82e38eb9f696b3253b9901ad19609458461b373285d
|