EvoConvo / search_utils.py
HemanM's picture
Update search_utils.py
f1a5eb7 verified
raw
history blame
667 Bytes
# search_utils.py — Simple DuckDuckGo-based web search
import requests
import re
def web_search(query, num_results=3):
try:
url = f"https://duckduckgo.com/html/?q={query}"
headers = {"User-Agent": "Mozilla/5.0"}
resp = requests.get(url, headers=headers)
if resp.status_code != 200:
return "No web results found."
results = re.findall(r'<a rel="nofollow" class="result__a" href="(.*?)">(.*?)</a>', resp.text)
summaries = [re.sub('<[^<]+?>', '', title) for _, title in results]
return " | ".join(summaries[:num_results])
except Exception as e:
return f"Web search error: {str(e)}"