trafilatura

从网页中精准提取正文和元数据,一键输出多种格式。

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 搜索知识 🍴 复刻 492 🐛 待处理 67 👀 关注 33
GitHub ↗
GitHub 星标 ★ 7084
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源工具,完全免费,无付费版本

项目预览

trafilatura 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队adbar
定价模式🏷️完全免费
价格说明开源工具,完全免费,无付费版本
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型article-extractor,corpus-builder,corpus-tools,crawler,html-to-markdown,html2text,llm,news-aggregator,news-crawler,nlp,rag,readability,rss-feed,scraping,tei,text-cleaning,text-extraction,text-mining,text-preprocessing,web-scraping
GitHub 星标★ 7084
上线时间2019-04-08 00:00:00
代码更新2026-11-06
仓库体积35.1 MB
本站数据更新2026-11-07
维护状态活跃
收录时间2026-08-09
浏览次数1

项目介绍

Trafilatura 是一个用 Python 编写的网页文本与元数据抓取工具,同时提供命令行接口。它解决的核心问题是:从杂乱无章的 HTML 页面中精准提取正文内容、标题、日期、作者等元数据,并过滤掉导航、广告、评论等噪音。其核心能力包括:支持多站点爬取、智能正文识别、多种输出格式(CSV、JSON、HTML、Markdown、TXT、XML)、多语言处理,以及与爬虫框架(如 Scrapy)的集成。它特别适合学术研究、语料库构建、内容聚合等需要高质量文本数据的场景。相比通用爬虫,Trafilatura 更专注于内容提取的准确性和结构化输出,能显著提升数据清洗效率。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 7084

使用教程

⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Python 环境(README 说明 Trafilatura 是 Python 包与命令行工具)
  • 无需数据库:README 明确说明 no database is required
  • 可访问外网的网络环境(示例需抓取 https://github.blog 页面)

安装与启动步骤

  1. 1准备 Python 环境

    README 说明这是 Python 包,先确认本机已装 Python 并能在终端调用。

    python --version
  2. 2安装 trafilatura

    README 节选未给出安装命令,此处按 Python 包的通用方式安装,如失败请查阅官方文档。

    pip install trafilatura
  3. 3下载网页内容

    用 fetch_url 抓取目标页面 HTML,返回内容可直接交给 extract 处理。

    from trafilatura import fetch_url
    
    downloaded = fetch_url("https://github.blog/2019-03-29-leader-spotlight-erin-spiceland/")
    print(type(downloaded))
  4. 4提取正文文本

    调用 extract 对已下载的 HTML 做正文识别,默认返回纯文本字符串。

    from trafilatura import extract
    
    text = extract(downloaded)
    print(text)
  5. 5输出结构化元数据

    加上 output_format="json" 与 with_metadata=True,可同时拿到标题、作者等元数据。

    from trafilatura import extract
    
    data = extract(downloaded, output_format="json", with_metadata=True)
    print(data)

关键配置

配置项必填说明示例
output_format否指定输出格式,示例用 json 返回结构化数据json
with_metadata否是否附带标题、作者等元数据True

如何确认成功

执行 extract(downloaded) 返回非空正文文本字符串,加 json 参数后能打印出含 title、author、text 的 JSON 即成功。

常见问题

Q:需要安装数据库吗?

A:不需要。README 明确说明 no database is required,输出可转换为常用格式。

Q:如何同时拿到标题和作者?

A:调用 extract 时传入 output_format="json" 和 with_metadata=True,返回的 JSON 中包含 title、author、text 字段。

Q:能输出哪些格式?

A:README 提到可转换为 CSV、JSON、HTML、Markdown、TXT、XML 等常用格式,示例中演示了 json。

Q:还需要自己写爬虫下载页面吗?

A:不必,包内自带抓取组件,示例中用 fetch_url 直接下载网页后交给 extract 处理。

注意事项

  • README 节选未包含安装章节,`pip install trafilatura` 为基于“Python package and command-line tool”的通用推断,若失败请以官方文档为准。
  • README 未给出端口、路径、密钥等配置,无需任何敏感信息即可运行示例。
  • 示例中的输出文本被省略号截断,实际返回内容会更长。

核心亮点

  • 提取准确率高,能有效过滤导航、广告等噪音内容
  • 支持6种输出格式,方便对接下游数据处理流程
  • 提供Python API和命令行工具,集成灵活

不足之处

  • 对动态渲染的JavaScript页面支持有限,需配合其他工具
  • 文档/社区待观察

适用场景

  • 学术研究:批量抓取论文、新闻等文本用于语料分析
  • 内容聚合:构建新闻聚合站或内容监测系统
  • 数据清洗:从爬取的HTML中快速提取干净正文用于NLP训练

替代项目

newspaper3k、boilerpy3、readability-lxml

上一篇:vespa

下一篇:SQLBot

同类项目推荐

Awesome-RAG 开源

一站式收藏 RAG 资源,快速选型不迷路

Awesome list of Retrieval-Augmented Generation (RAG) applications in Generative AI.

★ 1423 2026-08-09
volo 开源

把维基百科变成你的 AI 问答知识库

An F/OSS solution combining AI with Wikipedia knowledge via a RAG pipeline

★ 110 2026-08-09
IncarnaMind 开源

拖入多个 PDF/TXT,立即用大模型对话提问,答案带出处。

From messy files to a checked report. A free, open-source desktop app for macOS, Win···

★ 855 2026-08-09
awesome-grokbot 开源

1894条已验证的Grok Bot资源,一键搜索直接用

1894 live x.ai/bot shares for Grok Bot — every link status-checked, every row attri···

★ 476 2026-09-30
openchatbi 开源

用聊天代替写SQL,一句话查数出图

OpenChatBI is an intelligent chat-based BI tool powered by large language models, de···

★ 677 2026-09-12
wiki-graph 开源

把整本书自动压缩成一张知识图谱,快速抓住核心脉络

distill any book down to its spine

★ 412 2026-08-09
jonex 开源

把视频文档变成AI能懂的知识图谱,直接喂给RAG和Agent

All-in-One Multimodal Parsing Engine + Ontology-Powered, LLM Wiki-Driven AI-Ready Kn···

★ 1599 2026-09-09
OpenDeepWiki 开源

开源版DeepWiki,让团队文档秒变智能问答库

OpenDeepWiki is the open-source version of the DeepWiki project, aiming to provide a···

★ 3660 2026-08-09
crw 开源

6MB 内存的 Rust 爬虫,给 AI 智能体喂网页

Fast, lightweight Firecrawl/Tavily alternative in Rust. Web scraper, crawler & searc···

★ 1233 2026-09-28