From 0a2470b7b7e345fef97fa574d3bb023ec768781e Mon Sep 17 00:00:00 2001 From: deedy5 <65482418+deedy5@users.noreply.github.com> Date: Sun, 1 Oct 2023 09:46:03 +0300 Subject: [PATCH] recode image search to use AsyncDDGS --- server/python_server/search.py | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/server/python_server/search.py b/server/python_server/search.py index 36ba5f0..c32cd4e 100644 --- a/server/python_server/search.py +++ b/server/python_server/search.py @@ -1,7 +1,7 @@ -from itertools import islice +import asyncio try: - from duckduckgo_search import DDGS + from duckduckgo_search import AsyncDDGS except ImportError: raise ImportError( "duckduckgo_search is required to image search. Please install it with `pip install --upgrade duckduckgo_search`." @@ -9,17 +9,18 @@ except ImportError: async def imageSearch(keywords="cute cats"): - with DDGS() as ddgs: - return [x for x in islice(ddgs.images(keywords,safesearch='off'), 50)] + async with AsyncDDGS() as ddgs: + return [ + x async for x in ddgs.images(keywords, safesearch="off", max_results=50) + ] + + +async def main(): + result = await imageSearch() + print("result: ", result) + # result = await imageSearch2() + # print(result) if __name__ == "__main__": - - async def main(): - result = await imageSearch() - print("result: ",result) - # result = await imageSearch2() - # print(result) - import asyncio - asyncio.run(main())