2020-03-16 21:02:05 -04:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
2023-10-16 09:46:31 -04:00
|
|
|
|
|
|
|
from ubot.micro_bot import micro_bot
|
|
|
|
|
|
|
|
ldr = micro_bot.loader
|
|
|
|
|
|
|
|
CAT_URL = 'http://api.thecatapi.com/v1/images/search'
|
|
|
|
DOG_URL = 'http://api.thedogapi.com/v1/images/search'
|
|
|
|
SHIBE_URL = 'http://shibe.online/api/shibes'
|
|
|
|
BIRD_URL = 'http://shibe.online/api/birds'
|
|
|
|
CAT_API_KEY = 'e5a56813-be40-481c-9c8a-a6585c37c1fe'
|
|
|
|
DOG_API_KEY = '105555df-5c50-40fe-bd59-d15a17ce1c2e'
|
|
|
|
CAT_HEADERS = {"x-api-key": CAT_API_KEY}
|
|
|
|
DOG_HEADERS = {"x-api-key": DOG_API_KEY}
|
|
|
|
IMGPARAM = {"mime_types": "jpg,png"}
|
|
|
|
GIFPARAM = {"mime_types": "gif"}
|
|
|
|
|
|
|
|
|
|
|
|
async def neko_atsume(params):
|
2020-05-09 13:15:08 -04:00
|
|
|
async with ldr.aioclient.get(CAT_URL, params=params, headers=CAT_HEADERS) as response:
|
2023-10-16 09:46:31 -04:00
|
|
|
if response.status == 200:
|
|
|
|
neko = await response.json()
|
|
|
|
else:
|
|
|
|
neko = response.status
|
|
|
|
|
|
|
|
return neko
|
|
|
|
|
|
|
|
|
|
|
|
async def inu_atsume(params):
|
2020-05-09 13:15:08 -04:00
|
|
|
async with ldr.aioclient.get(DOG_URL, params=params, headers=DOG_HEADERS) as response:
|
2023-10-16 09:46:31 -04:00
|
|
|
if response.status == 200:
|
|
|
|
inu = await response.json()
|
|
|
|
else:
|
|
|
|
inu = response.status
|
|
|
|
|
|
|
|
return inu
|
|
|
|
|
|
|
|
|
|
|
|
async def shibe_inu_atsume():
|
2020-05-09 13:15:08 -04:00
|
|
|
async with ldr.aioclient.get(SHIBE_URL, params=None, headers=None) as response:
|
2023-10-16 09:46:31 -04:00
|
|
|
if response.status == 200:
|
|
|
|
shibe_inu = await response.json()
|
|
|
|
else:
|
|
|
|
shibe_inu = response.status
|
|
|
|
|
|
|
|
return shibe_inu
|
|
|
|
|
|
|
|
|
|
|
|
async def tori_atsume():
|
2020-05-09 13:15:08 -04:00
|
|
|
async with ldr.aioclient.get(BIRD_URL, params=None, headers=None) as response:
|
2023-10-16 09:46:31 -04:00
|
|
|
if response.status == 200:
|
|
|
|
tori = await response.json()
|
|
|
|
else:
|
|
|
|
tori = response.status
|
|
|
|
|
|
|
|
return tori
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("shibe")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def shibe(event):
|
|
|
|
shibe_inu = await shibe_inu_atsume()
|
|
|
|
|
|
|
|
if isinstance(shibe_inu, int):
|
|
|
|
await event.reply(f"`There was an error finding the shibes! :( -> {shibe_inu}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=shibe_inu[0])
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("bird")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def bird(event):
|
|
|
|
tori = await tori_atsume()
|
|
|
|
|
|
|
|
if isinstance(tori, int):
|
|
|
|
await event.reply(f"`There was an error finding the birdies! :( -> {tori}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=tori[0])
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("(cat|pussy)")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def cat(event):
|
|
|
|
neko = await neko_atsume(IMGPARAM)
|
|
|
|
|
|
|
|
if isinstance(neko, int):
|
|
|
|
await event.reply(f"`There was an error finding the cats! :( -> {neko}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=neko[0]["url"])
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("(cathd|pussyhd)")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def cathd(event):
|
|
|
|
neko = await neko_atsume(IMGPARAM)
|
|
|
|
|
|
|
|
if isinstance(neko, int):
|
|
|
|
await event.reply(f"`There was an error finding the cats! :( -> {neko}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=neko[0]["url"], force_document=True)
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("(catgif|pussygif)")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def catgif(event):
|
|
|
|
neko = await neko_atsume(GIFPARAM)
|
|
|
|
|
|
|
|
if isinstance(neko, int):
|
|
|
|
await event.reply(f"`There was an error finding the cats! :( -> {neko}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=neko[0]["url"])
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("(dog|bitch)")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def dog(event):
|
|
|
|
inu = await inu_atsume(IMGPARAM)
|
|
|
|
|
|
|
|
if isinstance(inu, int):
|
|
|
|
await event.reply(f"`There was an error finding the dogs! :( -> {inu}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=inu[0]["url"])
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("(doghd|bitchhd)")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def doghd(event):
|
|
|
|
inu = await inu_atsume(IMGPARAM)
|
|
|
|
|
|
|
|
if isinstance(inu, int):
|
|
|
|
await event.reply(f"`There was an error finding the dogs! :( -> {inu}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=inu[0]["url"], force_document=True).delete()
|
|
|
|
|
|
|
|
|
2020-05-02 17:04:27 -04:00
|
|
|
@ldr.add("(doggif|bitchgif)")
|
2023-10-16 09:46:31 -04:00
|
|
|
async def doggif(event):
|
|
|
|
inu = await inu_atsume(GIFPARAM)
|
|
|
|
|
|
|
|
if isinstance(inu, int):
|
|
|
|
await event.reply(f"`There was an error finding the dogs! :( -> {inu}`")
|
|
|
|
return
|
|
|
|
|
|
|
|
await event.reply(file=inu[0]["url"])
|