from ddgs import DDGS def findSearchResults( query: str, region: str = "us-en", safesearch: str = "moderate", timelimit: str | None = None, max_results: int | None = 10, page: int = 1, backend: str = "auto" ) -> list[dict[str, str]]: # results = DDGS(query, max_results=max_results) results = DDGS().text(query, max_results=max_results, region=region, safesearch=safesearch, timelimit=timelimit, page=page, backend=backend) for i, result in enumerate(results): print(f"{i+1}: {result['title']} - {result['href']}") return results def findImages( query: str, region: str = "us-en", safesearch: str = "moderate", timelimit: str | None = None, max_results: int | None = 10, page: int = 1, backend: str = "auto", size: str | None = None, color: str | None = None, type_image: str | None = None, layout: str | None = None, license_image: str | None = None, ) -> list[dict[str, str]]: results = DDGS().images( query, region=region, safesearch=safesearch, timelimit=timelimit, max_results=max_results, page=page, backend=backend, size=size, color=color, type_image=type_image, layout=layout, license_image=license_image, ) print(safesearch) for i, result in enumerate(results): print(f"{i+1}: {result['title']} - {result['image']}") return results def findVideos( query: str, region: str = "us-en", safesearch: str = "moderate", timelimit: str | None = None, max_results: int | None = 10, page: int = 1, backend: str = "auto", resolution: str | None = None, duration: str | None = None, license_videos: str | None = None, ) -> list[dict[str, str]]: results = DDGS().videos( query, region=region, safesearch=safesearch, timelimit=timelimit, max_results=max_results, page=page, backend=backend, resolution=resolution, duration=duration, license_videos=license_videos, ) for i, result in enumerate(results): print(f"{i+1}: {result['title']} - {result['embed_url']}") return results def findNews( query: str, region: str = "us-en", safesearch: str = "moderate", timelimit: str | None = None, max_results: int | None = 10, page: int = 1, backend: str = "auto", ) -> list[dict[str, str]]: results = DDGS().news( query, region=region, safesearch=safesearch, timelimit=timelimit, max_results=max_results, page=page, backend=backend, ) for i, result in enumerate(results): print(f"{i+1}: {result['title']} - {result['url']}") return results def findBooks( query: str, max_results: int | None = 10, page: int = 1, backend: str = "auto", ) -> list[dict[str, str]]: results = DDGS().books( query, max_results=max_results, page=page, backend=backend, ) for i, result in enumerate(results): print(f"{i+1}: {result['title']} - {result['url']}") return results