所以我正在使用MurkAPI 并获得了帮助,但是我似乎无法得到它,所以当有人执行$ adfly和一个URL(即adfly缩短链接)时,机器人会通过以下方式返回链接API并进入机器人。这是我当前的代码。
@commands.command(pass_context=True)
async def adfly(self, ctx):
async with aiohttp.ClientSession() as session:
await self.client.say(await fetch_adfly(session))
async def fetch_adfly(session):
async with session.get(adfly_url) as response:
return await response.text()
我有MURKKEY,但是我无法使URL部分工作。
adfly_url = 'https://murkapi.com/adfly.php?key={}&url={}'.format(MURKKEY)
答案 0 :(得分:0)
如果fetch_adfly
是用来处理将url
转换为adfly url的,则需要该函数中的会话。除了传递会话外,我们还想传递要转换的url
。这可能会给我们类似的东西:
async def fetch_adfly(url):
async with aiohttp.ClientSession() as session:
adfly_url = 'https://murkapi.com/adfly.php?key={}&url={}'.format(MURKKEY, url)
async with session.get(adfly_url) as response:
return await response.text()
然后,您想在命令中添加一个url
参数并将其传递给函数:
@commands.command(pass_context=True)
async def adfly(self, ctx, url):
await self.client.say(await fetch_adfly(url))
FWIW,我建议使用validating URLs。