asyncdagpi
Powerful Asynchronous Wrapper for dagpi dagpi.xyz
Installation
pip install asyncdagpi
Data API
Some endpoints like WTP, PickupLine and Logo will return Objects while Waifu will return a Dictionary. Everything else will return a string.
from asyncdagpi import Client
dagpi = Client("dagpi token")
# For WTP Object
wtp = await dagpi.wtp()
#For Roast
roast = await dagpi.roast()
Image Manipulation
All Image endpoints return an Image object. This has many properties that can be useful for developers. For Basic implementations are displayed
Discord.py
from discord.ext import commands
import discord
from asyncdagpi import Client, ImageFeatures
bot = commands.Bot(command_prefix="!")
dagpi = Client("dagpi token")
@bot.command()
async def pixel(ctx, member: discord.Member):
url = str(member.display_avatar.with_format("png").with_size(1024))
img = await dagpi.image_process(ImageFeatures.pixel(), url)
file = discord.File(fp=img.image,filename=f"pixel.{img.format}")
await ctx.send(file=file)
Pycord
from discord.ext import commands
import discord
from asyncdagpi import Client, ImageFeatures
bot = discord.Bot()
dagpi = Client("dagpi token")
@bot.slash_command(guild_ids=[...])
async def pixel(
ctx, member: discord.Member = None
): # Passing a default value makes the argument optional
user = member or ctx.author
url = str(member.display_avatar.with_format("png").with_size(1024))
img = await dagpi.image_process(ImageFeatures.pixel(), url)
file = discord.File(fp=img.image,filename=f"pixel.{img.format}")
Writing To File
from asyncdagpi import Client, ImageFeatures
dagpi = Client("dagpi token")
img = await dagpi.image_process(ImageFeatures.pixel(), "https://dagbot-is.the-be.st/logo.png")
#it will auto chose the right format and write to current directory
img.write("pixel")
#will create pixel.png in this case
Python Pillow
from asyncdagpi import ImageFeatures, Client
from PIL import Image
dagpi = Client("dagpi token")
img = await dagpi.image_process(ImageFeatures.pixel(), "https://dagbot-is.the-be.st/logo.png")
im = Image.open(img.image)
Kwargs Example
from asyncdagpi import ImageFeatures, Client
dagpi = Client("dagpi token")
img = await dagpi.image_process(ImageFeatures.tweet(), "https://dagbot-is.the-be.st/logo.png", text="This is asyncdagpi tweeting live from dagpi.xyz!", username="Asyncdagpi")