Workaround duplicates from get_xkcds
This commit is contained in:
parent
700593f889
commit
f474f3cd59
10
bot.py
10
bot.py
|
@ -1,5 +1,6 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
import asyncio
|
||||
from os import environ
|
||||
from collections import namedtuple
|
||||
from json import loads
|
||||
|
@ -79,11 +80,16 @@ async def inlinequery(event):
|
|||
"""Handle the inline query."""
|
||||
# TODO show transcript in result but not message?
|
||||
builder = event.builder
|
||||
await event.answer([builder.article(
|
||||
result = await asyncio.gather(*(builder.article(
|
||||
title=xkcd.title,
|
||||
url=xkcd.link,
|
||||
text=MSG_FMT_STR.format(number=xkcd.number, link=xkcd.link, title=xkcd.title, alt=xkcd.alt)
|
||||
) for xkcd in get_xkcds(event.text)])
|
||||
) for xkcd in get_xkcds(event.text)))
|
||||
|
||||
# FIXME get_xkcds returns duplicates, which lead to the same result ID
|
||||
# Build a dict by their ID to remove the duplicates
|
||||
result = list({r.id: r for r in result}.values())
|
||||
await event.answer(result)
|
||||
|
||||
|
||||
def main():
|
||||
|
|
Loading…
Reference in New Issue