Go Web Reader は、Web サイトの本文抽出とクラウドストレージ(GCS/S3)の読み取りを、単一のインターフェースで扱う Go 言語向けライブラリです。
https://、gs://、s3:// といった URI を渡すだけで、背後のアクセス手段の違いを意識せずにコンテンツを取得できます。
公開 API の中心は pkg/reader で、reader.New() でリーダーを生成し、Open(ctx, uri) 呼び出し時に URI スキームに応じて処理を切り替えます。
✨ 提供機能 (Features)
🌐 [extract] ユニバーサル・コンテンツ抽出
Unified Interface: URL が指定された場合、HTTP レスポンスの Content-Type に応じて HTML 抽出またはテキスト読み取りを切り替えます。
HTML Extraction: text/html と application/xhtml+xml では Web 抽出エンジンが起動し、ノイズ(広告・ナビゲーション)を除去した「本文のみ」をストリームとして返します。
Plain Text / Markdown: text/plain、text/markdown、text/x-markdown は変換せず、そのままストリームとして返します。
Safe URL Validation: Web URL は取得前に安全性を検証し、検証エラーは呼び出し元で追跡できる形で返します。
Heuristic Engine: DOM 構造を解析し、文脈を維持したまま高精度にメインテキストを特定します。