File size: 667 Bytes
f1a5eb7
4ffcc65
f1a5eb7
4ffcc65
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 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)}"