Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计通过

duckduckgo-search-1-0-0duckduckgo 搜索 1 0 0

Agent Skill

duckduckgo-search-1-0-0 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

30,869

周安装

1,326

GitHub Stars

公开资料未说明

下载量

10,820
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:duckduckgo-search-1-0-0(duckduckgo 搜索 1 0 0)
来源仓库:https://github.com/omprasad122007-rgb/duckduckgo-search-1-0-0
安装命令:
openclaw skills install duckduckgo-search-1-0-0
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install duckduckgo-search-1-0-0

简介

DuckDuckGo搜索技能从互联网获取实时信息,无需API密钥即可使用。

  • 适用于查找当前事件、技术文档或时效性较强的参考资料。
  • 返回结果包含标题与摘要,部分页面支持内容抓取展示。
  • 受限于搜索引擎覆盖率,小众领域信息可能不够全面。
  • 建议与其他数据源配合使用以提高检索准确性。duckduckgo-search-1-0-0 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
duckduckgo-search
description
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.
allowed-tools
Bash(duckduckgo-search:*), Bash(python:*), Bash(pip:*), Bash(uv:*)

DuckDuckGo Web Search Skill

这个技能通过 DuckDuckGo 搜索引擎实现网络搜索功能,帮助获取实时信息。

功能特性

  • 🔍 基于 DuckDuckGo 的隐私友好型搜索
  • 📰 支持新闻搜索
  • 🖼️ 支持图片搜索
  • 📹 支持视频搜索
  • 🌐 无需 API Key,免费使用
  • 🔒 保护隐私,不追踪用户

安装

# 使用 uv 安装(推荐)
uv pip install duckduckgo-search

# 或使用 pip 安装
pip install duckduckgo-search

快速开始

命令行方式

# 基础文本搜索
python -c "
from duckduckgo_search import DDGS

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('---')
"

搜索类型

1. 文本搜索 (Text Search)

最常用的搜索方式,返回网页结果:

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()
"

2. 新闻搜索 (News Search)

搜索最新新闻:

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()
"

3. 图片搜索 (Image Search)

搜索图片资源:

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()
"

4. 视频搜索 (Video Search)

搜索视频内容:

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()
"

5. 即时回答 (Instant Answers)

获取 DuckDuckGo 的即时回答:

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')}\")
"

6. 建议搜索 (Suggestions)

获取搜索建议:

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']}\")
"

7. 地图搜索 (Maps Search)

搜索地点信息:

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()
"

实用脚本

通用搜索函数

创建一个可复用的搜索脚本:

python -c "
from duckduckgo_search import DDGS
import json

def web_search(query, search_type='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, max_results=max_results))
        elif search_type == 'news':
            results = list(ddgs.news(query, region=region, timelimit=timelimit, max_results=max_results))
        elif search_type == 'images':
            results = list(ddgs.images(query, region=region, max_results=max_results))
        elif search_type == 'videos':
            results = list(ddgs.videos(query, region=region, timelimit=timelimit, max_results=max_results))
        else:
            results = []
    
    return results

# 使用示例
query = 'Python 3.12 new features'
results = web_search(query, search_type='text', max_results=5)

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()
"

搜索并保存结果

python -c "
from duckduckgo_search import DDGS
import json
from datetime import datetime

query = 'latest tech news'
output_file = f'search_results_{datetime.now().strftime(\"%Y%m%d_%H%M%S\")}.json'

with DDGS() as ddgs:
    results = list(ddgs.text(query, max_results=10))

# 保存到 JSON 文件
with open(output_file, 'w', encoding='utf-8') as f:
    json.dump({
        'query': query,
        'timestamp': datetime.now().isoformat(),
        'results': results
    }, f, ensure_ascii=False, indent=2)

print(f'✅ 搜索结果已保存到: {output_file}')
print(f'📊 共 {len(results)} 条结果')
"

多关键词批量搜索

python -c "
from duckduckgo_search import DDGS
import time

queries = [
    'Python best practices 2024',
    'React vs Vue 2024',
    'AI development tools'
]

all_results = {}

with DDGS() as ddgs:
    for query in queries:
        print(f'🔍 搜索: {query}')
        results = list(ddgs.text(query, max_results=3))
        all_results[query] = results
        print(f'   找到 {len(results)} 个结果')
        time.sleep(1)  # 避免请求过快

print()
print('=' * 50)
print('📊 搜索汇总')
print('=' * 50)

for query, results in all_results.items():
    print(f'\
🔎 {query}:')
    for i, r in enumerate(results, 1):
        print(f\"   {i}. {r['title'][:60]}...\")
"

参数说明

地区代码 (region)

代码地区
cn-zh中国
us-en美国
uk-en英国
jp-jp日本
kr-kr韩国
wt-wt全球 (无地区限制)

时间限制 (timelimit)

含义
d过去 24 小时
w过去一周
m过去一月
y过去一年
None不限制

安全搜索 (safesearch)

含义
on严格过滤
moderate适度过滤 (默认)
off关闭过滤

错误处理

python -c "
from duckduckgo_search import DDGS
from duckduckgo_search.exceptions import DuckDuckGoSearchException

try:
    with DDGS() as ddgs:
        results = list(ddgs.text('test query', max_results=5))
        print(f'✅ 搜索成功,找到 {len(results)} 个结果')
except DuckDuckGoSearchException as e:
    print(f'❌ 搜索出错: {e}')
except Exception as e:
    print(f'❌ 未知错误: {e}')
"

使用代理

如果需要使用代理:

python -c "
from duckduckgo_search import DDGS

# 设置代理
proxy = 'http://127.0.0.1:7890'  # 替换为你的代理地址

with DDGS(proxy=proxy) as ddgs:
    results = list(ddgs.text('test query', max_results=5))
    print(f'通过代理搜索成功,找到 {len(results)} 个结果')
"

常见问题

安装失败?

# 确保 pip 是最新版本
pip install --upgrade pip
pip install duckduckgo-search

# 或使用 uv
uv pip install duckduckgo-search

搜索无结果?

# 检查网络连接
# 尝试使用代理
# 减少搜索关键词复杂度
# 检查地区设置是否正确

请求被限制?

# 在多次搜索之间添加延迟
import time
time.sleep(1)  # 等待 1 秒

# 减少单次请求的结果数量
max_results=5  # 而不是 50

与其他工具集成

结合 browser-use 获取详细内容

# 1. 先用 DuckDuckGo 搜索
python -c "
from duckduckgo_search import DDGS

with DDGS() as ddgs:
    results = list(ddgs.text('Python async tutorial', max_results=1))
    if results:
        url = results[0]['href']
        print(f'URL: {url}')
"

# 2. 用 browser-use 打开并获取详细内容
browser-use open <url_from_search>
browser-use state

注意事项

⚠️ 使用建议

  1. 遵守使用频率限制:避免短时间内大量请求
  2. 合理设置结果数量:不要一次请求过多结果
  3. 添加适当延迟:批量搜索时在请求之间添加 time.sleep()
  4. 处理异常情况:始终添加错误处理代码
  5. 尊重版权:搜索结果仅供参考,注意内容版权

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

80.97%
按下载量换算8,761

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills