返回顶部
c

content-parser内容解析器

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.0
安全检测
已通过
238
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

content-parser

何时使用

  • - 用户提供URL并希望提取/读取其内容
  • 另一个技能在生成前需要从URL解析源材料
  • 用户说解析这个URL、从该链接提取内容
  • 用户说解析链接、提取内容

何时不使用

  • - 用户已有文本内容,无需URL解析
  • 用户希望生成音频/视频内容(非内容提取)
  • 用户希望读取本地文件(使用标准文件读取工具)

目的

从支持的平台URL中提取并规范化内容。返回结构化数据,包括内容正文、元数据和引用。可作为内容生成技能的预处理步骤或独立的内容提取工具。

硬性约束

  • - 不使用shell脚本。根据资源中列出的API参考文件构建curl命令
  • 始终读取shared/authentication.md获取API密钥和请求头
  • 遵循shared/common-patterns.md中的轮询、错误处理和交互模式
  • URL必须是有效的HTTP(S) URL
  • 在任何交互前始终按照shared/config-pattern.md读取配置
  • 切勿将文件保存到~/Downloads/或.listenhub/——保存到当前工作目录


对于每个多选步骤,使用AskUserQuestion工具——不要以纯文本形式打印选项。一次只问一个问题。等待用户回答后再进入下一步。收集URL和选项后,在调用提取API前与用户确认。

步骤 -1:API密钥检查

按照shared/config-pattern.md § API密钥检查执行。如果密钥缺失,立即停止。

步骤 0:配置设置

按照shared/config-pattern.md步骤0执行。

如果文件不存在——询问位置,然后立即创建:
bash
mkdir -p .listenhub/content-parser
echo {autoDownload:true} > .listenhub/content-parser/config.json
CONFIG_PATH=.listenhub/content-parser/config.json

(或使用$HOME/.listenhub/content-parser/config.json作为全局配置)

然后运行下面的设置流程

如果文件存在——读取配置,显示摘要并确认:

当前配置 (content-parser):
自动下载:{是 / 否}

询问:使用已保存的配置? → 确认,直接继续 / 重新配置

设置流程(首次运行或重新配置)

  1. 1. autoDownload:自动保存提取的内容到当前目录?
- 是(推荐) → autoDownload: true - 否 → autoDownload: false

立即保存:
bash
NEW_CONFIG=$(echo $CONFIG | jq --argjson dl {true/false} . + {autoDownload: $dl})
echo $NEWCONFIG > $CONFIGPATH
CONFIG=$(cat $CONFIG_PATH)

交互流程

步骤 1:URL输入

自由文本输入。询问用户:

您想从哪个URL提取内容?

步骤 2:选项(可选)

询问用户是否要配置提取选项:

问题:您想配置提取选项吗?
选项:
- 不,使用默认设置 — 使用默认设置提取
- 是,配置选项 — 设置摘要、最大长度或Twitter推文数量

如果选择是,询问后续问题:

  • - 摘要:生成内容摘要?(是/否)
  • 最大长度:设置最大内容长度?(自由文本,例如5000)
  • Twitter数量(仅当URL是Twitter/X个人资料时):获取多少条推文?(1-100,默认20)

步骤 3:确认并提取

摘要:

准备提取内容:

URL:{url}
选项:{summarize: true, maxLength: 5000, twitter.count: 50} / 默认

继续吗?

在调用API前等待明确确认。

工作流程

  1. 1. 验证URL:必须是HTTP(S)。必要时进行规范化(参见references/supported-platforms.md)
  2. 构建请求体
json { source: { type: url, uri: {url} }, options: { summarize: true/false, maxLength: 5000, twitter: { count: 50 } } }

如果用户选择默认设置,则省略options。

  1. 3. 提交(前台):POST /v1/content/extract → 提取taskId
  2. 告知用户提取正在进行中
  3. 轮询(后台):使用runinbackground: true和timeout: 300000运行以下精确的bash命令。注意:状态字段是.data.status(不是processStatus),间隔为5秒,值为processing/completed/failed:

