adbar/trafilatura
Python & Command-line tool to gather text and metadata on the Web: Crawling, scraping, extraction, output as CSV, JSON, HTML, MD, TXT, XML
What it solves
Trafilatura は、Web 上のノイズが多い HTML からクリーンで構造化されたテキストを抽出する問題を解決するために設計されています。ヘッダー、フッター、繰り返し表示されるナビゲーション要素といった「ノイズ」を除去し、ページの実際のメインコンテンツとメタデータに集中できるようにします。
How it works
Python パッケージ兼コマンドラインツールとして動作し、ウェブクロール、ダウンロード、スクレイピングを組み合わせます。jusText や readability などの一般的なパターンと汎用アルゴリズムを組み合わせて、メインテキスト、著者や日付といったメタデータ、コメントやテーブルといったオプション要素を識別・抽出します。ライブ URL と事前にダウンロードした HTML ファイルの両方を処理でき、サイトマップや RSS フィードなど様々な発見手法をサポートします。
Who it’s for
ウェブから高品質なテキストデータを収集して NLP タスクに利用したい研究者、開発者、データサイエンティスト向けです。また、HuggingFace や Microsoft Research のように大規模テキストコーパスを構築する組織にも適しています。
Highlights
- Comprehensive Pipeline: 発見(サイトマップ、フィード)、ダウンロード、抽出を一つのツールで統合。
- Flexible Output: TXT、Markdown、JSON、CSV、XML-TEI など複数フォーマットに対応。
- High Performance: テキスト抽出ベンチマークで他のオープンソースライブラリを常に上回ります。
- Modular Design: データベース不要で軽量、既存ワークフローへの統合が容易です。