Performs web searches using DuckDuckGo to retrieve real-time information from the internet. Use when the user needs to search for current events, documentation, tutorials, or any information that requires web search capabilities.
这个技能通过 DuckDuckGo 搜索引擎实现网络搜索功能,帮助获取实时信息。
bash
bash
with DDGS() as ddgs:
results = list(ddgs.text(Python tutorial, max_results=5))
for r in results:
print(f\标题: {r[title]}\)
print(f\链接: {r[href]}\)
print(f\摘要: {r[body]}\)
print(---)
最常用的搜索方式,返回网页结果:
bash
python -c
from duckduckgo_search import DDGS
query = your search query
with DDGS() as ddgs:
results = list(ddgs.text(
query,
region=cn-zh, # 地区设置:cn-zh(中国), us-en(美国), wt-wt(全球)
safesearch=moderate, # 安全搜索:on, moderate, off
timelimit=m, # 时间范围:d(天), w(周), m(月), y(年), None(不限)
max_results=10 # 最大结果数
))
for i, r in enumerate(results, 1):
print(f\{i}. {r[title]}\)
print(f\ URL: {r[href]}\)
print(f\ 摘要: {r[body][:100]}...\)
print()
搜索最新新闻:
bash
python -c
from duckduckgo_search import DDGS
with DDGS() as ddgs:
results = list(ddgs.news(
AI technology,
region=wt-wt,
safesearch=moderate,
timelimit=d, # d=过去24小时, w=过去一周, m=过去一月
max_results=10
))
for r in results:
print(f\📰 {r[title]}\)
print(f\ 来源: {r[source]}\)
print(f\ 时间: {r[date]}\)
print(f\ 链接: {r[url]}\)
print()
搜索图片资源:
bash
python -c
from duckduckgo_search import DDGS
with DDGS() as ddgs:
results = list(ddgs.images(
cute cats,
region=wt-wt,
safesearch=moderate,
size=Medium, # Small, Medium, Large, Wallpaper
type_image=photo, # photo, clipart, gif, transparent, line
layout=Square, # Square, Tall, Wide
max_results=10
))
for r in results:
print(f\🖼️ {r[title]}\)
print(f\ 图片: {r[image]}\)
print(f\ 缩略图: {r[thumbnail]}\)
print(f\ 来源: {r[source]}\)
print()
搜索视频内容:
bash
python -c
from duckduckgo_search import DDGS
with DDGS() as ddgs:
results = list(ddgs.videos(
Python programming,
region=wt-wt,
safesearch=moderate,
timelimit=w, # d, w, m
resolution=high, # high, standard
duration=medium, # short, medium, long
max_results=10
))
for r in results:
print(f\📹 {r[title]}\)
print(f\ 时长: {r.get(duration, N/A)}\)
print(f\ 来源: {r[publisher]}\)
print(f\ 链接: {r[content]}\)
print()
获取 DuckDuckGo 的即时回答:
bash
python -c
from duckduckgo_search import DDGS
with DDGS() as ddgs:
results = ddgs.answers(what is python programming language)
for r in results:
print(f\📚 {r[text]}\)
print(f\ 来源: {r.get(url, DuckDuckGo)}\)
获取搜索建议:
bash
python -c
from duckduckgo_search import DDGS
with DDGS() as ddgs:
suggestions = list(ddgs.suggestions(python))
print(🔍 搜索建议:)
for s in suggestions:
print(f\ - {s[phrase]}\)
搜索地点信息:
bash
python -c
from duckduckgo_search import DDGS
with DDGS() as ddgs:
results = list(ddgs.maps(
coffee shop,
place=Beijing, China,
max_results=10
))
for r in results:
print(f\📍 {r[title]}\)
print(f\ 地址: {r[address]}\)
print(f\ 电话: {r.get(phone, N/A)}\)
print(f\ 坐标: {r[latitude]}, {r[longitude]}\)
print()
创建一个可复用的搜索脚本:
bash
python -c
from duckduckgo_search import DDGS
import json
def websearch(query, searchtype=text, max_results=5, region=wt-wt, timelimit=None):
执行 DuckDuckGo 搜索
参数:
query: 搜索关键词
search_type: 搜索类型 (text, news, images, videos)
max_results: 最大结果数
region: 地区 (cn-zh, us-en, wt-wt)
timelimit: 时间限制 (d, w, m, y)
with DDGS() as ddgs:
if search_type == text:
results = list(ddgs.text(query, region=region, timelimit=timelimit, maxresults=maxresults))
elif search_type == news:
results = list(ddgs.news(query, region=region, timelimit=timelimit, maxresults=maxresults))
elif search_type == images:
results = list(ddgs.images(query, region=region, maxresults=maxresults))
elif search_type == videos:
results = list(ddgs.videos(query, region=region, timelimit=timelimit, maxresults=maxresults))
else:
results = []
return results
print(f🔍 搜索: {query})
print(f📊 找到 {len(results)} 个结果)
print()
for i, r in enumerate(results, 1):
print(f\{i}. {r[title]}\)
print(f\ {r[href]}\)
print(f\ {r[body][:150]}...\)
print()
bash
python -c
from duckduckgo_search import DDGS
import json
from datetime import datetime
query = latest tech news
outputfile = fsearchresults{datetime.now().strftime(\%Y%m%d%H%M%S\)}.json
with DDGS() as ddgs:
results = list(ddgs.text(query, max_results=10))
print(f✅ 搜索结果已保存到: {output_file})
print(f📊 共 {len(results)} 条结果)
bash
python -
该技能支持在以下平台通过对话安装:
帮我安装 SkillHub 和 duckduckgo-search-1776420003 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 duckduckgo-search-1776420003 技能
skillhub install duckduckgo-search-1776420003
文件大小: 4.24 KB | 发布时间: 2026-4-17 19:15