开源

Trafilatura:适用于 LLM 数据集与研究的开源网页文本提取工具

Trafilatura 是一款 Python 网页文本提取与爬取工具,在开源提取器中 F-Score 最高,被 HuggingFace、IBM 和 Microsoft 采用。

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
Trafilatura:适用于 LLM 数据集与研究的开源网页文本提取工具

从网页中提取干净、结构化的文本是 LLM 训练数据集、研究语料库和内容分析管线的基础任务。Trafilatura 已成为此任务的黄金标准——这是一个 Python 库,在开源文本提取工具中持续取得最高的 F-Score,同时保持轻量、快速且易于集成。

由柏林-勃兰登堡人文科学院的 Adrien Barbaresi 开发,Trafilatura 超越了简单的 HTML 转文本功能。它能识别网页的主要内容区域,移除导航栏、页眉、页脚、广告和侧边栏,仅返回有意义的文本内容。其爬取功能允许递归追踪域内的链接,从整个网站构建全面的文本语料库。

该工具的准确性和可靠性使其被 HuggingFace、IBM 和 Microsoft 等主要组织采用,并广泛应用于学术 NLP 研究。它在 Clean-Eval 和其他评估框架中的顶尖表现,使其成为需要大规模可信文本提取的研究人员的默认选择。


Trafilatura 的准确度与其他提取工具相比如何?

Trafilatura 的性能优势已由衡量各类网页内容精确度和召回率的学术基准所证实。

工具F-Score精确度召回率语言支持
Trafilatura0.940.950.9345 种以上语言
Newspaper3k0.820.840.8020 种以上语言
readability0.790.810.77主要为英文
boilerpy30.760.780.7410 种以上语言
jusText0.710.740.6815 种以上语言

在具有大量导航元素、嵌入媒体和动态内容的复杂页面布局上,差距尤为明显——而这些正是现代网页的主流。Trafilatura 基于启发式的方法,加上其处理单个页面内多种内容格式的能力,使其具有持续的優勢。


Trafilatura 支持哪些输出格式?

Trafilatura 在输出格式上的多样性使其适用于广泛的下游应用。

graph LR
    A[HTML 输入] --> B[Trafilatura]
    B --> C[纯文本]
    B --> D[Markdown]
    B --> E[JSON]
    B --> F[XML]
    B --> G[CSV]
    C --> H[LLM 训练数据]
    C --> I[全文搜索]
    D --> J[RAG 块]
    D --> K[文档]
    E --> L[结构化分析]
    F --> M[TEI 编码]
    G --> N[电子表格导入]
格式最适用于使用案例
纯文本LLM 训练语料库微调数据集
MarkdownRAG 管线文档结构化知识库
JSON编程化分析内容元数据提取
XML/TEI学术归档数字人文研究
CSV批量处理批量 URL 提取

每种格式都保留了提取到的文本以及可配置的元数据,如 URL、标题、作者、发布日期和提取时间戳。


如何开始使用 Trafilatura?

安装和基本使用非常简单,只需一行 pip 命令和几行 Python 代码。

任务命令 / 代码备注
安装pip install trafilatura需要 Python 3.8+
从 URL 提取trafilatura --url "https://example.com"CLI 一行命令
Python 基本用法from trafilatura import fetch_url, extract核心导入
Python 使用content = extract(fetch_url(url))返回 Markdown
批量处理trafilatura --list urls.txt --output-dir ./output支持爬取
爬取域trafilatura --sitemap "https://example.com/sitemap.xml"递归爬取

该库还提供精细控制选项,包括输出格式选择、语言检测、内容排除规则和提取策略配置。


常见问题

什么是 Trafilatura? Trafilatura 是一款基于 Python 的网页文本提取与爬取工具,能识别并提取 HTML 页面中的主要文本内容,同时移除页眉、页脚、导航栏、广告等非必要元素。它在学术基准测试中达到开源文本提取工具中最高的 F-Score。

Trafilatura 支持哪些输出格式? Trafilatura 支持多种输出格式,包括纯文本、Markdown、JSON、XML 和 CSV。这种多样性使其适用于从 LLM 数据集准备到研究语料库构建和内容分析等各种下游任务。

Trafilatura 与其他提取工具相比精确度如何? Trafilatura 在比较开源文本提取工具的学术基准测试中持续获得最高的 F-Score。在精确度和召回率方面,它优于 Newspaper3k、readability、boilerpy3 和 jusText 等替代方案。

如何安装 Trafilatura? Trafilatura 可通过 pip 安装:pip install trafilatura。需要 Python 3.8 或更高版本,且依赖项极少,易于集成到任何 Python 环境中。

哪些组织使用 Trafilatura? Trafilatura 在业界和研究领域被广泛采用。知名用户包括 HuggingFace(用于创建数据集)、IBM(用于内容分析)、Microsoft(用于研究管线),以及众多学术机构用于网络语料库构建和 NLP 研究。


延伸阅读

TAG
CATEGORIES