Skills

Clean HTML Mapper

清理文本示例中的HTML代码。当用户提到清理HTML、去除HTML标签、HTML转文本、提取网页文本等需求时使用此skill。...

Install

npx skills add cas-bigdatalab/piflow --skill clean_html_mapper -g -a claude-code -y
Category
Engineering
Updated
12d ago
License
See repository
Context cost
Lightabout 335 tokens
Runs scripts
Yes, review before use

What it does

清理文本示例中的HTML代码。当用户提到清理HTML、去除HTML标签、HTML转文本、提取网页文本等需求时使用此skill。 即使用户没有明确说出"HTML",只要任务涉及从HTML代码中提取纯文本,就应该使用此skill。

Clean HTML Mapper

清理文本中的HTML代码,提取纯文本内容。

本SKILL使用依赖data_juicer,请在调用前安装好python环境并安装data_juicer,你可用同以下指令进行安装:

pip install py-data-juicer

核心参数

参数类型必填默认值说明
input_pathstring是-输入JSON文件路径
output_pathstring是-输出JSON文件路径

使用方法

python scripts/run_clean_html_mapper.py --input_path <input_path> --output_path <output_path>

实现原理

参照测试代码 test_clean_html_mapper.py 中的 _run_helper 函数:

# 1. 初始化算子(无参数)
op = CleanHtmlMapper()

# 2. 将数据转为Dataset,使用 op.run(dataset) 处理
dataset = Dataset.from_list(samples)
result_dataset = op.run(dataset)

HTML清理规则

  1. <li> 和 <ol> 标签转换为 * 列表格式
  2. 使用 selectolax 解析器提取纯文本
  3. 移除所有HTML标签
  4. 保留文本内容和换行符

输入输出格式

输入格式 (JSON数组)

[
  {"text": "<p>这是段落</p>"},
  {"text": "<li>列表项1</li><li>列表项2</li>"}
]

输出格式 (JSON数组)

[
  {"text": "这是段落"},
  {"text": "\n*列表项1\n*列表项2"}
]

示例

示例:清理HTML

输入:

[
  {"text": "<p>这是测试</p>"},
  {"text": "<div><p>Hello World</p></div>"}
]

执行:

python scripts/run_clean_html_mapper.py --input_path example_input.json --output_path output.json

输出:

[
  {"text": "这是测试"},
  {"text": "Hello World"}
]

注意事项

  • 此算子无额外参数
  • 会自动处理列表标签(<li>, <ol>)转换为 * 格式
  • 不符合HTML格式的标签内容也会被尝试清理

More in Engineering