Spaces:
Paused
Paused
| from itertools import islice | |
| from ..utils import check_pkg | |
| class Duckduckgo: | |
| """ | |
| Duckduckgo API Retriever | |
| """ | |
| def __init__(self, query): | |
| check_pkg('duckduckgo_search') | |
| from duckduckgo_search import DDGS | |
| self.ddg = DDGS() | |
| self.query = query | |
| def search(self, max_results=5): | |
| """ | |
| Performs the search | |
| :param query: | |
| :param max_results: | |
| :return: | |
| """ | |
| try: | |
| search_response = self.ddg.text(self.query, region='wt-wt', max_results=max_results) | |
| except Exception as e: | |
| print(f"Error: {e}. Failed fetching sources. Resulting in empty response.") | |
| search_response = [] | |
| return search_response |