← 返回
未分类

Defuddle

Extract main webpage content using Defuddle library and convert it to Markdown, supporting CLI and Node.js for web scraping and text processing tasks.
使用 Defuddle 库提取网页主要内容并转换为 Markdown,支持 CLI 与 Node.js,用于网页抓取和文本处理。
yeholdon
未分类 clawhub v1.0.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 490
下载
💾 1
安装
1
版本
#latest

概述


name: defuddle

description: 使用 Defuddle 库从任意网页提取主要内容并转换为 Markdown 格式。支持 CLI 和 Node.js 集成,用于内容爬虫、文本处理和自动化任务。

metadata: {"openclaw": {"os": ["darwin", "linux", "win32"], "author": "Honcy Ye", "email": "honcy.ye@gmail.com"}}


Defuddle 网页内容提取技能

使用 Defuddle 库从任意网页提取主要内容并转换为 Markdown 格式。

功能特性

  • 内容提取:自动检测并提取网页主要内容
  • Markdown 转换:将 HTML 内容转换为 Markdown 格式
  • 垃圾清理:移除广告、侧边栏、评论等网页垃圾
  • CLI 支持:提供命令行接口快速使用
  • Node.js 集成:支持在 Node.js 环境中使用
  • 自定义配置:支持自定义内容选择器和选项

技术实现

  • 使用 Defuddle 库进行网页内容提取
  • 支持多种配置选项
  • 提供简单易用的 API

使用方法

1. 命令行使用

# 解析 URL 并输出为 Markdown
npx defuddle parse https://example.com/article --markdown

# 解析本地 HTML 文件
npx defuddle parse page.html --markdown

# 输出为 JSON 格式(包含元数据)
npx defuddle parse page.html --json

2. 脚本使用

# 从 URL 提取内容并发送到微信文件传输助手
bash scripts/extract_and_send.sh "https://example.com/article" "文件传输助手"

# 从 URL 提取内容并发送到 Telegram
bash scripts/extract_and_send_telegram.sh "https://example.com/article" <chat_id>

3. Node.js API

import { JSDOM } from 'jsdom';
import { Defuddle } from 'defuddle/node';

async function extractContent(url) {
  const response = await fetch(url);
  const html = await response.text();
  
  const dom = new JSDOM(html, { url });
  const result = await Defuddle(dom.window.document);
  
  return {
    title: result.title,
    content: result.content,
    markdown: result.contentMarkdown
  };
}

配置选项

  • markdown: 转换为 Markdown 格式
  • debug: 启用调试模式
  • contentSelector: 自定义内容选择器
  • removeImages: 移除图片
  • removeHiddenElements: 移除隐藏元素

脚本说明

  • scripts/extract_content.sh: 从 URL 提取内容并输出到控制台
  • scripts/extract_and_send.sh: 提取内容并发送到微信
  • scripts/extract_and_send_telegram.sh: 提取内容并发送到 Telegram

依赖

  • Node.js 和 npm(用于 CLI)
  • defuddle 库(已通过 npm 安装)

安装

npm install -g defuddle

注意事项

  • Defuddle 需要 Node.js 环境(建议使用 Node.js 18 或更高版本)
  • 某些网站可能有防爬虫机制,可能导致提取失败
  • 大型网页内容提取可能需要较长时间

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-05-02 01:28 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 666 📥 323,791
ai-intelligence

self-improving agent

pskoett
捕获经验教训、错误和纠正,以实现持续改进。使用时机:(1)命令或操作意外失败;(2)用户纠正……
★ 4,055 📥 795,905
ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,349 📥 317,697