bash
TASK_ID=<步骤3中的ID>
for i in $(seq 1 60); do
RESULT=$(curl -sS https://api.marswave.ai/openapi/v1/content/extract/$TASK_ID \
-H Authorization: Bearer $LISTENHUBAPIKEY 2>/dev/null)
STATUS=$(echo $RESULT | tr -d \000-\037\177 | jq -r .data.status // processing)
case $STATUS in
completed) echo $RESULT; exit 0 ;;
failed) echo 失败:$RESULT >&2; exit 1 ;;
*) sleep 5 ;;
esac
done
echo 超时 >&2; exit 2

  1. 6. 收到通知后,下载并展示结果

如果autoDownload为true:
- 将{taskId}-extracted.md写入当前目录——完整的提取内容(markdown格式)
- 将{taskId}-extracted.json写入当前目录——完整的原始API响应数据

bash
echo $CONTENTMD > ${TASKID}-extracted.md
echo $RESULT > ${TASK_ID}-extracted.json

展示:

内容提取完成!

来源:{url}
标题:{metadata.title}
长度:~{字符数} 字符
消耗积分:{credits}

已保存到当前目录:
{taskId}-extracted.md
{taskId}-extracted.json

  1. 7. 显示提取内容的预览(前约500个字符)
  2. 提供在其他技能中使用内容的选项(例如/podcast、/tts)

预计时间:10-30秒,取决于内容大小和平台。

API参考

  • - 内容提取:shared/api-content-extract.md
  • 支持的平台:references/supported-platforms.md
  • 轮询:shared/common-patterns.md § 异步轮询
  • 错误处理:shared/common-patterns.md § 错误处理
  • 配置模式:shared/config-pattern.md

示例

用户:解析这篇文章:https://en.wikipedia.org/wiki/Topology

Agent工作流程

  1. 1. URL:https://en.wikipedia.org/wiki/Topology
  2. 选项:默认(省略options)
  3. 提交提取

bash
curl -sS -X POST https://api.marswave.ai/openapi/v1/content/extract \
-H Authorization: Bearer $LISTENHUBAPIKEY \
-H Content-Type: application/json \
-d {
source: {
type: url,
uri: https://en.wikipedia.org/wiki/Topology
}
}

  1. 4. 轮询直至完成:

bash
curl -sS https://api.marswave.ai/openapi/v1/content/extract/69a7dac700cf95938f86d9bb \
-H Authorization: Bearer $LISTENHUBAPIKEY

  1. 5. 展示提取内容预览并提供后续操作选项。

用户:提取@elonmusk的最新推文,获取50条推文

Agent工作流程

  1. 1. URL:https://x.com/elonmusk
  2. 选项:{twitter: {count: 50}}
  3. 提交提取

bash
curl -sS -X POST https://api.marswave.ai/openapi/v1/content/extract \
-H Authorization: Bearer $LISTENHUBAPIKEY \
-H Content-Type: application/json \
-d {
source: {
type: url,
uri: https://x.com/elonmusk
},
options: {
twitter: {
count: 50
}
}
}

  1. 4. 轮询直至完成,

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 content-parser-1776090123 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 content-parser-1776090123 技能

通过命令行安装

skillhub install content-parser-1776090123

下载

⬇ 下载 content-parser v0.1.0(免费)

文件大小: 5.21 KB | 发布时间: 2026-4-15 12:18

v0.1.0 最新 2026-4-15 12:18
content-parser v0.1.0

- Initial release.
- Extracts and parses content from URLs, supporting both user and skill-triggered flows.
- Interactive setup with configurable auto-download and extraction options (summarize, maxLength, Twitter count).
- Polling and background job handling for extraction tasks.
- Saves results (`.md` and `.json`) to the current directory if autoDownload is enabled.
- Presents extraction previews and offers next-step actions.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部