Trafilatura 项目介绍
Trafilatura 是一个先进的 Python 包和命令行工具,专为从互联网收集文本并将原始 HTML 转化为结构化、意义明确的数据而设计。它整合了所需的一切功能,可执行网页爬取、下载、抓取以及提取主要文本、元数据和评论。Trafilatura 致力于保持使用的便捷性和模块化,不需要数据库,输出结果可以转换为常用格式。
项目背景
Trafilatura 通过专注于实际内容、避免重复元素(如页眉、页脚等)带来的噪音来解决许多与文本质量相关的问题,并通过选择性的信息让数据变得有意义。其设计既稳健又相对快速,并且可用于大规模文档处理。该工具的灵活性使其在学术领域及其他领域(例如自然语言处理、计算社会科学、搜索引擎优化和信息安全)非常有用。
功能特点
-
先进的网页爬取和文本发现:
- 支持站点地图(TXT、XML)和订阅(ATOM、JSON、RSS)
- 智能爬取及 URL 管理(过滤和去重)
-
在线和离线输入的并行处理:
- 处理实时 URL,高效且友善的下载队列
- 支持已下载的 HTML 文件及解析后的 HTML 树
-
稳健和可配置的关键元素提取:
- 主要文本(采用公共模式和通用算法如 jusText 和 readability)
- 元数据(标题、作者、日期、站点名称、分类和标签)
- 格式和结构:段落、标题、列表、引用、代码、换行、内联文本格式
- 可选元素:评论、链接、图片、表格
-
多种输出格式:
- 文本和 Markdown
- CSV
- JSON
- HTML、XML 及 XML-TEI
-
可选插件:
- 提取内容的语言检测
- 加速优化
-
开源社区的积极维护支持:
- 定期更新、功能添加及优化
- 完备的文档支持
评价与对比
Trafilatura 在文本提取基准测试中稳定胜过其他开源库,展现了其从网页内容中高效提取的精准性。其提取器努力在限制噪音和包括所有有效部分之间取得平衡。它被评为多项提取工具中的最佳工具之一。
使用说明
开始使用 Trafilatura 非常简单。有关更多信息和详细指南,请查看 Trafilatura 的文档,包括安装、命令行使用、Python 和 R 的使用等指南。该软件包的开源特性意味着任何人都可以参与贡献,以帮助完善和优化它的功能。
项目背景
Trafilatura 结合学术研究的实际应用开发而成,同时也是从网络文档中提取信息的更广泛努力的一部分。它的开发旨在简化文本数据的收集,并提高语料库的质量,目前已用于构建语言研究的文本数据库。
软件的名称 "Trafilatura" 意为金属线材的精细拉制,象征着精炼和转换的过程,也是意大利面形状制成的一种方式。
致谢
该项目由 Adrien Barbaresi 博士发起,作为其语言学和自然语言处理交叉领域的博士项目。Trafilatura 的开发吸引了许多贡献者的帮助和支持,他们通过提交文档、报告错误以及提出功能和修复建议来帮助改进项目。Trafilatura 的学术应用广泛,可供各类文本数据获取的研究使用。