使用Felo Web Extract API从URL获取网页内容。用于用户请求抓取/获取网页内容或从URL提取文章文本等场景。
Felo Web Fettle Skill. 何时使用是一项面向实际任务的技能,主要用于当用户想要: 时, 跳转到此技能;向网页 URL 中查找或刮去内容;
使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
当用户希望执行以下操作时,触发此技能:
触发关键词示例:
/felo-web-fetch、“use felo web fetch”请勿用于以下场景:
felo-search)felo-slides)Linux/macOS:
export FELO_API_KEY="your-api-key-here"
Windows PowerShell:
$env:FELO_API_KEY="your-api-key-here"
脚本方式(来自代码仓库):
node felo-web-fetch/scripts/run_web_fetch.mjs --url "https://example.com/article" [options]
已打包 CLI 工具(安装后:npm install -g felo-ai):支持相同参数,且允许使用简写形式:
felo web-fetch -u "https://example.com" [options] # 简写形式:-u(url)、-f(format)、-t(timeout,单位为秒)、-j(json)
可用参数说明:
| 参数 | 默认值 | 说明 |
|---|---|---|
--url |
(必填) | 待获取的网页 URL |
--format |
markdown | 输出格式:html、text、markdown |
--target-selector |
- | CSS 选择器:仅获取匹配该选择器的元素(例如:article.main、#content) |
--wait-for-selector |
- | 在获取前等待指定选择器出现(适用于动态加载内容) |
--readability |
false | 启用 readability 处理(仅提取主要内容) |
--crawl-mode |
fast | fast 或 fine |
--timeout |
60000(脚本) / 60(CLI) | 请求超时时间:脚本单位为毫秒,CLI 单位为秒(例如:-t 90) |
--json / -j |
false | 以 JSON 格式打印完整 API 响应 |
当用户希望获取页面的特定部分或指定特定输出格式时,请按如下方式组织命令:
--format text、--format markdown 或 --format html。#main 内容” / “仅提取 article.main-content” → 使用 --target-selector "article.main",或根据用户提供的选择器填写(如:#main、.main-content、article .post)。用户意图与等效命令示例:
| 用户意图 | 对应命令 |
|---|---|
| “以纯文本格式获取该页面” | --url "..." --format text |
| “仅获取主内容区域” | --url "..." --target-selector "main" 或 article |
| “以 Markdown 格式获取 id=content 的 div” | --url "..." --target-selector "#content" --format markdown |
| “仅获取 article body,以 HTML 格式返回” | --url "..." --target-selector "article .body" --format html |
执行示例:
# 基础用法:以 Markdown 格式获取 node felo-web-fetch/scripts/run_web_fetch.mjs --url "https://example.com" # 启用 readability 提取文章风格内容 node felo-web-fetch/scripts/run_web_fetch.mjs --url "https://example.com/article" --readability --format markdown # 获取原始 HTML 并输出完整 JSON 响应 node felo-web-fetch/scripts/run_web_fetch.mjs --url "https://example.com" --format html --json # 仅获取匹配 CSS 选择器的元素(例如主文章) node felo-web-fetch/scripts/run_web_fetch.mjs --url "https://example.com" --target-selector "article.main" --format markdown # 指定输出格式 + 目标选择器 node felo-web-fetch/scripts/run_web_fetch.mjs --url "https://example.com" --target-selector "#content" --format text
curl -X POST "https://openapi.felo.ai/v2/web/extract"
-H "Authorization: Bearer $FELO_API_KEY"
-H "Content-Type: application/json"
-d '{"url": "https://example.com", "output_format": "markdown", "with_readability": true}'
POST /v2/web/extracthttps://openapi.felo.ai。如需自定义,可通过 FELO_API_BASE 环境变量覆盖。Authorization: Bearer YOUR_API_KEY| 参数 | 类型 | 是否必需 | 默认值 | 说明 |
|---|---|---|---|---|
| url | string | 是 | - | 待获取的网页 URL |
| crawl_mode | string | 否 | fast | fast 或 fine |
| output_format | string | 否 | html | html、text、markdown |
| with_readability | boolean | 否 | - | 启用 readability(仅提取主要内容) |
| with_links_summary | boolean | 否 | - | 包含链接摘要信息 |
| with_images_summary | boolean | 否 | - | 包含图片摘要信息 |
| target_selector | string | 否 | - | 目标元素的 CSS 选择器 |
| wait_for_selector | string | 否 | - | 获取前等待指定选择器出现 |
| timeout | integer | 否 | - | 超时时间,单位为毫秒 |
| with_cache | boolean | 否 | true | 是否启用缓存 |
成功响应(HTTP 200):
{
"code": 0,
"message": "success",
"data": {
"content": { ... }
}
}
获取的内容位于 data.content 字段中;其结构取决于 output_format 参数。
| HTTP 状态码 | 业务码 | 说明 |
|---|---|---|
| 400 | - | 参数校验失败 |
| 401 | INVALID_API_KEY | API 密钥无效或已被撤销 |
| 500/502 | WEB_EXTRACT_FAILED | 获取失败(服务端或目标网页异常) |
执行成功(脚本未使用 --json 参数)时:
使用 --json 参数时:
code、message、data 字段。用户侧错误响应示例:
## Web Fetch Failed
- Error:
- URL:
- Suggestion:
FELO_API_KEY 是否已设置;若缺失,应返回配置说明。--timeout 参数,或在请求体中传入 timeout。output_format: "markdown" 和 with_readability: true。with_cache: false(脚本默认不暴露该参数)。相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章