ウェブサイトスクレーパー
ウェブサイトをスクレイピングし、HTML を Markdown に変換するためのコマンドライン ツールと MCP サーバー。
特徴
Mozilla のReadabilityライブラリ (Firefox のリーダー ビューで使用されているのと同じエンジン) を使用して、Web ページから意味のあるコンテンツを抽出します。
TurndownService を使用して、クリーンな HTML を高品質の Markdown に変換します。
潜在的に有害なスクリプトタグを削除してHTMLを安全に処理します
コマンドラインツールとMCPサーバーの両方として機能します
ローカル HTML ファイルを Markdown に直接変換できます
Related MCP server: MCP Server Fetch Python
インストール
# Install dependencies
npm install
# Build the project
npm run build
# Optionally, install globally
npm install -g .
使用法
CLIモード
# Print output to console
scrape https://example.com
# Save output to a file
scrape https://example.com output.md
# Convert a local HTML file to Markdown
scrape --html-file input.html
# Convert a local HTML file and save output to a file
scrape --html-file input.html output.md
# Show help
scrape --help
# Or run via npm script
npm run start:cli -- https://example.com
MCP サーバーモード
このツールは、モデル コンテキスト プロトコル (MCP) サーバーとして使用できます。
# Start in MCP server mode
npm start
コード構造
src/index.ts- コア機能とMCPサーバーの実装src/cli.ts- コマンドラインインターフェースの実装src/data_processing.ts- HTML から Markdown への変換機能
API
このツールは次の機能をエクスポートします。
// Scrape a website and convert to Markdown
import { scrapeToMarkdown } from './build/index.js';
// Convert HTML string to Markdown directly
import { htmlToMarkdown } from './build/data_processing.js';
async function example() {
// Web scraping
const markdown = await scrapeToMarkdown('https://example.com');
console.log(markdown);
// Direct HTML conversion
const html = '<h1>Hello World</h1><p>This is <strong>bold</strong> text.</p>';
const md = htmlToMarkdown(html);
console.log(md);
}
ライセンス
ISC