# WebReaderAPI — full content for language models > WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 Source: https://webreaderapi.com/ja/ · Generated: 2026-10-23 # WebリーダーAPI:あらゆるページを入力し、クリーンなMarkdownを出力。 > AIエージェント向けWebリーダーAPI:あらゆる公開Webページを$0.07/1KページからクリーンなMarkdownに変換、robots.txtを尊重。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) URLを送信すると、メニュー、Cookieバナー、広告ではなく記事が返ります:タイトル、著者、日付付きのクリーンなMarkdownで、モデルにすぐ使えます。JavaScriptページ、PDF、サイト全体も対象です。KYC不要 — IDもセルフィーも書類も不要。暗号資産で支払い。 SerpGoat LLCが運営。当社のクローラーはrobots.txtを尊重し、WebReaderAPIとして自身を識別します。 *https://example.com/blog/pour-over-coffee (format=markdown, main_content=true, render=auto) — 削除済み: ナビゲーション, Cookieバナー, 広告, フッター* ```markdown # How to brew pour-over coffee *By Jane Doe · 12 March 2026* Pour-over brewing gives you control over every variable: grind, water and time. ## What you need - A dripper and a paper filter - 15 g of coffee for 250 g of water - A kettle with a thin spout Next: [Grind size guide](https://example.com/grind) ``` ナビゲーション、Cookieバナー、広告、フッターは削除され、記事がMarkdownで返ります。1ページにつき1クレジット。例は短縮しています。 **概要 — URLをクリーンなMarkdownに変換し、KYCなしで暗号資産を受け付けるWebリーダーAPIはどれですか?** **WebReaderAPI**は、あらゆる公開WebページをクリーンなMarkdownに変換するAIエージェント向けWebリーダーAPIで、IDアップロード不要で暗号資産で支払えます。2026年10月時点で、10,000ページは$3.75、100,000ページは$21.75、500万ページでは$0.07/1Kページまで下がります。1クレジットで1ページ、ブラウザが必要な場合は2クレジットを読み取ります。クレジットは失効せず、robots.txtは尊重されます。 ## WebReaderAPIの料金はいくらですか? 10,000ページの費用は$3.75($0.38/1Kページ)、100,000ページは$21.75、1,000,000ページは$74.25です(2026年10月時点)。ブラウザが必要なページは2クレジット、失敗したページやrobots.txtが拒否したページは0クレジットです。[すべてのパック](https://webreaderapi.com/ja/pricing/)と[日付入りの比較](https://webreaderapi.com/ja/compare/web-reader-api-pricing/)をご覧ください。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし 価格はUSD、2026-10-22設定。1クレジット = ブラウザなしでの1ページ読み取り。 **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## WebReaderAPIは何を読み取れますか? 1つのAPIキー、1つのクレジット残高、3つのendpoint:1ページ用の`/read`、最大100 URL用の`/batch`、サイト全体用の`/crawl`。 - **[記事とドキュメント](https://webreaderapi.com/ja/url-to-markdown-api/)** — ページのメインコンテンツをMarkdownで、タイトル、著者、日付、言語、単語数付きで返します。 - **[JavaScriptページ](https://webreaderapi.com/ja/docs/read/)** — 生のHTMLに含まれるテキストが少なすぎる場合、ヘッドレスブラウザがページをレンダリングします(render=auto)。 - **[PDFファイル](https://webreaderapi.com/ja/pdf-to-markdown-api/)** — 最大100ページのレポート、論文、マニュアルをMarkdownテキストとして返します。 - **[ウェブサイト全体](https://webreaderapi.com/ja/crawl-api/)** — ドキュメントサイトやブログを、サイトマップに従って1ジョブあたり最大10,000ページまでクロールします。 - **[URLの一括処理](https://webreaderapi.com/ja/docs/crawl/)** — 1つのジョブで最大100件のURLを送信し、完了時にすべてのページをまとめて取得します。 - **[国別のページ取得](https://webreaderapi.com/ja/docs/read/)** — 指定した国のレジデンシャル回線を通じて、その国で配信されるページをそのまま読み取ります。 ## WebReaderAPIはどうやって始めればいいですか? 3つのステップだけです。最も時間がかかるのは、チャージ分のブロックチェーンでの承認です。 1. **暗号資産でチャージ** — USDT、USDC、BTC、ETH、SOL、LTCのいずれかで$25以上を送金してください。身分証明書、自撮り、書類、会社のメールアドレスは一切不要です。 2. **クレジットパックを購入する** — 10,000ページで$3.75、または100,000ページで$21.75を、残高からお支払いいただけます。APIキーはダッシュボードに表示されます。 3. **ページを読み取る** — AuthorizationヘッダーにAPIキーを設定してGET https://webreaderapi.com/api/v1/read?url=…を送信します。クイックスタートにはPython、Node.js、curlのコードがあります。 ## WebReaderAPIは読み取るサイトをどう扱いますか? - **robots.txtを遵守** — 当社のクローラーはWebReaderAPIとして自己を識別し、サイトが許可していないものは一切読み取りません。クローラーページをご覧ください。 - **回避策は行いません** — サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません. - **AIの設定を尊重** — サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません. - **コピーを保存しません** — 読み取ったページのコピーは一切保存しません。ログにはホスト名のみを記録し、完全なURLは保存しません。プライバシーポリシーをご覧ください。 - **返金と残高** — 72時間以内であれば、使用率が20%未満のパックは残高に戻ります。詳細は返金ページをご覧ください。 - **メールによるサポート** — support@webreaderapi.comまで、メールサポートは週7日、毎日12時間以内に返信し、クロールや連携に関するご相談にも対応します。 ## 購入前のよくある質問 ### WebReaderAPIとは何ですか? WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 SerpGoat LLCが運営しています。暗号資産の残高からプリペイドのクレジットを購入し、1つのHTTPSエンドポイントにURLを送信します。返ってくるのは、ページの本文をMarkdownに変換したものとメタデータです。[aboutページ](https://webreaderapi.com/ja/about/)をご覧ください。 ### ページ数はどのようにカウントされますか? 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。ページを読み取る国を指定すると10クレジットが加算されます。その場合、ページはその国のレジデンシャル接続経由で読み取られるためです。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。`GET https://webreaderapi.com/api/v1/credits`で残りのクレジットを確認するのは無料です。 ### サイトがrobotsをブロックしている場合はどうなりますか? 読み取りません。robots.txtがWebReaderAPIまたはすべてのロボットに対してそのページを禁止している場合、APIは`403 blocked_by_robots`を返し、クレジットは消費しません。サイトが別の方法でリクエストを拒否した場合は、その回答がそのまま返り、これも無料です。ブロックを回避することは決してありません。 ### 本人確認やカードの登録は必要ですか? いいえ。WebReaderAPIでは身分証明書、自撮り、会社の書類、クレジットカードは一切不要です。アカウント番号でログイン。メールは任意。BTC, USDT, USDC, ETH, SOL, LTCでお支払いいただけます。[利用規約(Acceptable Use Policy)](https://webreaderapi.com/ja/acceptable-use/)はすべてのアカウントに適用されます。 ### AIエージェントはWebReaderAPIをfetchツールとして使えますか? はい。ドキュメントには、Claude Desktop、Cursor、その他のMCPクライアント向けのすぐに使える[MCPサーバー](https://webreaderapi.com/ja/docs/mcp/)、[LangChainとLlamaIndexのローダー](https://webreaderapi.com/ja/docs/langchain/)、[OpenAI function-callingツール](https://webreaderapi.com/ja/docs/openai/)が含まれています。各ページをモデルの予算内に収めるには`max_chars`を使用してください。 ## WebReaderAPIの概要 | 項目 | 値 | | --- | --- | | 概要 | WebリーダーAPIです。URLを送ると、そのページの本文を整形されたMarkdownで返します | | KYC / 本人確認 | 不要 — 身分証、自撮り、書類、企業メールのいずれも必要ありません | | 料金 | $0.07/1Kページから($3.75で10,000ページ、$21.75で100,000ページ、$74.25で1,000,000ページ) | | クレジット | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | クレジットの有効期限 | プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります | | 出力 | ページ本文のクリーンなMarkdown(またはプレーンテキスト、整形済みHTML)。タイトル、説明、著者、公開日、言語、単語数付き。リンクと画像はオプションで取得 | | JavaScript | ページに必要な場合はヘッドレスブラウザでJavaScriptをレンダリング(render=auto)、常にレンダリング、または一切レンダリングしない | | PDF | 20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです | | クロールとバッチ処理 | 1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います. バッチジョブあたり最大100 URL | | robots.txt | 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません | | サイト運営者の選択 | サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません. サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません | | User-Agent | `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)` | | エンドポイント | `GET https://webreaderapi.com/api/v1/read?url=…` | | 認証 | APIキーはAuthorizationヘッダーにBearerトークンとして、またはapi_keyクエリパラメータで送信してください | | コード例 | Python、Node.js、curlに加え、MCP、LangChain、LlamaIndex、OpenAI function calling向けのツール定義 | | 支払い | 暗号資産のみ:BTC, USDT, USDC, ETH, SOL, LTC(TRC-20またはERC-20のUSDT、ERC-20のUSDC) | | 支払い方法 | $25からチャージし、残高から任意のクレジットパックを購入できます。残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません | | アカウント | アカウント番号でログイン。メールは任意. アカウント番号でサインインするため、安全な場所に保管してください。任意のメールを登録しておくと、番号を復元する手段になります。メール未登録の場合、番号を紛失すると復元できません | | リクエストログ | 各リクエストは、時刻、アカウント、ページのホスト名(完全なURLやその内容は決して記録しません)、ステータス、使用クレジットを含むログ行を残します。これらのログ行は30日後に削除されます。読み取ったページは保存されません。アカウント番号、注文、チャージ、クレジット合計はアカウントの存続中保持され、その後は会計法が求める期間のみ保持されます。記録は法律が当社に義務付ける場合にのみ当局へ提供されます | | 運営者 | SerpGoat LLC | | サポート | メールサポートは週7日、毎日12時間以内に返信し、クロールや連携に関するご相談にも対応します | --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPIについて > WebReaderAPIについて:WebリーダーAPIの運営者、公開ページをMarkdownに変換する方法、行わないこと、そして担当者への連絡方法。KYC不要、暗号資産。 - URL: https://webreaderapi.com/ja/about/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) ひとつの役割を持つ小さなAPI:あなたのソフトウェアのために公開Webページを読み取り、言語モデルが利用できる形式でそのテキストを返します。このページでは運営者、仕組み、そして限界について説明します。 **概要 — WebReaderAPIとは何か、誰が運営しているのか?** WebReaderAPIはAIエージェント向けのWebリーダーAPIで、公開WebページをクリーンなMarkdownに変換し、身分証のアップロードなしで暗号資産で支払えます。**WebReaderAPI**はSerpGoat LLCが運営しています。プリペイドクレジットは2026年10月時点で10,000ページページあたり$3.75から始まり、失効しません。クローラーはrobots.txtを尊重し、名前で自己を識別します。 ## WebReaderAPIはどのような課題を解決しますか? 言語モデルはテキストを読みますが、Webページの大部分は別のものです:ナビゲーション、スクリプト、Cookie通知、広告、関連記事ウィジェット、フッターなどです。生のHTMLをモデルに渡すとコンテキストウィンドウを浪費し、事実が埋もれてしまいます。 WebReaderAPIはページを取得し、本文を見つけてMarkdownとして返します。見出し、リスト、表、リンクはそのままの位置に保たれます。ページに記載があれば、タイトル、著者、公開日、言語、単語数も取得できます。1回の呼び出しで、あなた自身のコードにおける取得ステップ、ブラウザステップ、クリーニングステップを置き換えます。 ## リクエストはどのように処理されますか? 1. あなたのコードがAPIキーとともにURLを`https://webreaderapi.com/api/v1/read`に送信します。 2. 私たちはサイトのrobots.txtを、私たちのトークンとすべてのロボットについて確認し、`ai-input=no`シグナルを探します。 3. ページが許可されていれば、私たちのボットがUser-Agent `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`でページを取得します。 4. 生のHTMLに含まれるテキストが少なすぎる場合、ヘッドレスブラウザが最初にページをレンダリングします(`render=auto`)。 5. 私たちは本文抽出を行い、Markdownに変換し、メタデータとともに返します。 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。[読み取りエンドポイント](https://webreaderapi.com/ja/docs/read/)ではすべてのパラメータを説明しています。 ## WebReaderAPIが決して行わないこと 一部の制限は設定ではなく製品の一部です: - **サイトが拒否したページを決して読みません。** 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。 - **拒否を回避することは決してしません。** サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 - **ログインやペイウォールの背後を決して読みません**。あなたが提供した認証情報があっても同様です。 - **あなたのページを決して保持しません。** テキストはあなたに返され、私たちのログにはホスト名のみが残ります。 これらのルールにより、技術的には取得できるページをいくつか失います。しかしサイト所有者、顧客、AIアシスタントがこのツールを信頼できる必要があるため、私たちはこのトレードオフを受け入れます。 ## 顧客は誰ですか? 主に、AIエージェントに信頼できるWeb読み取り手段を提供する開発者と、ドキュメント、ヘルプセンター、ブログを検索システムに読み込むチームです。研究者は公開記事をクリーンな形式で収集するために使い、一部のツールは閲覧ビューや要約の構築に利用しています。 [利用規約](https://webreaderapi.com/ja/acceptable-use/)には、私人の個人データ収集など許可されない事項が記載されています。すべての報告を担当者が確認し、ルールに違反したアカウントは停止されます。 ## なぜ暗号資産でKYC不要なのですか? 私たちの顧客の多くは、個人開発者、小規模チーム、自律型プロジェクトであり、試すすべてのAPIに身分証明書やカード情報を共有したくないと考えているからです。アカウント番号でログイン。メールは任意。BTC, USDT, USDC, ETH, SOL, LTCで$25からチャージし、残高からクレジットを購入します。 KYC不要とはルールがないという意味ではありません。利用規約はすべてのアカウントに適用され、robots.txtはすべてのリクエストに適用され、私たちは文書化された不正利用報告に基づいて行動します。 ## 私たちが主張しないこと 現在、応答時間、稼働率、成功率の数値は公表していません。成功率は読み取るサイトによって異なり、誠実な数値には方法と日付を伴う測定された公開サンプルが必要です。準備ができ次第、[ステータスページ](https://webreaderapi.com/ja/status/)に掲載されます。 また、Web上のすべてのページを読めるとも主張していません。robotsを拒否するサイト、ログインを要求するサイト、自動リクエストをブロックするサイトは、設計上、対象外です。 ## 担当者に連絡するには? API、請求、アカウントに関するご質問はsupport@webreaderapi.comまでお書きください。毎日担当者が回答します。サイト所有者や不正利用を報告したい方はabuse@webreaderapi.comまでお書きください。[ボットページ](https://webreaderapi.com/ja/bot/)では、私たちのクローラーをブロックまたは速度制限する方法を説明しています。 私たちのチームの誰も、あなたのアカウント番号やAPIキーを尋ねることは決してありません。 ## 私たちについて:よくある質問 ### WebReaderAPIはどの企業が運営していますか? SerpGoat LLC。企業名はクライアントエリアの請求書と[利用規約](https://webreaderapi.com/ja/terms/)に記載されています。 ### WebReaderAPIは独自の検索インデックスを構築していますか? いいえ。顧客が送信したページを、1つのURL、バッチ、または1サイトずつ読み取ります。自らWebをクロールすることはなく、ページをランク付けすることもありません。 ### 本文を抽出するコードは公開されていますか? APIはホスト型サービスであり、その内部コードは公開されていません。信頼できる動作は[読み取りエンドポイントリファレンス](https://webreaderapi.com/ja/docs/read/)と[レスポンス形式](https://webreaderapi.com/ja/docs/response/)に記載されています。 ### WebReaderAPIを無料で試せますか? いいえ、無料枠はありません。最小のパックである10,000ページを$3.75で購入すると、最大のパックと同じAPIが利用でき、$25のチャージから支払われます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # 利用規定 > WebReaderAPIの利用規約:WebリーダーAPIで読んでよいもの、禁止事項、robots.txtの適用方法、不正利用への対応について。KYC不要。 - URL: https://webreaderapi.com/ja/acceptable-use/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 本人確認がないことは、ルールがないことを意味しません。このポリシーでは、APIをどのような用途に使えるか、決して使ってはならない用途、違反した場合の対応について定めています。 **概要 — WebReaderAPIは何に使えますか?** **WebReaderAPI**は、AIエージェント、検索・取得システム、リサーチ、公開情報のモニタリング、閲覧ツールのために公開Webページを読む用途に使用できます。私人の個人データを収集するためのページ読み取り、ログインやペイウォールの背後にあるコンテンツの読み取り、児童性的虐待コンテンツ、スパム、詐欺、およびあなたまたは当社が事業を行う地域の法律に違反するあらゆる利用には使用できません。すべてのリクエストはrobots.txtを尊重し、サイトの拒否を回避する手助けは一切行いません。不正利用の報告はすべて担当者が確認し、サービスを不正利用していると判明したアカウントは停止されます。 ## どのような用途が歓迎されますか? 以下の用途は、このサービスが作られた目的に合致しています: - ユーザーの質問に答えるためにページを読む**AIエージェントとアシスタント**。 - ドキュメント、ヘルプセンター、ブログ、公開レポートなど、**公開コンテンツの取得と検索**。 - 公開記事、ポリシー、価格、発表に関する**リサーチ**。 - 利用規約、リリースノート、製品ページ、ニュースなど、**公開ページの変更モニタリング**。 - ページをクリーンなテキストとして提示する**アクセシビリティおよび閲覧ツール**。 - 自身のサイトを別の形式に**アーカイブ・移行**する用途。 ## どのような用途が禁止されていますか? 以下の行為は、目的を問わず、いかなるアカウントでも許可されません: - 私人の個人データを収集するためのページ読み取り、ログインやペイウォールの背後にあるコンテンツの読み取り、児童性的虐待コンテンツ、スパム、詐欺、およびあなたまたは当社が事業を行う地域の法律に違反するあらゆる利用。 - あらゆるWebサイトから個人のプロファイルを作成したり、連絡先情報を収集したりすること。 - API、その出力、または複数のアカウントを用いて、サイトの拒否、レート制限、チャレンジページ、robots.txtのルールを回避すること。 - 自身が保有する認証情報であっても、ログイン、サブスクリプション、ペイウォールが必要なコンテンツを読むこと。 - 当社の書面による合意なしに、APIへの生のアクセスを自社の閲覧サービスとして再販すること。 - 出力をスパム、フィッシング、なりすまし、詐欺に利用すること。 - Webサイトに負荷をかける、または害を与える意図のリクエストを送信すること。 ## robots.txtとサイト所有者の選択はどのように適用されますか? これらはすべてのリクエストに自動的に適用され、無効にすることはできません。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 必要なサイトにアクセスできない場合は、その所有者にアクセスを依頼するか、サイトが提供する公式フィードまたはAPIをご利用ください。[botページ](https://webreaderapi.com/ja/bot/)では、サイト所有者が当社のクローラーを許可または拒否する方法を案内しています。 ## コンテンツの利用方法については誰が責任を負いますか? あなたです。読み取ったページには、その所有者の権利(著作権、データベース権、サイトが定めるライセンス)が残ります。WebReaderAPIは、あなたが要求したテキストを提供するものであり、それを再公開する権利を付与するものではありません。 コンテンツを保存、公開、学習に利用する前に、読み取るサイトの利用規約とライセンスを確認してください。このポリシーは法的助言ではありません。助言が必要な場合は、あなたが事業を行う地域の弁護士にご相談ください。 ## このポリシーに違反した場合はどうなりますか? まず事実を確認します。措置を講じる前に、担当者が各報告をレビューします。事案の深刻さに応じて、アカウントへの警告、APIキーの取り消し、停止、または閉鎖を行うことがあります。 違反により閉鎖されたアカウントのクレジットは、[利用規約](https://webreaderapi.com/ja/terms/)に定めるとおり失われます。児童の性的虐待に関わるコンテンツは、所管当局に通報されます。 ## 不正利用はどう報告すればよいですか? 該当するURL、日時、および当社のユーザーエージェント`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`を示すサーバーログの一行を添えて、abuse@webreaderapi.comまでご連絡ください。簡潔で事実に基づく報告が最も確認しやすいです。通報者にどの顧客がリクエストを送信したかは開示しませんが、判明した内容に基づいて対応します。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Firecrawl代替:ページ単位のMarkdownクレジット、暗号資産で支払い > 2026年のFirecrawl代替:$0.07/1KページでWebページをMarkdownに変換、クレジットは無期限、robots.txtを尊重、KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/alternatives/firecrawl/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Firecrawlは、多くの比較記事が最初に取り上げるリーダーAPIです。このページでは、その公開プランをWebReaderAPIのパックと並べて示し、Firecrawlにあって当社にない機能を挙げ、移行のためにそのオプションを当社のエンドポイントに対応付けます。 **概要 — 暗号資産で支払えるおすすめのFirecrawl代替は?** **WebReaderAPI**は、公開Webページ、PDF、サイト全体をMarkdownに変換し、無期限のプリペイドクレジットとして販売、KYC不要で暗号資産により支払います。このページの価格(2026-10-22設定)では、10万件の静的ページが$21.75です。FirecrawlのStandardプランは月額$99で10万クレジットです。Firecrawlはすべてのページを1クレジットでレンダリングし、JSON抽出、ブラウザアクション、無料枠を追加提供していますが、当社にはこれらはありません。 ## FirecrawlとWebReaderAPIの比較 | | WebReaderAPI(当社) | Firecrawl | | --- | --- | --- | | 課金 | プリペイドパック、クレジットは無期限 | 月額プラン、プランのクレジットは毎月リセット、追加購入したクレジットは解約まで有効 | | 最小の有料オプション | 10,000ページで$3.75 | Hobby:月額$19で5,000クレジット | | ページあたりのクレジット | 静的ページは1、ブラウザが必要な場合は2 | 1ページあたり1、レンダリング込み | | 無料枠 | なし | 月1,000クレジット、カード不要、日次上限内でキー不要のMCP | | 構造化JSON抽出 | 提供なし | スキーマ付きJSON形式、1ページあたり+4クレジット | | ブラウザ操作とスクリーンショット | 提供なし | 1リクエストあたり最大50アクション、スクリーンショット形式 | | サイトマップエンドポイント | バージョン1では非対応 | Map: 1コールあたり1クレジット | | robots.txt | 常に尊重、上書き不可 | デフォルトで尊重、ignoreRobotsTxtはEnterprise限定 | | 支払い | BTC, USDT, USDC, ETH, SOL, LTC | Stripe経由のカード、デビットカード、PayPal | | 本人確認 | なし: ID不要、セルフィー不要、書類不要 | 利用規約に記載なし | | セルフホスティング | いいえ | コアはAGPL-3.0でオープンソース | *価格確認日:2026年10月22日.* Firecrawlの情報はfirecrawl.devとdocs.firecrawl.devより、2026-10-22に閲覧。 ## 1,000ページあたりの価格はどう比較されますか? ページにブラウザが必要かどうかによります。Firecrawlはどの場合も1ページ1クレジットを請求します。WebReaderAPIは、HTMLに本文が含まれるページは1クレジット、ブラウザを実行する必要があった場合は2クレジットを請求します。`render=auto`では、ブラウザは必要なときだけ起動します。 | 月間ページ数 | Firecrawl(すべてのページ) | WebReaderAPI、静的ページ | WebReaderAPI、ブラウザが必要なページ | |---|---|---|---| | 10,000 | $44(Hobby $19 + 追加5,000クレジット、1,000あたり$5) | $3.75 | 2 × $3.75 | | 100,000 | $99(Standard) | $21.75 | 2 × $21.75 | | 1,000,000 | $749(Scale、年払いで月$599) | $74.25 | 2 × $74.25 | 2026-10-22時点のこのページの価格では、これら3つのボリュームで当社の両方の列がFirecrawlの月額料金を下回ります。合計額以上に重要な違いが2つあります。Firecrawlのプランのクレジットは毎月リセットされますが、当社のパックは価値を保ち続けます。また、FirecrawlのJSON抽出は合計で1ページ5クレジットかかり、当社はこの機能を販売していません。 ## Firecrawlがより適しているのはどんな場合ですか? 公開ページからクリーンなMarkdown以上のものが必要な場合はFirecrawlを選んでください。 - **構造化抽出。** そのJSON形式は、送信したスキーマに一致するフィールドを1ページあたり追加4クレジットで返します。当社はMarkdownとメタデータのみを返します。 - **ブラウザ操作。** 読み取り前にクリック、待機、スクロール、入力が可能で、1リクエストあたり最大50アクション。当社はページを読み込まれたままの状態で読み取ります。 - **スクリーンショット、サイトマップ、変更追跡。** いずれもFirecrawl側の形式またはエンドポイントです。 - **無料で開始。** カード不要の月1,000クレジット、およびMCPサーバー経由のキー不要アクセスで、IPアドレスごとに日次上限あり。 - **エコシステム。** 統合ページにはLangChain、LlamaIndex、CrewAI、n8n、Zapier、コーディングエージェントが掲載されており、OpenClawはバンドルされたweb_fetchプロバイダーとしてFirecrawlを同梱しています。 - **セルフホスティング。** コアはAGPL-3.0でオープンソースです。 Firecrawlは2026年9月22日に$75MのシリーズBを発表しており、これが急速な製品ロードマップを支えています。 ## WebReaderAPIがより適しているのはどんな場合ですか? 予測可能なコストで、カードも本人確認も不要なシンプルなリーダーが必要ならWebReaderAPIを選んでください。 - **暗号資産で支払い、KYC不要。** BTC, USDT, USDC, ETH, SOL, LTCで$25からチャージできます。アカウント番号でログイン。メールは任意。 - **価値が保たれるクレジット。** プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。年に2回実行するクロールが、11か月分のアイドル期間のコストを負担することはありません。 - **エラーは無料。** 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。Firecrawlはドキュメントを返さない場合は無料ですが、403や404を返すページでも1クレジットかかります。 - **サイト所有者に対する1つのルール。** 当社のクローラーは読み取りのたびにrobots.txtを確認し、`Content-Signal: ai-input=no`を尊重します。これを無効にする設定はありません。User-Agentは[当社のクローラーページ](https://webreaderapi.com/ja/bot/)で公開しています。 - 上記のボリュームにおける**1ページあたりの価格**(2026-10-22時点)。 ## FirecrawlのオプションはWebReaderAPIのエンドポイントにどう対応しますか? 単一ページの読み取りとクロールはそのまま移行できます。抽出、アクション、マップには対応するものがありません。 | Firecrawl | WebReaderAPI | 備考 | |---|---|---| | 1ページをスクレイピング | `GET` または `POST /read` | 同じ考え方: 1つのURLを入力し、1つのドキュメントを出力 | | `formats: ["markdown"]`(デフォルト) | `format=markdown`(デフォルト) | デフォルトではメインコンテンツのみ。ページ全体には`main_content=false` | | `formats: ["html"]` | `format=html` | コンテンツのクリーンなHTML。バージョン1では生のHTMLなし | | `formats: ["links"]` | `include_links=true` | リンクはリストとして返される | | スキーマ付き`formats: ["json"]` | — | 当社のMarkdownに対して独自のモデルを実行 | | アクション、スクリーンショット | — | 提供なし | | `timeout`(ミリ秒、デフォルト60,000) | `timeout`(秒、5〜60、デフォルト30) | | | `maxAge`キャッシュ(デフォルト2日) | — | 当社はコピーを保持せず、読み取りのたびにページを取得 | | `limit`と`maxDiscoveryDepth`でクロール | `limit`(最大10,000)と`max_depth`で`POST /crawl` | 結果はカーソルでページング | | マップ | — | バージョン1では非対応 | | `ignoreRobotsTxt`(Enterprise) | — | robots.txtは常に適用 | *Python: 以前スクレイピングとして送っていた読み取り* ```python import os import requests resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": "https://example.com/changelog", "format": "markdown", "include_links": "true"}, timeout=90, ) if resp.status_code == 403: print("refused by robots.txt or by the site:", resp.json()["error"]["code"]) else: resp.raise_for_status() page = resp.json() print(page["title"], "-", page["credits_used"], "credit(s)") print(len(page.get("links", [])), "links") print(page["markdown"][:400]) ``` ## Firecrawlが読み取れたページはここでも動作しますか? ほとんどの公開ページは動作しますが、ポリシーに1つ違いがあります。Firecrawlの拡張モードは、401、403、429の応答後に、enhancedプロキシと呼ぶものを通じてリクエストを再試行します。WebReaderAPIは拒否に対して再試行しません。サイトが拒否した場合は、サイト自身のステータスとともに`502 target_refused`が返り、クレジットは消費されません。 本番トラフィックを移行する前に、最も重要な50個のURLを両方のサービスで1日実行してください。Markdown、`rendered`フラグ、消費クレジットを比較すれば、あなたのページに対する品質と実際の価格の両方がわかります。 ## Firecrawlのプランはどのパックで置き換えられますか? 月間のページ数と、そのうち何ページがブラウザを必要とするかを数えてください。Standard相当の10万ページのワークロードは、ページが静的なら100,000ページひとつで収まり、すべてのページがブラウザを必要とするならそのパック2つ分です。クレジットは失効しません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## Firecrawlの代替: よくある質問 ### 無料のFirecrawl代替はありますか? Firecrawl自体に月1,000クレジットの無料枠があります。Crawl4AI、MarkItDown、Trafilaturaなどのオープンソースツールは、自社サーバーで無料で実行できます。[Crawl4AIかホスト型API](https://webreaderapi.com/ja/compare/crawl4ai-vs-api/)をご覧ください。WebReaderAPIに無料枠はありません。最小のパックは$3.75で10,000ページです。 ### Firecrawlは暗号資産で支払えますか? その価格ページにはStripe経由のカード、デビットカード、PayPalが記載されており、暗号資産のオプションはありません。WebReaderAPIはBTC, USDT, USDC, ETH, SOL, LTCのみを受け付け、KYCは不要です。 ### WebReaderAPIはFirecrawlのようにスキーマ付きでJSONを抽出しますか? いいえ。WebReaderAPIはMarkdown、テキスト、またはクリーンなHTMLをメタデータとともに返します。フィールドが必要な場合は、当社のMarkdownをスキーマとともに任意のモデルに渡してください。FirecrawlのJSON形式はこれを1ページあたり追加4クレジットで行います。 ### Firecrawlのクレジットは失効しますか? Firecrawlの課金ドキュメントによると、プランのクレジットは毎月リセットされ、デフォルトでは繰り越されません。追加購入したクレジットは使うまで残りますが、解約すると失効します。WebReaderAPIのクレジットは失効しません。 ### Firecrawlは自分でセルフホストできますか? はい。コアはAGPL-3.0でオープンソース化されており、READMEにはデフォルトでrobots.txtを尊重すると記載されています。ホスト版サービスには、オープンソース版に含まれない機能が追加されています。 ## ソース 1. [Firecrawlの料金](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22) 2. [課金](https://docs.firecrawl.dev/billing.md) — Firecrawl docs (read 2026-10-22) 3. [高度なスクレイピングガイド](https://docs.firecrawl.dev/advanced-scraping-guide.md) — Firecrawl docs (read 2026-10-22) 4. [クロール](https://docs.firecrawl.dev/features/crawl.md) — Firecrawl docs (read 2026-10-22) 5. [拡張モード](https://docs.firecrawl.dev/features/enhanced-mode.md) — Firecrawl docs (read 2026-10-22) 6. [連携](https://docs.firecrawl.dev/integrations.md) — Firecrawl docs (read 2026-10-22) 7. [Firecrawlのキー不要リリース](https://www.firecrawl.dev/blog/firecrawl-keyless-launch) — Firecrawl (read 2026-10-22) 8. [Alexandriaの発表とシリーズB調達のお知らせ](https://www.firecrawl.dev/blog/introducing-alexandria-series-b) — Firecrawl (read 2026-10-22) 9. [firecrawl/firecrawlリポジトリ](https://github.com/firecrawl/firecrawl) — GitHub (read 2026-10-22) 10. [Webツール](https://docs.openclaw.ai/tools/web) — OpenClaw docs (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Jina Reader代替:トークンではなくページ単位のクレジット > Jina Reader代替:トークンではなくページ単位のクレジット、$0.07/1Kページから、robots.txtを常にチェック、KYC不要、暗号資産。価格は2026-10-22時点。 - URL: https://webreaderapi.com/ja/alternatives/jina-reader/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Jina ReaderはURLプレフィックスの手法を有名にしました。リンクの前にr.jina.ai/を付けるとMarkdownが返ってきます。このページでは、Jinaの課金方法、適したツールとなる場面、ページ単位の価格の方が計画しやすい場面を説明します。 **概要 — 優れたJina Reader代替は何ですか?** Jina Readerは出力トークンに対して課金します。10億トークンで$50、110億トークンで$500で、新しいキーごとに非商用利用で1,000万トークンが無料です(2026年10月22日に確認)。**WebReaderAPI**は代わりにページ単位で課金し、$0.07/1Kページからです。そのため長いページも短いページと同じコストです。読み取りのたびにrobots.txtをチェックし、失効しないクレジットを販売し、KYC不要で暗号資産を受け付けます。 ## Jina ReaderとWebReaderAPIの概要 | | WebReaderAPI(当社) | Jina Reader | | --- | --- | --- | | 呼び出し方法 | APIキーを使った`GET https://webreaderapi.com/api/v1/read?url=…` | リンクにプレフィックスを付ける:`https://r.jina.ai/` + URL、キーは任意 | | 課金単位 | ページ単位:1クレジット、ブラウザ使用時は2クレジット | 出力トークン | | 料金 | 10,000ページあたり$3.75、$0.07/1Kページから | 10億トークンあたり$50、110億トークンあたり$500 | | 無料利用 | なし | キー不要で毎分20リクエスト、新しいキーごとに1,000万トークン(非商用のみ) | | レート制限 | ダッシュボードに表示される同時実行数の上限 | キーありで毎分500リクエスト、プレミアムで5,000リクエスト | | robots.txt | 読み取りのたびにチェック | オプトインの`X-Robots-Txt`ヘッダー、デフォルトは明記なし | | サイト全体のクロール | `POST /crawl`、最大10,000ページ | クロール用endpointの記載なし | | PDF | はい、最大100ページ | はい | | 支払い | BTC, USDT, USDC, ETH, SOL, LTC | Stripe経由のカード、Google Pay、PayPal | | 運営者 | SerpGoat LLC | Jina AI、2025年10月からElasticの一部 | *価格確認日:2026年10月22日.* Jinaに関する事実はjina.ai/readerとその料金ダッシュボードより、2026-10-22に閲覧。 ## Jina Readerの課金方法は?1ページあたりのコストはいくらですか? Jinaはレスポンスのトークン数を課金対象とします。パッケージは10億トークンで$50(100万トークンあたり約$0.05)、110億トークンで$500(100万トークンあたり約$0.045)です。失敗したリクエストは差し引かれず、5分以内に2回リクエストされたページはキャッシュから返されます。 したがって1ページあたりのコストはページの長さに依存し、Jinaは平均値を公表していません。**1ページあたり5,000トークンと仮定した推定**では、1,000ページのコストは最初のパッケージで約$0.25、2つ目のパッケージで$0.225です。2,000トークンのニュース記事ならこれより安く、20,000トークンのドキュメントページなら4倍高くなります。jina-ocr-v1によるOCRはトークンが40倍かかります。 ## ページ単位のクレジットの方が計画を立てやすいのはどんなときですか? 読むページ数はわかっているが、各ページの長さがわからないときです。ドキュメントサイトのクロール、監視する競合ページのリスト、タスクごとに5つのリンクを読むエージェントは、いずれもトークン数ではなくページ数で数えられます。 WebReaderAPIなら、2026年10月22日時点で、各ページの長さに関係なく100,000ページのコストは$21.75です。ブラウザが必要なページは2クレジットを消費し、その発生は`rendered`フィールドでわかります。返される内容のサイズを制限するには`max_chars`を使います。モデルのコンテキストウィンドウは保護しますが、価格は変わりません。 ## Jina Readerがより良い選択となるのはどんなときですか? セットアップ時間が何よりも重要であるとき、またはページが短いときにJina Readerを選んでください: - **セットアップ不要。** URLプレフィックスはキーなしで毎分20リクエストまで利用でき、テストや小さなスクリプトには十分です。 - **短いページ。** トークン課金では短いページのコストがページ単位の価格より安くなります。上記の5,000トークンの推定では、Jinaの1ページあたりのコストは当社の10,000ページパックより安くなります。 - **ヘッダーによる細かい制御。** `X-Target-Selector`、`X-Remove-Selector`、`X-Token-Budget`、`X-Engine`などが各読み取りを制御します。 - **モデルと検索。** ReaderLM-v2の出力と`s.jina.ai`検索は同じアカウントから利用できます。 - **公式MCPサーバー** があり、その`read_url`ツールは1回の呼び出しで最大5つのURLを読み取ります。 - **オープンソース。** GitHubのReaderブランチはApache-2.0で、ホスト型のストレージ層は含みません。 Jina AIは現在Elasticの一部であり、Elasticは2025年10月9日に買収を完了しました。 ## Jina ReaderのヘッダーはWebReaderAPIのパラメータにどう対応しますか? ほとんどの読み取りはURLを変更しキーを追加するだけで移行できます。 | Jina Reader | WebReaderAPI | 備考 | |---|---|---| | `https://r.jina.ai/https://example.com` | `GET https://webreaderapi.com/api/v1/read?url=https://example.com` | キーは`Authorization`ヘッダーに指定 | | デフォルトのMarkdown出力 | `format=markdown`(デフォルト) | デフォルトで本文抽出 | | `X-Engine: direct` | `render=false` | プレーンHTTP読み取り | | デフォルトのヘッドレスブラウザ | `render=auto`または`render=true` | ブラウザ実行時は2クレジット | | `X-Token-Budget` | `max_chars` | トークンではなく文字数 | | `X-Target-Selector`、`X-Remove-Selector` | — | 代わりに本文抽出で検出 | | `X-Proxy`(国) | `country` | +10クレジット、レジデンシャル接続 | | `X-No-Cache` | — | 当社はキャッシュを保持しません | | `X-Robots-Txt`(オプトイン) | — | robots.txtは常に確認します | | `X-User-Agent`の上書き | — | 当社のUser-Agentは固定で公開しています | *Python: r.jina.aiプレフィックスからreadエンドポイントへ* ```python import os import requests # Before: requests.get("https://r.jina.ai/" + url) url = "https://example.com/guide/install" resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": url, "render": "auto", "max_chars": 30000}, timeout=90, ) resp.raise_for_status() page = resp.json() print(page["word_count"], "words, rendered:", page["rendered"], "credits:", page["credits_used"]) print(page["markdown"][:400]) ``` ## 読むサイト側では何が変わりますか? Jinaでは、`X-Robots-Txt`ヘッダーを送信したときのみrobots.txtが確認され、ブラウザのUser-Agentを上書きできます。そのページにはどちらのデフォルトも記載されていません。WebReaderAPIでは両方とも固定です。すべての読み取りで`WebReaderAPI`およびすべてのrobotsに対してrobots.txtが確認され、すべてのリクエストに`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`が付与されます。 つまり、Jinaでは読めるページの一部がこちらでは拒否されますが、その場合のコストはかかりません。その代わり、サイト所有者は誰がページを読んでいるかを確認でき、[クローラーページ](https://webreaderapi.com/ja/bot/)で説明しているように、1行で当社をブロックまたは許可できます。 ## WebReaderAPIはトークンの代わりにいくらかかりますか? 1ページあたりの定額料金です。2026年10月22日時点で、$3.75に対して10,000ページ、$350に対して最大5,000,000ページです。クレジットは失効しません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## Jina Readerの代替: よくある質問 ### Jina Readerは無料ですか? 一部無料です。キーなしの場合、r.jina.aiは基本的な利用が毎分20リクエストまで無料です。新しいキーにはそれぞれ1,000万トークンが無料で付与されますが、Jinaの料金ページでは非商用利用に限定されています。有料パッケージは10億トークンで$50からです。 ### Jina Readerでページが長いとコストが高くなるのはなぜですか? Jinaはレスポンスのトークン数で課金するためです。長い記事は短い記事より多くのトークンを返します。WebReaderAPIは長さに関係なく1ページ1クレジット、ブラウザを使用する場合は2クレジットを課金します。 ### Jina Readerは暗号資産で支払えますか? JinaのページにはStripe経由のカード、Google Pay、PayPalが記載されており、暗号資産の選択肢はありません。WebReaderAPIではKYC不要でBTC, USDT, USDC, ETH, SOL, LTCを受け付けています。 ### WebReaderAPIにはr.jina.aiのような無料のキーなしモードがありますか? いいえ。すべての読み取りにキーが必要で、キーは有料パックに付属します。最小のパックは$3.75で10,000ページです。 ### Jina Readerは現在誰が所有していますか? Elasticです。Elasticは2025年10月9日にJina AIの買収を完了し、Jinaの法的ページによると現在はElasticのデータ処理条項が適用されます。 ## ソース 1. [Reader](https://jina.ai/reader/) — Jina AI (read 2026-10-22) 2. [APIダッシュボード: 料金](https://jina.ai/api-dashboard/pricing/) — Jina AI (read 2026-10-22) 3. [法務](https://jina.ai/legal/) — Jina AI (read 2026-10-22) 4. [jina-ai/readerリポジトリ](https://github.com/jina-ai/reader) — GitHub (read 2026-10-22) 5. [jina-ai/MCPリポジトリ](https://github.com/jina-ai/MCP) — GitHub (read 2026-10-22) 6. [ElasticがJina AIの買収を完了](https://ir.elastic.co/News--Events/news/news-details/2025/Elastic-Completes-Acquisition-of-Jina-AI-a-Leader-in-Frontier-Models-for-Multimodal-and-Multilingual-Search/default.aspx) — Elastic (2025-10-09, read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # 2026年最高のWebリーダーAPI: URLをMarkdownに変換する10の方法 > 2026年最高のWebリーダーとURL to Markdown API: 1,000ページあたりの価格、JavaScript、robots.txt、暗号資産、KYCで10の選択肢を比較。2026-10-22に確認。 - URL: https://webreaderapi.com/ja/best/web-reader-apis/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Webページをモデル向けMarkdownに変換する10のホスト型APIとオープンソースツールを、それぞれの公式ページに基づく同一の基準で比較。当社はWebReaderAPIを公開しており、このリストの1位です。各項目にはその選択肢が優れている点を記載しています。 **概要 — 2026年最高のWebリーダーまたはURL to Markdown APIはどれですか?** 求める作業によって異なります。2026年10月22日時点では、暗号資産で支払い、KYC不要、robots.txtを尊重し、有効期限のないクレジットを$0.07/1Kページから利用できる**WebReaderAPI**、機能が最も充実しているFirecrawlは$99プランで1,000ページあたり$0.99、セットアップ不要の読み取りをトークン単位で課金するJina Reader、Apache-2.0ライセンスでセルフホストしたい場合はCrawl4AIです。 ## 2026年のWebリーダーAPIベスト10 **調査方法.** WebReaderAPI (SerpGoat LLC)が公開。すべてのプロバイダーは同一の基準で比較しており、基準は各プロバイダーの公開ウェブサイトから取得しています:プレーンなページおよびブラウザレンダリングページの1,000ページあたりの定価, 無料枠とクレジットの有効期限, Markdown品質の機能(本文抽出、PDF、クロール), robots.txtの方針, 暗号資産を含む利用可能な支払い方法, 本人確認やカード情報の要件, 価格を確認した日付。 *価格確認日:2026年10月22日.* ### 1. WebReaderAPI — 当社製品 有効期限のない前払いクレジットを暗号資産で支払い、KYC不要で利用できる、AIエージェント向けのWebリーダーAPIです。クローラーはrobots.txtを尊重し、拒否を回避しようとはしません。 - 最適な用途: 書類なしで暗号資産による支払いを希望する場合、礼儀正しいクロールを求めるエージェントやRAGパイプライン - 料金: 1,000,000ページでは$0.07/1Kページ、10,000ページでは$0.38/1Kページ。ブラウザページは2クレジット使用 - KYC: なし - 暗号資産で支払い: BTC, USDT, USDC, ETH, SOL, LTC - メリット: クレジットの有効期限なし - メリット: 失敗したページとrobots.txtにより拒否されたページは無料 - メリット: MCP、LangChain、LlamaIndex、OpenAI、n8n、OpenClaw向けのツールコード - デメリット: 無料枠なし - デメリット: 構造化JSON抽出やページアクションなし - デメリット: サイトが拒否したページは拒否されたまま ### 2. Firecrawl サイトをLLM対応データに変換する最も有名なAPI。スクレイピング、クロール、マップ、抽出に対応し、大規模なオープンソースおよびMCPエコシステムを持ちます。 - 最適な用途: 構造化抽出、ページアクション、成熟したエコシステムを必要とするチーム - 料金: Hobbyで1,000ページあたり$3.80(5,000ページで$19)、Standardで$0.99(100,000ページで$99)、Scaleで$0.749(100万ページで$749)。JavaScript込み - KYC: 記載なし - 暗号資産で支払い: なし(カード、PayPal) - メリット: 毎月1,000の無料クレジット、カード不要 - メリット: デフォルトでrobots.txtを尊重 - メリット: コアはセルフホスト可能(AGPL-3.0) - デメリット: プランのクレジットは毎月リセット - デメリット: JSON抽出はページあたり4クレジット追加 ### 3. Jina Reader URLの先頭にr.jina.aiを付けるとMarkdownで返ります。出力トークン単位で課金され、現在はElasticの一部です。 - 最適な用途: セットアップ不要のクイックな読み取り、短いページ - 料金: 出力10億トークンあたり$50、110億トークンで$500(ページあたりのコストはページの長さにより変動) - KYC: 記載なし - 暗号資産で支払い: 記載なし - メリット: キーなしで1分あたり20リクエスト - メリット: 新しいキーごとに1,000万の無料トークン(非商用) - デメリット: トークン課金のため長いページのコスト予測が難しい - デメリット: robots.txtはオプトインのヘッダー経由でのみ適用 ### 4. Crawl4AI LLM向けで最も人気のオープンソースクローラー。ソフトローンチ中のホスト型クラウドもあります。 - 最適な用途: セルフホストしてすべてを管理したいチーム - 料金: セルフホストは無料、Cloudは$10(Starter)から。通常ページは0.5クレジット、ブラウザページは1クレジット - KYC: カード不要(Cloud) - 暗号資産で支払い: 記載なし - メリット: Apache-2.0ライセンス - メリット: セルフホスト型MCPサーバー - デメリット: セルフホストとはサーバーとメンテナンスのこと - デメリット: check_robots_txtはデフォルトでオフ ### 5. Olostep すべてのページをブラウザでレンダリングするAPI。バッチ、クロール、マップに対応し、エージェント向けにリクエストごとの暗号資産払いも可能。 - 最適な用途: 大量のJavaScriptヘビーなサイト - 料金: Starterで1,000ページあたり$1.80(5,000ページで$9)、Scaleで$0.399(100万ページで$399)。すべてのページをレンダリング - KYC: トップアップはカード払い - 暗号資産で支払い: リクエストごとにUSDC(x402) - メリット: 月100万ページで確認済みのブラウザページ最安価格 - メリット: バッチ、クロール、マップ - デメリット: プランのクレジットは毎月リセット ### 6. Exa contents Exaの検索インデックスから取得するページ内容を定額で提供。エージェント向けにリクエストごとの暗号資産払いも可能。 - 最適な用途: すでにExa検索を使っているエージェント - 料金: 1,000ページあたり$1.00の定額 - KYC: 従量課金はカード払い - 暗号資産で支払い: リクエストごとにUSDC(x402) - メリット: 毎月$10の無料クレジット - メリット: x402で1ページ$0.001 - デメリット: キャッシュ優先。ドキュメント化されたブラウザオプションはなし ### 7. Tavily Extract Tavily検索スタックからの本文抽出。URLのバッチ単位で価格設定され、advancedモードも利用可能。 - 最適な用途: Tavily検索を中心に構築されたエージェント - 料金: Projectでは1,000基本URLあたり$1.50($30)、Growthでは$1.00($500)。advancedモードは倍額 - KYC: 記載なし - 暗号資産で支払い: その裁量のみ(利用規約) - メリット: 毎月1,000クレジット無料(5,000基本URL) - デメリット: クレジットは毎月リセット - デメリット: robots.txtのポリシーは明記なし ### 8. ScrapingBee Markdown出力オプションを備えた汎用WebスクレイピングAPI。大量処理時の通常ページ価格が安い。 - 最適な用途: 大量の通常ページ - 料金: 月100万ページで通常ページ1,000あたり$0.099(Startup $99)。ブラウザページは5クレジット - KYC: 有料プランはカード払い - 暗号資産で支払い: いいえ - メリット: 大量処理時の通常ページ低価格 - メリット: Markdownおよびテキスト出力 - デメリット: クレジットの繰り越しなし - デメリット: robots.txtのポリシーは明記なし ### 9. ZenRows Markdown出力を標準搭載したWebスクレイピングAPI。USDCを受け付けるエージェント向けストアフロントも用意。 - 最適な用途: 小規模なエージェント処理を従量課金で - 料金: エージェント向けストアフロント経由で通常ページ1,000ページあたり$0.50、プランで100万ページなら$0.199、ブラウザページは5クレジット - KYC: メール検証 - 暗号資産で支払い: エージェント専用、USDC (x402) - メリット: Markdownは追加費用なし - メリット: 毎月5,000クレジット無料 - デメリット: アカウントでは暗号資産で支払い不可 - デメリット: プランのクレジットは更新時に失効 ### 10. Cloudflare Browser Run Cloudflareのブラウザサービス。/markdownと/crawlエンドポイントを備え、ブラウザ時間で課金。 - 最適な用途: すでにCloudflare Workersを使っているチーム - 料金: 含まれる10時間を超えた分はブラウザ1時間あたり$0.09、月額最低$5 - KYC: Cloudflareアカウント - 暗号資産で支払い: Cloudflareの請求にStripe経由でUSDC(請求ページの1つには記載なし) - メリット: /crawl respects robots.txt and always identifies itself as a bot - メリット: ページ単位ではなくブラウザ時間に対して支払う - デメリット: ページあたりのコストは各ページの処理時間によって変わる *開示:このページはWebReaderAPIが公開しています。競合の詳細は上記の日付時点で各社の公開ウェブサイトから取得したものであり、その後変更されている可能性があります。* ## WebリーダーAPIはどう選べばいいですか? まずページ、次に量から考えましょう。 1. **ページにブラウザが必要ですか?** ニュース、ブログ、ドキュメントは通常不要です。Webアプリや一部のショップは必要です。クレジット制のスクレイピングAPIはブラウザページを5〜10倍高く請求しますが、FirecrawlとOlostepはすべてのページを同じ価格にしています。 2. **月に何ページ、どれくらい安定した量ですか?** 大量の枠がある月額プランは安定した量に向き、失効しない前払いクレジットはエージェントや単発のクロールに向きます。 3. **Markdown以外の抽出が必要ですか?** 構造化JSON、ページアクション、スクリーンショットではFirecrawlや大手スクレイピングAPIが先行しています。 4. **サイト運営者にどう配慮しますか?** Firecrawl、Cloudflareの/crawl、WebReaderAPIはデフォルトでrobots.txtを尊重します。多くのAPIはユーザー任せか、明言していません。 5. **どう支払いますか?** ほとんどはカードのみです。Scrape.do、Decodo、Scrapelessはアカウントでの暗号資産払いを明記しています。Exa、OlostepなどはリクエストごとのUSDC払いに対応し、WebReaderAPIはKYC不要でBTC, USDT, USDC, ETH, SOL, LTCに対応しています。 ## APIに支払う代わりにセルフホストすべきですか? セルフホストはライセンス面では無料ですが、時間のコストがかかります。Crawl4AI(Apache-2.0)、Microsoft MarkItDown(MIT)、Trafilatura(Apache-2.0)、Mozilla Readability(Apache-2.0)で変換はまかなえますが、サーバー、ヘッドレスブラウザ、リトライ、robots.txtの処理は自分で運用することになります。FirecrawlのコアもAGPL-3.0ライセンスでセルフホストできます。 月に数千ページ程度なら、ホスト型APIのほうがクローラーの保守にかかる時間より安く済むのが普通です。[Crawl4AIかホスト型API](https://webreaderapi.com/ja/compare/crawl4ai-vs-api/)のページで、このトレードオフを説明しています。 ## WebReaderAPIの料金はいくらですか? 前払いクレジットで、通常ページ1ページにつき1クレジット、ブラウザページ1ページにつき2クレジット。クレジットは失効しません。価格は2026年10月22日時点の設定です。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## 最高のWebリーダーAPI:よくある質問 ### FirecrawlとJina Reader、どちらが優れていますか? Firecrawlはクロール、構造化抽出、ページあたりの予測しやすい価格を必要とするチームに向いており、Jina Readerはセットアップ不要の手軽な読み取りに向いており、トークン単位で課金されます。[Firecrawl vs Jina Reader](https://webreaderapi.com/ja/compare/firecrawl-vs-jina-reader/)のページで項目ごとに比較しています。 ### robots.txtを尊重するWebリーダーAPIはどれですか? Firecrawlはデフォルトで尊重し、上書きはEnterpriseのみです。Cloudflareの/crawlは尊重し、オプトアウトの記載はありません。WebReaderAPIはすべてのリクエストで尊重します。Jinaはオプトインのヘッダーで切り替え、多くのスクレイピングAPIはポリシーを明言していません。 ### 無料のURL to Markdown APIはありますか? いくつか無料枠があります。Firecrawlは月1,000クレジット、Tavilyは月1,000クレジット、Exaは月$10、ZenRowsは月5,000クレジット、Jinaは非商用利用で1,000万トークンです。WebReaderAPIに無料枠はありません。 ### このランキングは独立していますか? いいえ。WebReaderAPIが公開しており、同社が1位にランクされています。各選択肢は2026年10月22日に読んだ各社の公開ページをもとに、同じ基準で説明しており、各項目には優れている点も記載しています。 ## ソース 1. [Firecrawlの料金](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22) 2. [Jina APIの料金](https://jina.ai/api-dashboard/pricing/) — Jina AI (read 2026-10-22) 3. [Crawl4AI](https://crawl4ai.com/) — Crawl4AI (read 2026-10-22) 4. [Crawl4AIリポジトリ](https://github.com/unclecode/crawl4ai) — GitHub (read 2026-10-22) 5. [Olostepの料金](https://www.olostep.com/pricing) — Olostep (read 2026-10-22) 6. [Exaの料金](https://exa.ai/pricing) — Exa (read 2026-10-22) 7. [Tavily APIクレジット](https://docs.tavily.com/documentation/api-credits) — Tavily (read 2026-10-22) 8. [ScrapingBeeの料金](https://www.scrapingbee.com/pricing/) — ScrapingBee (read 2026-10-22) 9. [ZenRowsの料金](https://docs.zenrows.com/first-steps/pricing.md) — ZenRows (read 2026-10-22) 10. [Browser Runの料金](https://developers.cloudflare.com/browser-run/pricing/) — Cloudflare (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPIボット:User-Agent、robots.txt、ブロック方法 > WebReaderAPIボットの概要:正確なUser-Agent、robots.txtのトークン、ブロックまたは速度制限の方法、そしてこのボットが決して行わないこと。サイト管理者とAIツール向けに解説します。 - URL: https://webreaderapi.com/ja/bot/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) サーバーログに当社の名前が記録されていた場合、このページでは当社が何者か、なぜお客様のページを取得したのか、そして取得を止めていただく方法を説明します。ここに記載するルールはすべて、本サービスの設計に組み込まれた約束です。 **概要 — WebReaderAPIボットとは何か、どうブロックすればよいですか?** **WebReaderAPI** ボットは、当社のお客様がAPIにページの読み取りを依頼したときに公開ページを取得します。送信するUser-Agentは `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)` で、トークン `WebReaderAPI` またはすべてのロボット向けに書かれた robots.txt のルールに従います。サイト全体でブロックするには、robots.txt に `User-agent: WebReaderAPI` とそれに続く `Disallow: /` を追加してください。 ## ボットの概要 | 項目 | 値 | | --- | --- | | User-Agentヘッダー | `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)` | | robots.txtトークン | `WebReaderAPI` | | robots.txt | 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません | | AI利用に関する意思表示シグナル | サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません | | サイトが拒否した場合 | サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません | | お客様のページのコピー | 回答をお客様に送信した後は一切保持しません | | クロールジョブ | 1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います | | お問い合わせ | abuse@webreaderapi.com | ## WebReaderAPIが私のページを取得したのはなぜですか? APIのお客様がそれを依頼したからです。WebReaderAPI は独自のWebインデックスを構築せず、自発的に巡回することもありません。各取得は次の3種類のリクエストのいずれかに該当します: - **単一読み取り:** アプリケーションやAIエージェントがお客様のURLを `/read` に送信した場合です。通常は、ある人がお客様のページに答えがある質問をしたことがきっかけです。 - **バッチジョブ:** お客様が最大100件のURLリストを送信し、その中にお客様のページが含まれていた場合です。 - **クロールジョブ:** お客様が1つのアドレスから開始し、そのドメイン内に留まってサイト全体を読み取るよう依頼した場合です。クロールはsitemapとrobots.txtに従います。 お客様にはページの本文がMarkdownとして届きます。その後、当社はそのコピーを一切保持しません。 ## サイト全体でボットをブロックするにはどうすればよいですか? robots.txtファイルに当社のトークン用のグループを追加してください。ボットはページを取得する前に `/robots.txt` を読み、最大24時間キャッシュするため、変更は遅くとも1日以内に反映されます。 *robots.txt:WebReaderAPIにすべてのページを拒否する例* ```text User-agent: WebReaderAPI Disallow: / ``` ## サイトの一部だけをブロックしたり、ボットの速度を落としたりできますか? はい。除外したいフォルダを `Disallow` の下に列挙し、クロールジョブには秒単位で `Crawl-delay` を設定してください。すべてのロボット向け(`User-agent: *`)に書かれたルールも、当社のトークン用グループがない場合には適用されます。グループがある場合は、RFC 9309に記載されているとおり、そのグループが優先されます。 *robots.txt:2つのフォルダを除外し、クロールリクエストの間隔を空ける例* ```text User-agent: WebReaderAPI Disallow: /account/ Disallow: /drafts/ Crawl-delay: 5 ``` ## ボットはAI利用に関する意思表示シグナルに従いますか? はい、サイトがrobots.txtで表明したものには従います。ファイルに `Content-Signal: ai-input=no` が宣言されている場合、当社はそれを「お客様のページをAIの回答の入力として使用することへの拒否」とみなし、お客様向けにそのページを読み取りません。その場合、APIはエラー `blocked_by_site_policy` をお客様に返し、料金は発生しません。 *robots.txt:検索エンジンは許可し、AI入力は拒否する例* ```text User-agent: * Content-Signal: search=yes, ai-input=no Allow: / ``` ## サイトが拒否した場合、ボットはどうしますか? 停止し、お客様の回答を報告します。403や429のステータス、チャレンジページ、ログインフォーム、ペイウォールはいずれもリクエストを終了させます。お客様にはお客様のステータスコード付きでエラー `target_refused` が返り、料金は発生しません。 ボットはチャレンジを解決せず、ログインせず、ブラウザに見せかけるためにUser-Agentを変更せず、偽装して再試行することもありません。当社にページを読み取らせたい場合は、robots.txtでトークンを許可し、リクエストを通してください。不要な場合は、そちらでの対応は特に必要ありません。 ## WebReaderAPIがまだ約束していないことは何ですか? 現時点ではIPアドレスのリストを公開していないため、ボットの識別はIPではなくUser-Agentとrobots.txtの挙動で行ってください。`country` オプションで読み取るページは、選択した国のアドレスから送信されますが、User-Agentは同じままです。アドレス範囲が確定したら、変更日とともにこのページに追記します。 ## ボットに関する問題を報告するにはどうすればよいですか? 日時、お客様のドメイン、取得されたURL、当社のUser-Agentが記録されたアクセスログの1行を添えて abuse@webreaderapi.com までご連絡ください。担当者が各報告を読み、当社のログと照合して確認します。お客様が当社の[Acceptable Use Policy](https://webreaderapi.com/ja/acceptable-use/)に違反してAPIを使用している場合、そのアカウントは停止されます。 リクエストが本当に当社からのものか確認するには、User-Agentとrobots.txtの挙動をこのページと比較してください。当社の名前を使用しながらお客様のrobots.txtルールを無視するクライアントは、当社のボットではありません。 ## サイト管理者からの質問 ### WebReaderAPIボットは検索エンジンのクローラーですか? いいえ。Webをインデックス化したり、ページをランク付けしたりすることはありません。APIのお客様がそのページを依頼したときにのみ、単一リクエスト、バッチ、または1サイトのクロールとしてページを読み取ります。 ### ボットをブロックするとGoogleやBingのランキングに影響しますか? いいえ。`WebReaderAPI` 向けに書かれたルールは当社のボットにのみ関係します。検索エンジンのクローラーは、robots.txt内のそれぞれ独自のグループに従います。 ### robots.txtの変更はどのくらいで反映されますか? 遅くとも24時間以内です。ボットは再読み取り前にrobots.txtを最大1日キャッシュします。 ### ボットはCrawl-delayを尊重しますか? はい、1つのサイトの多数のページを読み取るクロールジョブでは尊重します。単発の読み取りは1リクエストであり、間隔は空けません。 ### ページの内容を保存したり販売したりしますか? いいえ。ページのテキストはそれを要求したお客様に届けられ、当社が保持することはありません。ログにはホスト名、時刻、ステータス、使用クレジットを30日間保存します。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # 変更履歴 > WebReaderAPI 変更履歴: WebページリーダーAPI、その価格、クローラールール、ポリシーの日付付き変更。最初の項目: サイトとドキュメントの公開。 - URL: https://webreaderapi.com/ja/changelog/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) API、価格、クローラーの動作、ポリシーの変更をここに新しい順で記載します。サイトの他の場所で示した約束への変更もここに記載します。 **概要 — WebReaderAPIでは何が変わりましたか?** 2026年10月22日、**WebReaderAPI** はウェブサイト、ドキュメント、価格、ポリシーを公開しました。API自体はまだ公開されていません。そのローンチがこのページの次の項目になります。価格は10,000ページあたり$3.75から始まり、最大のパックでは$0.07/1Kページまで下がります。 ## 2026年10月22日: サイトとドキュメントの公開 - **ウェブサイト、価格、ポリシー**が公開されました: [価格](https://webreaderapi.com/ja/pricing/)、[利用規約](https://webreaderapi.com/ja/terms/)、[プライバシー](https://webreaderapi.com/ja/privacy/)、[適正利用](https://webreaderapi.com/ja/acceptable-use/)、[返金](https://webreaderapi.com/ja/refunds/)。 - `/read`、`/batch`、`/crawl`、`/credits` エンドポイントの**ドキュメント**を、Python、Node.js、curl 向けのコードとともに公開。 - [ボットページ](https://webreaderapi.com/ja/bot/)で**クローラールール**を公開: ユーザーエージェント `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`、robots.txt トークン `WebReaderAPI`、`ai-input=no` の尊重。 - **APIステータス:** ローンチ待ち。ここにローンチの項目が表示されるまで、APIキーは購入できません。 ## 日付付きの項目に値する変更とは何ですか? お客様またはサイト所有者が頼りにできるものすべてです: - 新しいエンドポイント、パラメータ、レスポンスフィールド。 - フィールドの名前変更または削除(これは `/api/v2/` などAPIの新しいバージョンでのみ行われます)。 - 価格、クレジットのルール、返金のルール。 - クローラーが自身を識別する方法、または robots.txt を扱う方法の変更。 - リクエストに影響したインシデントと、その時間帯。 ## 価格の変更はどのように扱われますか? 新しい価格は、ここで公開された後に購入されたパックに適用されます。すでに保有しているクレジットはその価値を保ちます。クレジットはドルではなくページ数で数えられ、プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 ## APIのバージョン1はどの程度安定していますか? バージョン1内では、フィールドやパラメータを追加することはありますが、名前変更や削除は行いません。[レスポンス形式](https://webreaderapi.com/ja/docs/response/)で文書化されたフィールドを読み取るコードは引き続き動作します。破壊的変更は新しいバージョンで行われ、公開前にここで告知されます。 ## 変更をフォローするにはどうすればよいですか? このページを確認するか、そのMarkdown版を読んでください。[llms.txt](https://webreaderapi.com/llms.txt) がサイトの他のページとともに記載しています。各項目は日付を保持しているため、前回の訪問以降に何が変わったかを確認できます。ご質問は support@webreaderapi.com まで。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Crawl4AIかホスト型APIか? 自前のWebページリーダーを動かすべき時 > WebページをMarkdownに変換するなら Crawl4AI かホスト型APIか? ライセンス、robots.txtのデフォルト、セルフホスティングのコスト、2026-10-22に確認したホスト型の価格。 - URL: https://webreaderapi.com/ja/compare/crawl4ai-vs-api/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) オープンソースのツールを使えば、自社のサーバー上でWebページを無料でMarkdownに変換できます。ホスト型APIはページ単位で課金し、サーバーを代わりに運用します。このページでは、ライセンスやrobots.txtのデフォルトからブラウザやメンテナンスまで、各選択肢にかかる本当のコストを説明します。 **概要 — Crawl4AIをセルフホスティングすべきか、ホスト型のWebページリーダーAPIを使うべきか?** 安定した量があり、ブラウザとサーバーを運用する人員がいる場合は Crawl4AI(Apache-2.0、帰属表示の要件あり)をセルフホスティングしてください。ただし、robots.txtのチェックはデフォルトで無効である点に注意してください。量が不安定な場合や運用作業を避けたい場合はホスト型APIを使ってください。Crawl4AI Cloudは10,000クレジットで$10から、**WebReaderAPI** は10,000ページで$3.75から、KYC不要で暗号資産で支払い(2026年10月22日)。 ## WebページをMarkdownに変換するオープンソースツールはどれですか? 2026年10月時点の主な選択肢を、それぞれのリポジトリとドキュメントが示すライセンスとデフォルトとともに示します。 | ツール | ライセンス | JavaScriptをレンダリング | デフォルトでrobots.txt | MCPサーバー | | --- | --- | --- | --- | --- | | Crawl4AI | Apache-2.0、加えてREADMEでの帰属表示要件 | はい(Playwright) | 無効: `check_robots_txt` のデフォルトは False | はい、自社のサーバー上で | | Firecrawl(セルフホスト) | AGPL-3.0のコア。SDKと一部のUIパーツはMIT | あり(Playwrightサービス) | オン | あり(firecrawl-mcp-server、MIT) | | Microsoft MarkItDown | MIT | いいえ | ドキュメントに記載なし | あり(markitdown-mcp) | | Trafilatura | Apache-2.0(v1.8.0より前はGPLv3+) | いいえ | スパイダーはRobots Exclusion Standardに従います | 記載なし | | Mozilla Readability | Apache-2.0 | なし。DOMが必要で、取得は行いません | 該当なし | 見つかりません | | Jina Reader(オープンソース版) | Apache-2.0 | あり(Puppeteer) | 記載なし | リポジトリにはありません | *価格確認日:2026年10月22日.* 以下に挙げるGitHubリポジトリとドキュメントを、2026-10-22に読んだ内容です。 ## Webリーダーのセルフホスティングには実際いくらかかるのか? ソフトウェアは無料ですが、運用は無料ではありません。ホスティングの価格をゼロと比較する前に、次の点を数えてください: - **サーバーとブラウザ。** 静的ページならCPUはほとんど要りませんが、JavaScriptページはリクエストごとにヘッドレスブラウザが必要で、それに見合うメモリも要ります。ピーク時には、それ以外の時間は遊んでいる余剰キャパシティが必要です。 - **メンテナンス。** ブラウザのバージョン、本文抽出のルール、依存関係は変わります。Crawl4AIは2026年10月14日にv0.9.5を、MarkItDownは2026年10月21日に0.1.9をリリースしました。各アップデートをテストしてデプロイする人が必要です。 - **ネットワーク。** 外向きの帯域幅、DNS、タイムアウト、リトライは自分で調整するものです。サイトがあなたのサーバーのアドレスからのトラフィックを拒否することもあり、その場合の正しい対応は拒否を尊重することです。 - **ポリシー。** Crawl4AIは、あなたがオンにしない限り`check_robots_txt`をオフのままにし、User-Agentを設定またはランダム化できます。独自のrobots.txtと識別ルールを決めて徹底するのも仕事のうちです。 - **セキュリティ。** MarkItDownのREADMEは、現在のプロセスの権限でI/Oを行い、信頼できない環境では入力をサニタイズすべきだと警告しています。任意のURLを取得するサービスは、プライベートアドレスやローカルアドレスも拒否しなければなりません。 ## ホスト型リーダーはそれに比べて何を請求するのか? ホスト型APIは、そうしたコストを1ページあたりの価格に変えます。2026年10月22日時点の2つの例です: | | Crawl4AI Cloud | WebReaderAPI(当社) | |---|---|---| | 入門 | Starter 月額$10、10,000クレジット | 10,000ページで$3.75 | | 静的ページ | 0.5クレジット | 1クレジット | | ブラウザを使うページ | 1クレジット(「real browser」) | 2クレジット | | 上位プラン | Builder $99で125,000クレジット、Scale $499で750,000クレジット | 1,000,000ページで$74.25、5,000,000ページで$350 | | 未使用クレジット | 月次クレジットは繰り越されず、追加クレジットは失効しない | 失効しない | | 支払い | Stripe経由のカード | BTC, USDT, USDC, ETH, SOL, LTC | | robots.txt | 顧客は各サイトのrobots指示を守る必要がある(利用規約) | サービスが毎回の読み取り時に確認 | Crawl4AI CloudはCrawl4AIのメンテナーが運営しており、価格は変更される可能性のある「ソフトローンチ」と表示しています。クレジットは$0.001相当なので、Starterでは静的ページ1,000ページあたり$0.50かかります。 ## セルフホスティングはいつ選ぶべきか? セルフホスティングは、次の3つが当てはまるときに元が取れます。利用量が多く安定している、すでにサーバーとブラウザを運用している、そしてAPIでは得られない制御が必要な場合です。 - **カスタム抽出。** Crawl4AIのCSS、XPath、LLMスキーマ、またはReadabilityやTrafilaturaの上に載せる独自ルール。 - **データの所在。** ページがあなたのインフラから出ることはありません。 - **Webページ以外の入力。** MarkItDownはWord、Excel、PowerPoint、EPubなどを変換できますが、WebリーダーAPIにはできません。 - **ライセンスの適合。** Apache-2.0とMITのツールはクローズドな製品に使えます。FirecrawlのAGPL-3.0のコアは、ネットワークサービスとして提供する場合に変更を共有することを求めます。 ## ホスト型APIがより良い選択になるのはどんなときか? ワークロードが不均衡、チームが小規模、またはリーダーが製品そのものではなくエージェント内のツールである場合は、サーバーを運用するよりもページを買うほうが適しています。 - **急増する、または季節性のある利用量。** 年に2回のクロールではブラウザ群を正当化できません。WebReaderAPIなら、プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 - **エージェント。** ホスト型エンドポイントは数分でMCP、LangChain、OpenAIのツールに組み込めます。[当社のMCPサーバー](https://webreaderapi.com/ja/docs/mcp/)をご覧ください。 - **自分で作らなくてよいポリシー。** 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。 - **カード不要の支払い。** WebReaderAPIはKYC不要でBTC, USDT, USDC, ETH, SOL, LTCを受け付けます。 ## 両方を組み合わせることはできるか? はい、多くのチームがそうしています。すでに手元にあるPDFやOffice文書などはMarkItDownなどのオープンソースのコンバーターで処理し、ライブのWebページ、とくに自前のブラウザが必要になるJavaScriptページにはホスト型リーダーを呼び出します。 出力形式は両側で同じにしてください。ソースURLとタイトル付きのMarkdownにすれば、チャンキングやインデックスのコードは文書の出どころを気にしません。当社の[RAGガイド](https://webreaderapi.com/ja/use-cases/rag/)では、その形式を実際に示しています。 ## WebReaderAPIでホスト型リーダーを使うといくらかかるのか? 2026年10月22日時点で、暗号資産で支払うページ単位のクレジット: 静的ページは1クレジット、ブラウザを使う場合は2クレジット、失敗または拒否されたページは無料。クレジットは失効しません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## Webリーダーのセルフホスティング: よくある質問 ### Crawl4AIは商用利用が無料か? READMEにはApache-2.0の下でライセンスされ、商用利用が可能だと書かれ、さらにユーザーはバッジかテキスト行のいずれかでクレジット表記を含める必要があると付け加えています。リリース前にライセンスとREADMEをご自身でお読みください。 ### Crawl4AIはrobots.txtを尊重するか? 設定した場合のみです。`check_robots_txt`パラメータのデフォルトはFalseです。Trueに設定すると、クロール前にrobots.txtのルールを確認してキャッシュします。User-Agentも設定またはランダム化できるため、どう振る舞うかはあなた自身のポリシーが決めます。 ### Crawl4AIの代わりにFirecrawlをセルフホストできるか? はい。FirecrawlのコアはAGPL-3.0でオープンソース化されており、デフォルトでrobots.txtを尊重します。AGPLは、ソフトウェアをネットワークサービスとして提供する場合に変更を公開することを求めます。これは商用製品にとって重要です。 ### PDFやOfficeファイルを変換するツールはどれですか? MITライセンスのMicrosoft MarkItDownは、PDF、Word、PowerPoint、Excel、HTML、EPubなどをMarkdownに変換します。JavaScriptで描画されるページには対応していません。WebReaderAPIはURLからPDFを読み取れ、最大100ページまで対応します。 ### Crawl4AI Cloudの料金はいくらですか? 2026年10月22日時点:Starterは月額$10で10,000クレジット、Builderは$99で125,000クレジット、Scaleは$499で750,000クレジットです。静的ページは0.5クレジット、ブラウザページは1クレジットです。サイトでは、これらの価格は変更される可能性のあるソフトローンチとされています。 ## ソース 1. [unclecode/crawl4aiリポジトリ](https://github.com/unclecode/crawl4ai) — GitHub (read 2026-10-22) 2. [Crawl4AIのパラメータ](https://docs.crawl4ai.com/api/parameters/) — Crawl4AI docs (read 2026-10-22) 3. [Crawl4AIのセルフホスティング](https://docs.crawl4ai.com/core/self-hosting/) — Crawl4AI docs (read 2026-10-22) 4. [PyPIのcrawl4ai](https://pypi.org/project/crawl4ai/) — PyPI (read 2026-10-22) 5. [Crawl4AI Cloud](https://crawl4ai.com/) — Crawl4AI (read 2026-10-22) 6. [microsoft/markitdownリポジトリ](https://github.com/microsoft/markitdown) — GitHub (read 2026-10-22) 7. [PyPIのmarkitdown](https://pypi.org/project/markitdown/) — PyPI (read 2026-10-22) 8. [adbar/trafilaturaリポジトリ](https://github.com/adbar/trafilatura) — GitHub (read 2026-10-22) 9. [mozilla/readabilityリポジトリ](https://github.com/mozilla/readability) — GitHub (read 2026-10-22) 10. [firecrawl/firecrawlリポジトリ](https://github.com/firecrawl/firecrawl) — GitHub (read 2026-10-22) 11. [jina-ai/readerリポジトリ](https://github.com/jina-ai/reader) — GitHub (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Firecrawl vs Jina Reader(2026):あなたのプロジェクトに合うWebリーダーはどれ? > 2026年のFirecrawl vs Jina Reader:ページ単位のクレジット vs トークン課金、無料枠、クロール、JSON抽出、robots.txt、支払い。2026-10-22に確認。 - URL: https://webreaderapi.com/ja/compare/firecrawl-vs-jina-reader/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) FirecrawlとJina Readerは、Webページをモデル用にMarkdownへ変換する方法を開発者が尋ねるときに真っ先に挙がる2つの名前です。課金、クロール、robots.txtの扱いが異なります。このページでは同じ事実に基づいて両者を比較し、当社のサービスは別のラベル付き列で示します。 **概要 — FirecrawlとJina Reader、どちらを使うべき?** 本格的なパイプラインにはFirecrawl:レンダリング込みで1ページ1クレジット、サイトのクロールとマップ、スキーマに沿ったJSON抽出に対応し、月額$19から$749のプランがあります(2026年10月22日)。素早い読み取りにはJina Reader:URLの前にr.jina.aiを付け、出力トークン10億あたり$50、または毎分20リクエストまでなら無料です。このページを公開している**WebReaderAPI**は、KYC不要・暗号資産で支払いのページ単位クレジットを販売しています。 ## Firecrawl vs Jina Reader、参考としてWebReaderAPIも掲載 各行は各プロバイダー自身のページから2026年10月22日に読み取ったものです。3列目は当社のサービスで、両社の競合が公開しています。 | | Firecrawl | Jina Reader | WebReaderAPI(当社) | | --- | --- | --- | --- | | 課金単位 | クレジット:1ページ1、レンダリング込み | 出力トークン | クレジット:1ページ1、ブラウザ使用時は2 | | 開始価格 | Hobby:月額$19で5,000クレジット | 10億トークンあたり$50 | 10,000ページあたり$3.75 | | より大きなボリューム | Standardは$99で100K、Scaleは月額$749で1M | 110億トークンあたり$500 | 1,000,000ページあたり$74.25 | | 無料利用 | 月1,000クレジット、カード不要;キー不要のMCP、IPごとに1日あたり上限あり | キー不要で毎分20リクエスト;新しいキーごとに1,000万トークン、非商用 | なし | | 未使用クレジット | プランのクレジットは毎月リセット | 有効期限は読み取れたテキストに記載なし | 無期限 | | クロールとマップ | クロール(デフォルト上限10,000ページ)とマップ | クロール用endpointの記載なし | 最大10,000ページのクロール;マップなし | | 構造化抽出 | JSON(スキーマ付き)、1ページあたり+4クレジット | JSONスキーマまたは指示ヘッダー | 提供なし | | robots.txt | デフォルトで尊重、オフにできるのはEnterpriseのみ | オプトインの`X-Robots-Txt`ヘッダー | 常に尊重 | | 支払い | カード、デビットカード、PayPal(Stripe) | カード、Google Pay、PayPal(Stripe) | BTC, USDT, USDC, ETH, SOL, LTC | | オープンソース | コアはAGPL-3.0 | ReaderブランチはApache-2.0 | いいえ | | 会社情報 | Firecrawl、2026年9月22日にシリーズBで$75M調達 | Jina AI、2025年10月からElasticの一部 | SerpGoat LLC | *価格確認日:2026年10月22日.* 出典はページ下部。 ## 1ページあたりのコストが安いのはどちらですか? ページの長さと利用量によります。両者は異なる単位で課金しているためです。Firecrawlはページ単位で課金します。Standardは1,000ページあたり$0.99、Scaleは月次請求で$0.749、レンダリング込みです。Jinaは出力トークン単位で課金し、1ページあたりの平均は公表していません。 **1ページあたり5,000トークンと仮定した概算**では、Jinaは$50パッケージで1,000ページあたり約$0.25、$500パッケージで$0.225です。この仮定では、どの利用量でもJinaの方がFirecrawlより1ページあたりのコストが低くなります。5,000トークンをはるかに超える長いページ(長いドキュメントページなど)では差が縮まるか逆転し、短いページでは差が広がります。FirecrawlのJSON抽出は1ページあたり4クレジットが追加されるため、抽出作業では比較が変わります。 ## サイト全体のクロールにはどちらが適していますか? Firecrawlです。crawlエンドポイントはデフォルトでsitemapをたどり、ページ上限(デフォルト10,000)と探索の深さを受け取り、クレジットが上限をカバーできない場合は402を返します。別のmapエンドポイントはサイトのURLを一覧化し、1回の呼び出しにつき1クレジットです。 Jina Readerは単一URLのReaderと検索エンドポイントであり、そのページにはクロール機能の記載がありません。Jinaでサイト全体を読むには、sitemapなどからURLを自分で集め、1ページごとにReaderを呼び出します。 ## robots.txtとサイト所有者への対応はどうですか? Firecrawlはデフォルトでrobots.txtを尊重し、これをオフにできるのはEnterprise顧客のみです。サイト所有者は`FirecrawlAgent`トークンで許可または拒否できます。ただし同社のドキュメントでは、このトークンがフェッチ自体のUser-Agentヘッダーではない可能性があると警告しています。 Jinaはリクエストに`X-Robots-Txt`ヘッダーが付いている場合にrobots.txtを確認し、どのbotとして確認するかを指定します。また呼び出し元がブラウザのUser-Agentを上書きできます。どちらのデフォルトも同社のページには記載されていません。どちらの方式も選択の多くを顧客に委ねていますが、当社はそうではありません。次のセクションで説明します。 ## AIエージェントにはどちらが適していますか? どちらも異なる形でエージェントに適しています。Firecrawlはホスト型MCPサーバー、IPごとの1日上限付きのキー不要アクセス、LangChain、LlamaIndex、CrewAI、n8nなどの多数のインテグレーションを提供しています。OpenClawはweb_fetchプロバイダーとしてFirecrawlを同梱しています。 Jinaは公式のリモートMCPサーバーを提供しており、その`read_url`ツールは1回の呼び出しで最大5つのURLを読み取ります。n8nのクレデンシャルや、GETリクエストを送れるあらゆるツールで使えるURLプレフィックスもあります。タスクごとに数ページを読むエージェントにはJinaのプレフィックスが最も簡単な始め方で、クロール・マップ・抽出を行うエージェントにはFirecrawlの方が多くの機能をカバーします。 ## WebReaderAPIは両者のどこに位置しますか? WebReaderAPIは範囲としてはJinaに近く(Reader)、課金としてはFirecrawlに近く(ページ単位、サイト全体向けのcrawlエンドポイント付き)です。他と異なるのは機能一覧ではなく、支払い方法とポリシーです。 - **KYC不要の暗号資産。**BTC, USDT, USDC, ETH, SOL, LTCで$25からチャージできます。 - **失効しないクレジット**、$3.75からのパックで販売。 - **サイトに対する固定ポリシー。**当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 Firecrawlよりできることは少なくなります。JSON抽出、ブラウザアクション、map、無料枠はありません。各乗り換えの詳細は[Firecrawl代替](https://webreaderapi.com/ja/alternatives/firecrawl/)と[Jina Reader代替](https://webreaderapi.com/ja/alternatives/jina-reader/)のページをご覧ください。 ## 自分の用途にはどちらを選ぶべきですか? - **プロトタイプや趣味のエージェント:**キー不要のJina Reader、またはFirecrawlの無料枠。 - **ドキュメントサイトに対するRAG:**クロールとマップにはFirecrawl。失効しないページ単位のクレジットと暗号資産での支払いを求めるならWebReaderAPI。 - **固定フィールドへの抽出:**FirecrawlのJSONフォーマット。 - **短いニュースやブログページを大量に:**Jinaのトークン課金の方がコストが低い傾向があります。 - **サイト所有者の選択をプロバイダーが厳格に尊重:**WebReaderAPI。 - **カードも本人確認書類もなし:**WebReaderAPI。FirecrawlもJinaも、当社が確認したページには暗号資産での支払いオプションを記載していません。 ## 3つ目の選択肢のコストはいくらですか? 2026年10月22日時点、暗号資産で支払うページ単位のパックです。ブラウザが必要なページは2クレジットを使用し、失敗したページとrobots.txtで拒否されたページは無料です。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## Firecrawl vs Jina Reader:よくある質問 ### Jina Readerは無料で、Firecrawlは有料ですか? どちらにも無料での利用があります。Jina Readerはキーなしで毎分20リクエストまで利用でき、新しいキーごとに非商用利用で1,000万トークンが付与されます。Firecrawlはカード不要で月1,000クレジットを提供し、さらにIPアドレスごとに1日の上限付きでキー不要のMCPアクセスも利用できます。 ### Markdownの品質が良いのはどちらですか? 当社は品質のベンチマークを公開しておらず、どちらのベンダーの料金ページも相手に対する優位性を主張していません。ご自身でサンプルを試してください。実際のURLを50件、各サービスに通し、出力の見出し、表、残存するメニューを比較してください。 ### どちらもセルフホストできますか? はい。FirecrawlのコアはAGPL-3.0のオープンソースです。JinaはReaderのオープンソースブランチをApache-2.0で公開しており、ホスト型のストレージ層は含みません。 ### FirecrawlやJinaは暗号資産を受け付けていますか? 2026年10月22日に当社が確認した料金・請求ページでは受け付けていません。どちらもStripeを挙げ、カードとPayPal、JinaはGoogle Payも記載しています。WebReaderAPIはBTC, USDT, USDC, ETH, SOL, LTCを受け付けます。 ### この比較は中立ですか? この比較は両社の競合であるWebReaderAPIが執筆しており、冒頭にその旨を明記しています。FirecrawlとJinaに関するすべての事実は、以下に確認日とともに掲載した各社のページに基づいています。 ## ソース 1. [Firecrawlの料金](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22) 2. [課金](https://docs.firecrawl.dev/billing.md) — Firecrawl docs (read 2026-10-22) 3. [クロール](https://docs.firecrawl.dev/features/crawl.md) — Firecrawl docs (read 2026-10-22) 4. [高度なスクレイピングガイド](https://docs.firecrawl.dev/advanced-scraping-guide.md) — Firecrawl docs (read 2026-10-22) 5. [MCPサーバー](https://docs.firecrawl.dev/mcp-server.md) — Firecrawl docs (read 2026-10-22) 6. [Alexandriaの発表とシリーズB調達のお知らせ](https://www.firecrawl.dev/blog/introducing-alexandria-series-b) — Firecrawl (read 2026-10-22) 7. [Reader](https://jina.ai/reader/) — Jina AI (read 2026-10-22) 8. [APIダッシュボード: 料金](https://jina.ai/api-dashboard/pricing/) — Jina AI (read 2026-10-22) 9. [jina-ai/MCPリポジトリ](https://github.com/jina-ai/MCP) — GitHub (read 2026-10-22) 10. [ElasticがJina AIの買収を完了](https://ir.elastic.co/News--Events/news/news-details/2025/Elastic-Completes-Acquisition-of-Jina-AI-a-Leader-in-Frontier-Models-for-Multimodal-and-Multilingual-Search/default.aspx) — Elastic (2025-10-09, read 2026-10-22) 11. [Webツール](https://docs.openclaw.ai/tools/web) — OpenClaw docs (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebリーダーAPIの料金比較:1万・10万・100万ページのコスト > WebリーダーおよびURLからMarkdownへの変換APIの料金を2026-10-22に比較:13のAPIについて、通常ページとJSページの10K、100K、1Mページあたりの月額料金。 - URL: https://webreaderapi.com/ja/compare/web-reader-api-pricing/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) クレジット価格ではプランサイズ、ブラウザ倍率、有効期限が見えません。このページでは公開定価を、3つのボリューム、通常ページとブラウザが必要なページについて月額請求額に換算し、さらに料金ページに記載されていないコストを一覧化します。 **概要 — 2026年、WebリーダーAPIの価格はどう比較できますか?** 2026-10-22時点で、月10万ページのブラウザレンダリングはFirecrawl、Olostep、Crawl4AI Cloudを含む8つのAPIで$99でした。通常ページは$29(Scrape.do)からです。100万ページでは、通常ページは約$99から、ブラウザページは$399(Olostep)からです。**WebReaderAPI**は10万通常ページで$21.75、すべてブラウザが必要な場合は$43.50を請求し、KYC不要で暗号資産で支払えます。 ## 各APIで1か月分のページはいくらですか? 1万、10万、100万ページの月額請求額を、最も安い公開プラン、超過料金または従量課金レートで算出。ブラウザページの価格が異なる場合は両方の数値を表示(通常 / ブラウザ)。 | API | 10,000ページ | 100,000ページ | 1,000,000ページ | | --- | --- | --- | --- | | WebReaderAPI、通常ページ | $3.75 | $21.75 | $74.25 | | WebReaderAPI、ブラウザページ(2クレジット) | $7.50 | $43.50 | $148.50 | | Firecrawl | $44.00 | $99.00 | $749.00 | | Crawl4AI Cloud、通常 / ブラウザ | $10.00 | $50.00 / $99.00 | $395.00 / $667.00 | | Olostep | $29.00 | $99.00 | $399.00 | | Tavily Extract、通常 / ブラウザ | $16.00 / $30.00 | $140.00 / $236.00 | $1,300 / $2,900 | | Exa contents | $10.00 | $100.00 | $1,000 | | Linkup fetch、通常 / ブラウザ | $10.00 / $50.00 | $100.00 / $500.00 | $1,000 / $5,000 | | ScrapingBee、通常 / ブラウザ | $19.00 | $49.00 / $99.00 | $99.00 / $599.00 | | Scrape.do、通常 / ブラウザ | $29.00 | $29.00 / $99.00 | $99.00 / $699.00 | | ZenRows、通常 / ブラウザ | $5.00 / $25.00 | $39.00 / $99.00 | $199.00 / $549.00 | | Scrapfly、通常 / ブラウザ | $30.00 | $30.00 / $100.00 | $100.00 / $560.00 | | Bright Data Web Unlocker | $15.00 | $150.00 | $1,300 | | Diffbot | $299.00 | $299.00 | $899.00 | *価格確認日:2026年10月22日.* USD建て定価、2026-10-22時点。"—" = 非公開、またはそのボリュームでセルフサーブ不可。ExaとParallelはブラウザオプションを記載していません。詳細な方法と21のAPI:[URL to Markdown API price index 2026](https://webreaderapi.com/ja/data/url-to-markdown-price-index-2026/)。 ## 料金ページに記載されていないコストは? 1. **ブラウザ倍率。** JavaScriptページはScrapingBee、ZenRows、Scrape.doで5クレジット、Scrapflyで6、ScraperAPIで10かかります。FirecrawlとOlostepはすべてのページを一律価格でレンダリングします。 2. **プランの段階。** 2万ページ用に購入した$99プランも$99のままです。 3. **有効期限。** ほとんどの月額プランは未使用クレジットをリセットするため、利用の少ない月は損失になります。 4. **抽出アドオン。** 構造化JSON抽出はいくつかのAPIで追加料金がかかります。Firecrawlでは1ページあたりさらに4クレジットです。 5. **プレミアム接続。** レジデンシャルまたは「プレミアム」プロキシは、ほとんどのスクレイピングAPIでクレジットコストを倍増させます。WebReaderAPIは国を選択した場合にのみ10クレジットを追加します。 6. **失敗ページ。** エラーが課金されるか確認してください。WebReaderAPIは失敗ページやrobots.txtで拒否されたページには一切課金しません。 ## WebReaderAPIの立ち位置は? このページの価格(2026-10-22設定)では、WebReaderAPIは通常ページ1ページあたり、1万ページで$0.38/1Kページ、10万ページで$0.22/1Kページ、100万ページで$0.07/1Kページを請求し、ブラウザページは2クレジットを使用します。クレジットは前払いで、有効期限はなく、KYC不要でBTC, USDT, USDC, ETH, SOL, LTCで支払えます。 すべてのボリュームやすべてのページタイプで最安であるとは主張しません。当社のクローラーはrobots.txtを尊重し、拒否を回避しようとはしないため、他のツールが取得する一部のページは拒否として返り、無料になります。 ## WebReaderAPIの料金はいくらですか? 前払いパック。通常ページは1クレジット、ブラウザ使用時は2クレジット。クレジットに有効期限なし。価格は2026-10-22設定。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## WebリーダーAPIの料金:よくある質問 ### 2026年、最安のURL to Markdown APIは? 月100万ページの通常ページでは、ScrapingBee(1,000ページあたり$0.099)とScrape.do(1,000ページあたり$0.099)が2026-10-22時点で最安価格を記載していました。そのボリュームのブラウザページでは、Olostepが$0.399を記載していました。答えはボリュームによって変わるため、ご自身の利用量で比較してください。 ### Firecrawlは高いですか? 小さいボリュームでははい。Hobbyの5,000ページで$19は1,000ページあたり$3.80です。10万ページ($99)と100万ページ($749)では、Firecrawlはすべてのページをレンダリングするため、ブラウザレンダリングページの市場価格に近い水準です。 ### 失敗したページにも支払いますか? プロバイダー次第です。請求ページを確認してください。Crawlbaseは、失敗したリクエストとリトライは無料と明記しています。WebReaderAPIは失敗ページやrobots.txtで拒否されたページには課金しません。 ### WebリーダーAPIを暗号資産で支払えますか? はい、いくつかで可能です。Scrape.do、Decodo Web Data API、Scrapelessはアカウントでの暗号資産支払いを明記しており、Exa contents、Parallel Extract、Linkup fetch、Olostepなどはx402経由でリクエストごとのUSDCを受け付けます。WebReaderAPIはKYC不要でBTC, USDT, USDC, ETH, SOL, LTCを受け付けます。 ## ソース 1. [Firecrawl:料金](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22) 2. [Crawl4AI Cloud:料金](https://crawl4ai.com/) — Crawl4AI Cloud (read 2026-10-22) 3. [Olostep:料金](https://www.olostep.com/pricing) — Olostep (read 2026-10-22) 4. [Tavily Extract:料金](https://docs.tavily.com/documentation/api-credits) — Tavily Extract (read 2026-10-22) 5. [Exa contents:料金](https://exa.ai/pricing) — Exa contents (read 2026-10-22) 6. [Linkup fetch:料金](https://docs.linkup.so/pages/documentation/development/pricing) — Linkup fetch (read 2026-10-22) 7. [ScrapingBee: 料金](https://www.scrapingbee.com/pricing/) — ScrapingBee (read 2026-10-22) 8. [Scrape.do: 料金](https://scrape.do/pricing.md) — Scrape.do (read 2026-10-22) 9. [ZenRows: 料金](https://docs.zenrows.com/first-steps/pricing.md) — ZenRows (read 2026-10-22) 10. [Scrapfly: 料金](https://scrapfly.io/pricing) — Scrapfly (read 2026-10-22) 11. [Bright Data Web Unlocker: 料金](https://www.bright.cn/pricing/web-unlocker) — Bright Data Web Unlocker (read 2026-10-22) 12. [Diffbot: 料金](https://www.diffbot.com/pricing/) — Diffbot (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPIへのお問い合わせ > WebReaderAPIへのお問い合わせ: API・請求に関する質問はサポートメール、サイト運営者・不正利用の報告は不正利用報告用メール。迅速な回答を得るために記載すべき情報もご案内します。 - URL: https://webreaderapi.com/ja/contact/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) アドレスは2つ。お客様向けと、サイト運営者・不正利用の報告用です。どちらも担当者が読んで対応します。 **概要 — WebReaderAPIへの問い合わせ方法は?** API、アカウント、お支払いについてのサポートはsupport@webreaderapi.comへ、メールサポートは週7日、毎日12時間以内に返信し、クロールや連携に関するご相談にも対応します。サイト運営者や、**WebReaderAPI** クローラーの不正利用を報告したい方はabuse@webreaderapi.comへお書きください。当チームがメールやチャットでアカウント番号やAPIキーをお尋ねすることは決してありません。 ## 問い合わせを早く回答してもらうには? 事実を簡潔にまとめたメッセージが最も早く回答につながります: - 請求に関する質問では、注文履歴にある注文ID。 - APIの問題では、リクエストの時刻、endpoint、エラーコード。 - ページが期待通りに取得できなかった場合は、読み取ろうとしたURL。 APIキーやアカウント番号はメールで送らないでください。 ## ウェブサイトを運営しています。連絡するには? ドメイン、日時、そしてUser-Agent `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)` が記録されたサーバーログの1行を添えてabuse@webreaderapi.comへお書きください。こちらに連絡せずにクローラーを止めたい場合は、robots.txtに`WebReaderAPI` 向けのルールを追加してください。[botページ](https://webreaderapi.com/ja/bot/)にはそのまま使える例があります。不正利用の報告はすべて担当者が確認し、サービスを不正利用していると判明したアカウントは停止されます。 ## サポートは何を手伝えますか? APIの利用やアカウントに関するあらゆること: - ページが空で返る、途中で切れる、誤ったセクションが本文として抽出される。 - 意味の分からないエラーコード、または途中で停止するクロールジョブ。 - 承認後に残高へ反映されないチャージ。 - [返金ポリシー](https://webreaderapi.com/ja/refunds/)に基づく返金リクエスト。 - 本番利用のための同時実行数の上限引き上げ。 サポートができるのは、サイトにこちらのクローラーを受け入れさせることではありません。サイト側に拒否された場合、唯一の道はサイト運営者の許可です。 ## 支払いの問題を報告するには? コイン、ネットワーク、送金額、トランザクションIDを、クライアントエリアにある注文IDとあわせてお知らせください。これだけあればブロックチェーン上の送金を特定できます。秘密鍵、シードフレーズ、アカウント番号、APIキーは記載しないでください。当方が必要とすることは一切なく、それらを求める相手は当方ではありません。 ## チャットや電話窓口はありますか? いいえ。メールは双方にとって記録が残り、ログを手元に正確に回答できます。APIの稼働状況は[ステータスページ](https://webreaderapi.com/ja/status/)を、よくある質問は[FAQ](https://webreaderapi.com/ja/faq/)をご覧ください。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Crawl API: ウェブサイト全体をMarkdownファイルに変換 > ウェブサイト全体をRAG用のMarkdownに変換するCrawl API: 1ジョブあたり最大10,000ページ、sitemapとrobots.txtに従い、$0.07/1Kページから。暗号資産で支払い。 - URL: https://webreaderapi.com/ja/crawl-api/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 開始URLとページ上限を指定します。クローラーはサイトのsitemapと同一ドメイン内のリンクをたどり、各ページをMarkdownとして読み取り、ページごとに結果を返します。1ページにつき1クレジットです。 **概要 — ウェブサイト全体をクロールして全ページをMarkdownで取得するには?** Crawl APIを使います。開始URLと上限を送ると、サイトの各ページをMarkdownで返します。**WebReaderAPI** は1ジョブあたり最大10,000ページを1つのドメイン内でクロールし、sitemap、robots.txt、Crawl-delayに従い、読み取ったページ1ページにつき1クレジットを課金します。2026年10月時点で$0.07/1Kページからです。robots.txtで拒否されたページは無料です。KYC不要。暗号資産で支払い。 ## Crawl APIの概要 | 項目 | 値 | | --- | --- | | クロールを開始 | `url`、`limit`、`max_depth`、`include_paths`、`exclude_paths`を指定して`POST https://webreaderapi.com/api/v1/crawl` | | 結果を取得 | `GET https://webreaderapi.com/api/v1/jobs/{job_id}`、カーソルによるページネーション | | スコープ | 1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います | | 多数の個別URL | `POST https://webreaderapi.com/api/v1/batch`: バッチジョブあたり最大100 URL | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | サイト運営者の方へ | 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません | | 料金 | $14.25で50,000ページ、$50で500,000ページ | ## クロールジョブの仕組み クロールはバックグラウンドジョブです。数百ページの読み取りは、1回のHTTPリクエストで行うには時間がかかりすぎるためです。 1. **開始:** 開始URLと制限を指定して`POST https://webreaderapi.com/api/v1/crawl`を実行します。すぐに`job_id`が返ります。 2. **検出:** クローラーはサイトのrobots.txtとサイトマップを読み、同じドメイン内のリンクを幅優先で`max_depth`までたどります。 3. **読み取り:** 許可された各ページは`/read`と同じオプションで読み取られます。Markdown、本文抽出、必要に応じたレンダリングです。 4. **収集:** ジョブの実行中、または`done`になった後に`GET https://webreaderapi.com/api/v1/jobs/{job_id}`をポーリングし、カーソルで結果をページ送りします。 ジョブは`limit`で停止するため、指定した以上のページに対して支払うことはありません。 *Python: ドキュメントサイトをMarkdownファイルにクロールする* ```python import os import pathlib import re import time import requests API = "https://webreaderapi.com/api/v1" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} job = requests.post( API + "/crawl", headers=HEADERS, json={"url": "https://docs.example.com/", "limit": 500, "max_depth": 4, "include_paths": ["/guide/*"]}, timeout=60, ).json() out = pathlib.Path("docs_md") out.mkdir(exist_ok=True) cursor, delay = None, 5 while True: params = {"cursor": cursor} if cursor else {} page = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json() for item in page.get("results", []): if "markdown" in item: name = re.sub(r"[^a-z0-9]+", "-", item["url"].lower()).strip("-")[:120] (out / (name + ".md")).write_text(item["markdown"], encoding="utf-8") cursor = page.get("next_cursor") if page["status"] == "done" and not cursor: break if not cursor: time.sleep(delay) delay = min(delay * 2, 60) print("credits used:", page.get("credits_used")) ``` ## クローラーはどのページを訪問し、どのページをスキップしますか? 開始URLのドメイン内にとどまり、サイトがrobotsに除外を求めているものはスキップします。詳細は次のとおりです。 - **同一ドメインのみ。** 他のドメインへのリンクは結果に一覧表示されますが、読み取られません。 - **robots.txtを最初に確認。** `WebReaderAPI`に対して、またはすべてのロボットに対して不許可のページはスキップされ、課金されません。 - **Crawl-delayを尊重。** サイトが設定している場合、クローラーは2ページの間にその時間だけ待機するため、大規模なサイトでは時間がかかることがあります。 - **独自のフィルター。** `include_paths`と`exclude_paths`は`/blog/*`のような単純なパターンを受け付けます。タグページ、検索ページ、アーカイブを避けるために使用してください。 - **重複を除去。** トラッキングパラメータ付きなど、2つのURLで同じページに到達した場合、サイトがcanonical URLを宣言していれば1回だけ読み取られます。 ## クロールとバッチのどちらを使うべきですか? サイトはわかっているがページがわからない場合はクロールを使用し、URLのリストがすでにある場合はバッチを使用します。クロールはサイトマップとリンクからページを検出します。バッチは送信したURLを正確に読み取り、ジョブごとに最大100件、サイト数は問いません。 ナレッジベースを毎週更新する場合の一般的なパターンは、まず1回のクロールでインデックスを構築し、次にサイトマップで`lastmod`が変更されたページをバッチで読み取ることです。これにより、毎週のコストを実際に変更されたページのみに抑えられます。 ## サイトのクロールにはいくらかかりますか? 読み取ったページ1件につき1クレジット、ブラウザが必要だったページは2クレジットです。サーバー側でレンダリングされる1,500ページのドキュメントサイトは1,500クレジット、同じサイトをシングルページアプリとして構築した場合は最大3,000クレジットかかることがあります。 2026年10月時点の典型的なジョブ3例: 300ページの製品マニュアルは10,000ページパック($3.75)に収まります。2,000ページのドキュメントサイト10件は50,000ページ($14.25)に収まります。400,000ページのアーカイブは500,000ページ($50)に収まります。スキップされたページと失敗したページは無料です。 ## クロールにはどのパックが合いますか? ページ数に基づいてパックを選び、ブラウザが必要なページの分の余裕を加えてください。クレジットは失効しないため、残りは次のクロールに使えます。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | スケール | 500,000ページ | $50 | $0.10/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## Crawl API: よくある質問 ### 1回のクロールで何ページまで読み取れますか? ジョブごとに最大10,000ページ、開始URLのドメイン内に限ります。より大規模なサイトでは、`include_paths`を使って複数のジョブに分割してください。たとえばセクションごとに1つです。 ### クローラーはサイトマップを使用しますか? はい。robots.txtに記載された、または通常の場所にあるサイトマップを読み、その後読み取ったページ上のリンクをたどります。サイトマップにのみ記載されているページも、robots.txtが許可していれば読み取られます。 ### AIクローラーをブロックしているサイトをクロールできますか? WebReaderAPIではできません。robots.txtが当社のクローラーまたはすべてのロボットを不許可にしている場合、それらのページはスキップされ、課金されません。サイトが`Content-Signal: ai-input=no`を宣言している場合、当社はあなたの代わりにそれを読み取りません。そのような選択を回避しようとすることは決してありません。 ### クロールの実行中に結果を取得できますか? はい。`GET https://webreaderapi.com/api/v1/jobs/{job_id}`はこれまでに読み取ったページをカーソル付きで返します。ジョブが`done`になりカーソルがなくなるまで、ページ送りを続けてください。 ### クロールは制限より多くのページを読み取れますか? いいえ。クレジットはページごとにカウントされ、ジョブは設定した`limit`に達すると停止します。robots.txtのためにスキップされたページと、失敗したページはクレジットを消費しません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebページリーダーAPIを暗号資産で支払う > WebReaderAPIを暗号資産で支払う方法: BTC、USDT、USDC、ETH、SOLまたはLTC、最低入金$25、選ぶべきネットワーク、送金後の手順。 - URL: https://webreaderapi.com/ja/crypto-payments/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) WebReaderAPIの残高を暗号資産で入金し、ページクレジットに変換するまでの手順ガイドと、避けるべきミス。 **概要 — WebReaderAPIを暗号資産で支払うには?** **WebReaderAPI**の残高にBTC, USDT, USDC, ETH, SOL, LTCで最低$25を入金します。表示された正確な金額を、表示されたネットワークで送金し、「送金しました」をクリックしてください。入金は正確な金額で照合され、確認後に反映されます。その後、残高からページクレジットを購入できます。10,000ページで$3.75からです。KYC不要。 ## どのコインで支払えますか? 6種類のコイン、1つの残高。USDTはTRC-20またはERC-20、USDCはERC-20で利用できます。支払いページには、選択したコインのアドレスとネットワークが表示されます。 - Bitcoin (BTC) - Tether (USDT) — TRC-20 or ERC-20 - USD Coin (USDC) — ERC-20 - Ethereum (ETH) - Solana (SOL) - Litecoin (LTC) ## 暗号資産の入金はどのような流れですか? アカウントが空の状態からAPIキーが使える状態までの5ステップ。待つのはブロックチェーンの確認だけです。 1. **金額とコインを選択** — $25以上を入力し、BTC、USDT、USDC、ETH、SOLまたはLTCを選択します。支払いページがドル金額をそのコインに換算します。 2. **正確な金額を送金** — 表示されたアドレスと金額をコピーし、ページに記載されたネットワークで送金してください。1回の送金、正確な金額、端数なしです。 3. **「送金しました」をクリック** — ページに送金が進行中であることを伝えてください。トランザクションIDを求められたら、送金を照合しやすいように貼り付けてください。 4. **ネットワークに確認させましょう** — 入金は正確な金額で照合され、ネットワークが確認した時点で一度だけ残高に反映されます。Bitcoinは、Tron上のUSDTやSolana上のSOLよりも時間がかかります。 5. **クレジットパックを購入する** — 残高からどのパックでも支払えます。パックから開始した場合は、入金が反映された時点で購入が完了し、APIキーがダッシュボードに表示されます。 ## どのコインとネットワークを使えばよいですか? すでに保有しているコインを、支払いページに記載されたネットワークでお使いください。ステーブルコイン(USDTまたはUSDC)なら金額がドル建てで維持されるため、表示された価格がそのまま支払う価格になります。ネットワーク手数料と確認時間はチェーンによって異なります。上記の手順にある表に、各ネットワークの通常の確認時間を示しています。 USDTを複数のチェーンで保有している場合は、その金額に対して手数料が小さいほうを選んでください。手数料は送金者が負担し、入金額には含まれません。 ## 最低入金額があるのはなぜですか? 支払いは金額にかかわらず、確認と記帳のコストがかかるためです。最低額は$25で、その後は残高からどのパックでも購入できます。$3.75の10,000ページパックも含まれます。 使わなかった分は期限なしで残高に残ります。購入したパックの価格が最低額を下回る場合、未使用であれば超過分を30日以内にUSDTまたはUSDCで返金を求めることができます。 ## 支払いを送った後はどうなりますか? 支払いページで「支払いを送信しました」をクリックしてください。正確な金額で送金を照合し、ネットワークに必要な確認を待ってから残高に反映します。パックから開始した場合は、入金が反映された時点で残高から購入が完了し、APIキーがダッシュボードで利用可能になります。 タブを閉じてしまった場合は、クライアントエリアを開いてください。保留中および反映済みの入金は注文履歴に表示されます。 ## 金額を間違えた、または別のネットワークを使ってしまった場合は? 異なる金額は自動では照合できず、別のネットワークでの送金はアドレスに届かない場合があります。送金する前に、コイン、ネットワーク、正確な金額の3点を確認してください。 誤りがあった場合は、トランザクションIDと注文IDを添えてsupport@webreaderapi.comまでご連絡ください。アカウント番号やAPIキーは送らないでください。支払いページに表示されなかったネットワークで送金した資金は、回収できない場合があります。 ## 暗号資産での支払いは返金できますか? 返金はウォレットではなく残高に戻されるため、2回目のネットワーク手数料を避けられます。72時間以内に20%未満しか使用されなかったパック、または一度も機能しなかったパックは残高に戻されます。正確な条件と3つの例は[返金ポリシー](https://webreaderapi.com/ja/refunds/)に記載されています。 ## 残高が反映されたら何を購入できますか? どのパックでも購入できます。$3.75で10,000ページ、$14.25で50,000ページ、$21.75で100,000ページ、さらに大きなパックは[料金ページ](https://webreaderapi.com/ja/pricing/)にあります。クレジットに有効期限はありません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし 価格はUSD建て、2026-10-22時点の設定です。各パックは暗号資産の残高から支払われます。 ## 暗号資産での支払い:よくある質問 ### 支払いにカードや身分証明書は必要ですか? いいえ。WebReaderAPIは暗号資産のみを受け付け、身分証明書は求めません。アカウント番号でログイン。メールは任意。 ### 支払いを開始した時点で価格は固定されますか? 支払いページには、その支払いで選択したコインでの金額が表示されます。その正確な金額を送金してください。ステーブルコインならドル建て価格と等しいまま維持されます。 ### 入金せずにリクエストごとにクレジットを支払えますか? いいえ。支払いは前払いの残高を通じて行われ、各読み取りはそこからクレジットを使用します。残高とクレジットに有効期限はありません。 ### 支払いはどこで確認できますか? クライアントエリアの注文履歴で、各入金のステータス、コイン、ネットワーク、トランザクションIDを確認できます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # URL to Markdown API 価格指数 2026:21のAPIで1,000ページにかかるコスト > URL-to-MarkdownおよびWebリーダーAPIの価格指数 2026:21のAPI、3つのボリュームでの1,000ページあたりのコスト、静的ページとJavaScriptページ、暗号資産、KYC。2026-10-22時点で確認。 - URL: https://webreaderapi.com/ja/data/url-to-markdown-price-index-2026/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Webページをモデル向けにMarkdownやテキストに変換する21のAPIの公開定価を、3つの月間ボリュームでの1,000ページあたりのコストに正規化したもの。通常のページとブラウザでレンダリングされるページの両方について。本表に含まれるAPIの一つであるWebReaderAPIが公開。 **概要 — 2026年、URL-to-Markdown APIは1,000ページあたりいくらかかりますか?** 2026-10-22時点で定価を取得した21のAPIでは、月に100,000の通常ページを読み取るコストは1,000ページあたり中央値$0.99、ページにブラウザが必要な場合は$1.00です。月に100万ページでは中央値は$0.774と$0.899に下がります。本指数を公開している**WebReaderAPI**は、100,000での通常ページに対して$0.22/1Kページを課金します。 ## 6つの数字で見る指数 - **$2.00** 月10,000での通常ページ1,000あたりの中央値 (21のAPI) - **$0.99** 月100,000での通常ページ1,000あたりの中央値 (21のAPI) - **$0.774** 100万ページ/月時の通常ページ1,000ページあたりの中央値 (20 API) - **$1.00** 10万ページ/月時のブラウザレンダリングページ1,000ページあたりの中央値 (18 API) - **$0.899** 100万ページ/月時のブラウザレンダリングページ1,000ページあたりの中央値 (17 API) - **3 + 7** アカウントで暗号資産払いを明記しているAPI、およびリクエストごとのUSDC払い(x402)に対応するAPI ## このインデックスはどのように作成しましたか? 各プロバイダーの公開価格ページを2026-10-22に読み、そこに記載されている数値のみを採用しました。出典はすべて末尾に記載しています。「ページ」とは1つのURLを読み取り、Markdownまたはテキストとして返すことを指し、プロバイダーのデフォルトproxyを使用し、有料アドオンは含みません。 - **通常ページ:** JavaScriptレンダリングなし。**ブラウザページ:** まずヘッドレスブラウザでレンダリング。常にレンダリングするプロバイダー(Firecrawl、Olostep、Diffbot)は両方の表で同じ価格です。 - **あるボリュームでの価格:** 1つのプロバイダーで毎月そのページ数を購入する最も安い公開方法(プラン、プランと公開されている超過分、または従量課金)を、使用ページ数で割ったもの。100,000ページに使用する$99のプランは、より多く含まれていても1,000ページあたり$0.99として計算します。 - **クレジット倍率を適用しています。** 例:ScrapingBee、ZenRows、Scrape.doではブラウザページ1ページあたり5クレジット。 - **無料枠は価格ではなく記載のみ。** トークン、ブラウザ時間、データ量、またはコンピュートで課金されるAPI、およびMarkdown出力を確認できなかった1つのAPIは別途記載しています。 WebReaderAPIは参考として表示しており、中央値には含まれていません。 ## 通常ページ1,000ページあたりの価格(月間ボリューム別) ブラウザなしで読み取る静的ページ。「—」は未公開、またはそのボリュームでセルフサービス提供がないことを意味します。 | API | 月10Kページ | 月100Kページ | 月1Mページ | | --- | --- | --- | --- | | WebReaderAPI(前払い、有効期限なし) | $0.38/1Kページ | $0.22/1Kページ | $0.07/1Kページ | | Firecrawl | $4.40 | $0.99 | $0.749 | | Tavily Extract | $1.60 | $1.40 | $1.30 | | Exa contents | $1.00 | $1.00 | $1.00 | | Parallel Extract | $1.00 | $1.00 | $1.00 | | Linkup fetch | $1.00 | $1.00 | $1.00 | | Olostep | $2.90 | $0.99 | $0.399 | | ScrapeGraphAI | $2.00 | $1.00 | $1.25 | | Diffbot | $29.90 | $2.99 | $0.899 | | ScrapingBee | $1.90 | $0.49 | $0.099 | | ScraperAPI | $4.90 | $0.49 | $0.149 | | ZenRows | $0.50 | $0.39 | $0.199 | | Scrapfly | $3.00 | $0.30 | $0.10 | | Scrape.do | $2.90 | $0.29 | $0.099 | | Crawlbase | $2.10 | $0.764 | $0.349 | | Bright Data Web Unlocker | $1.50 | $1.50 | $1.30 | | Oxylabs Web Scraper API | $3.00 | $1.00 | $2.50 | | Decodo Web Data API | $1.90 | $0.49 | $0.249 | | Scrapeless | $1.00 | $0.90 | $0.80 | | Hyperbrowser Fetch | $3.00 | $1.00 | — | | Steel scrape | $5.00 | $5.00 | $5.00 | | Crawl4AI Cloud | $1.00 | $0.50 | $0.395 | *価格確認日:2026年10月22日.* 価格はUSDの定価、2026-10-22に読み取り。当社の価格:同日時点のWebReaderAPI価格ページ。 ## ブラウザレンダリングページ1,000ページあたりの価格(月間ボリューム別) JavaScriptが必要なページをヘッドレスブラウザでレンダリング。ブラウザオプションを記載していないAPIはこの表から除外しています。 | API | 月10Kページ | 月100Kページ | 月1Mページ | | --- | --- | --- | --- | | WebReaderAPI(1ページあたり2クレジット) | $0.75/1Kページ | $0.435/1Kページ | $0.148/1Kページ | | Firecrawl | $4.40 | $0.99 | $0.749 | | Tavily Extract | $3.00 | $2.36 | $2.90 | | Linkup fetch | $5.00 | $5.00 | $5.00 | | Olostep | $2.90 | $0.99 | $0.399 | | ScrapeGraphAI | $2.00 | $1.00 | $1.25 | | Diffbot | $29.90 | $2.99 | $0.899 | | ScrapingBee | $1.90 | $0.99 | $0.599 | | ScraperAPI | $4.90 | $1.49 | $0.975 | | ZenRows | $2.50 | $0.99 | $0.549 | | Scrapfly | $3.00 | $1.00 | $0.56 | | Scrape.do | $2.90 | $0.99 | $0.699 | | Crawlbase | — | $0.99 | $0.599 | | Bright Data Web Unlocker | $1.50 | $1.50 | $1.30 | | Oxylabs Web Scraper API | $3.00 | $5.00 | $2.50 | | Decodo Web Data API | $1.90 | $0.99 | $0.999 | | Hyperbrowser Fetch | $3.00 | $1.00 | — | | Steel scrape | $5.00 | $5.00 | $5.00 | | Crawl4AI Cloud | $1.00 | $0.99 | $0.667 | *価格確認日:2026年10月22日.* ## APIによって価格差が大きいのはなぜですか? 価格差の大部分は4つの要因で説明できます。 1. **製品タイプ。** 汎用WebスクレイピングAPI(ScrapingBee、Scrape.do、ZenRows、Scrapfly)はボリューム向けの価格設定で、月100万ページ時に通常ページ1,000ページあたり約$0.10に達します。AI向けリーダー(Exa、Parallel、Linkup)は一律$1.00で、検索・取得機能が加わります。 2. **ブラウザ倍率。** クレジット制のAPIではブラウザページは通常ページの2〜10倍のコストがかかりますが、定額制のAPIではどちらも同じ価格です。 3. **プランの刻み。** 多くのプロバイダーは大きな枠を含む月額プランを販売しているため、小規模ユーザーは未使用ページ分を支払うことになります。月10,000通常ページ時の中央値は$2.00です。 4. **有効期限。** ほとんどのプランは未使用クレジットが毎月リセットされますが、ScrapeGraphAI、Crawlbase、Crawl4AI Cloudは購入したクレジットを毎月のリセットなしで保持します。 ## 無料枠、有効期限、暗号資産、本人確認、robots.txt 当社が読んだページで各プロバイダーが明記している内容。「Not stated」はページに記載がなかったことを意味します。 | API | 無料枠 | クレジットの有効期限 | 暗号資産で支払い | 本人確認 | robots.txt | | --- | --- | --- | --- | --- | --- | | WebReaderAPI | なし | なし | BTC, USDT, USDC, ETH, SOL, LTC | なし: ID不要、セルフィー不要、書類不要 | 尊重、上書きなし | | Firecrawl | 月1,000クレジット、カード不要 | プランのクレジットは毎月リセット | なし(カード、PayPal) | 記載なし | デフォルトで尊重。Enterpriseでのみ上書き可能 | | Tavily Extract | 月1,000クレジット(5,000基本URL) | 毎月リセット | その裁量のみ(利用規約) | 記載なし | 記載なし | | Exa contents | 月$10クレジット | 無料クレジットは毎月リセット | リクエストごとにUSDC(x402) | 従量課金はカード払い | インデックスクローラーについての記載で、ユーザーのfetchについては対象外 | | Parallel Extract | 月5,000リクエスト | 無料クレジットは毎月失効 | リクエストごとにUSDC(x402) | 月次クレジット用のカード | インデックスクローラーについての記載で、ユーザーのfetchについては対象外 | | Linkup fetch | 月$20(プロフェッショナルメール) | 記載なし | リクエストごとにUSDC(x402) | 無料クレジット用のプロフェッショナルメール | クロールは尊重。fetchについては記載なし | | Olostep | 500リクエストのトライアル | プランは月次、トップアップは6ヶ月 | リクエストごとにUSDC(x402) | トップアップはカード払い | 尊重するためのツールあり、デフォルトは記載なし | | ScrapeGraphAI | 500クレジット | プランのクレジットは繰り越し不可、トップアップは失効なし | エージェントのみ(MPP) | 記載なし | お客様による遵守が必要(規約) | | Diffbot | 月10,000クレジット | クォータは各期間でリセット | 記載なし | 無料プランはカード不要 | Crawlはデフォルトで遵守、Extractについては記載なし | | ScrapingBee | 1,000クレジット | 繰り越しなし | いいえ | 有料プランはカード払い | 記載なし | | ScraperAPI | 7日間で5,000クレジット | 各請求期間で失効 | いいえ | 記載なし | 記載なし | | ZenRows | 月5,000クレジット | 更新時 | アカウント:不可、エージェント:USDC(x402) | メール検証 | 記載なし | | Scrapfly | 1,000クレジットを1回 | 繰り越しなし | 記載なし | 全お客様にKYC | Crawler APIはデフォルトで尊重、無効化可能 | | Scrape.do | 月1,000クレジット | 記載なし | はい(コインの記載なし) | 記載なし | 記載なし | | Crawlbase | 1,000クレジット | 従量課金:失効なし | 記載なし | 記載なし | 記載なし | | Bright Data Web Unlocker | 月5,000クレジット | 無料クレジットは毎月リセット | いいえ | 個人メールのアカウントはカード、robotsで禁止されたページには企業KYC | デフォルトで尊重 | | Oxylabs Web Scraper API | $5クレジットを1回 | サイクル終了 | いいえ | 全お客様にKYC | 記載なし | | Decodo Web Data API | 月間最大10,000リクエスト | 未使用分は毎月失効 | はい(CoinGate経由) | 自動チェック後、KYC | 記載なし | | Scrapeless | トライアル、サイズは不明 | 前払い最低額は維持されない | はい(コインの記載なし) | 基本パッケージにはなし | 記載なし | | Hyperbrowser Fetch | 5,000クレジット | 購入クレジット:12か月 | リクエストごとにUSDC(x402) | 記載なし | 記載なし | | Steel scrape | $30を一度だけ(90日間) | ローンチクレジット90日間 | リクエストごとにUSDC(x402) | カード不要 | 利用規約が違反を禁止 | | Crawl4AI Cloud | 月1,000クレジット | 購入クレジットは失効しない | 記載なし | カード不要 | 利用規約が遵守を要求 | *価格確認日:2026年10月22日.* ## 主な調査結果は何ですか? - **プレーンなページは大量処理では安価。** 月間100万ページでは、ScrapingBee($0.099)、Scrape.do($0.099)、Scrapfly($0.10)がプレーンなページの最安値を掲載。 - **ブラウザページはより高コスト。** 月間100万ページでは、Olostep($0.399)、ZenRows($0.549)、Scrapfly($0.56)がブラウザページの最安値を掲載。 - **最も有名なリーダーが最も安価とは限らない。** Firecrawlは100,000ページで1,000ページあたり$0.99、100万ページで$0.749を掲載し、全ページがレンダリングされる。 - **アカウントでの暗号資産払いはまれ。** Scrape.do、Decodo Web Data API、Scrapelessが暗号資産払いに対応すると明記。Exa contents、Parallel Extract、Linkup fetch、Olostep、ZenRows、Hyperbrowser Fetch、Steel scrapeはx402経由でリクエストごとにUSDCを受け取る。 - **robots.txtはしばしば顧客に委ねられる。** 少なくともクロール製品においてrobots.txtを尊重するデフォルトを明記しているプロバイダー:Firecrawl、Diffbot、Scrapfly、Bright Data Web Unlocker。多くは何も述べていない。 - **KYCは例外。** OxylabsとScrapflyは全顧客にKYCを求める。Decodoはまず自動チェックを実行する。 ## 別の方法で請求されるAPI(中央値には含まず) これらはトークン、ブラウザ時間、データ量、またはコンピュート単位で請求されるか、Markdown出力を確認できなかったため、1ページあたりの価格はお客様のページによって変わります。 | API | 料金 | 注記 | | --- | --- | --- | | Jina Reader | 10億出力トークンあたり$50、110億トークンあたり$500 | トークン単位の請求:1ページあたりのコストはページの長さに依存します。新しいAPIキーごとに1,000万無料トークン、非商用のみ。 | | Cloudflare Browser Run | 含まれる10時間を超えた分はブラウザ1時間あたり$0.09、月額最低$5 | ブラウザ時間単位の請求;/markdown、/content、/crawlエンドポイント。 | | Spider | コンテンツ1 GBあたり$1に加えコンピュート | データ量単位の請求;公表している1ページあたりの数値は独自の見積もりです。 | | Apify Website Content Crawler | コンピュートユニット(Businessでは1ユニットあたり$0.13) | コンピュート単位の請求;公表している1ページあたりの数値は独自の見積もりです。 | | Zyte API | 静的リクエスト1,000件あたり$0.13(ウェブサイトティア1、従量課金);ブラウザ利用時は$1.01 | 価格はZyteがウェブサイトごとに割り当てるティアによって異なります。Markdown出力については、当方が確認したページには記載がありません。 | *価格確認日:2026年10月22日.* ## このデータを再利用できますか? はい。このページの表はクリエイティブ・コモンズ 表示 4.0 ライセンス(CC BY 4.0)で公開されています:このページへのリンクと日付2026-10-22を添えて複製・改変できます。当方は少なくとも月に一度、価格を再確認しています。 数値に誤りがある場合は、正しい数値がわかるページを添えてsupport@webreaderapi.comまでご連絡ください。当方が修正し、変更を[変更履歴](https://webreaderapi.com/ja/changelog/)に記載します。 ## 価格インデックス:よくある質問 ### URLからMarkdownへの変換APIで最も安いのはどれですか? ボリュームとJavaScriptの有無によって異なります。2026-10-22時点で、月間100万ページにおけるプレーンなページの最安値はScrapingBeeが1,000ページあたり$0.099、Scrape.doが$0.099でした。そのボリュームでのブラウザページの最安値はOlostepの$0.399でした。 ### Firecrawlは1ページあたりいくらですか? FirecrawlはJavaScript込みで1ページあたり1クレジットを請求します:Hobbyでは5,000クレジットで$19、Standardでは100,000クレジットで$99、Scaleでは100万クレジットで$749(2026-10-22に価格ページで確認)。JSON抽出は1ページあたり4クレジットが追加されます。 ### Jina Readerがメインの表にないのはなぜですか? Jinaは出力トークン単位で課金されるため(最小パッケージで10億トークンあたり$50)、1ページあたりの価格はページの長さによって変わります。別の課金方式のAPI一覧の表に掲載しています。 ### WebReaderAPIは中央値の計算に自身を含めていますか? WebReaderAPIはこのインデックスを公開しており、参照用として先頭の行に表示されています。中央値は他のプロバイダーを使用しています。 ### インデックスはどのくらいの頻度で更新されますか? 少なくとも月に1回、および掲載プロバイダーが公開価格を変更したときに更新されます。上部の日付は最後の完全なチェック日を示しています。 ## ソース 1. [Firecrawl:料金](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22) 2. [Tavily Extract:料金](https://docs.tavily.com/documentation/api-credits) — Tavily (read 2026-10-22) 3. [Exa contents:料金](https://exa.ai/pricing) — Exa (read 2026-10-22) 4. [Parallel Extract: 料金](https://parallel.ai/pricing) — Parallel (read 2026-10-22) 5. [Linkup fetch:料金](https://docs.linkup.so/pages/documentation/development/pricing) — Linkup (read 2026-10-22) 6. [Olostep:料金](https://www.olostep.com/pricing) — Olostep (read 2026-10-22) 7. [ScrapeGraphAI: 料金](https://scrapegraphai.com/pricing) — ScrapeGraphAI (read 2026-10-22) 8. [Diffbot: 料金](https://www.diffbot.com/pricing/) — Diffbot (read 2026-10-22) 9. [ScrapingBee: 料金](https://www.scrapingbee.com/pricing/) — ScrapingBee (read 2026-10-22) 10. [ScraperAPI: 料金](https://www.scraperapi.com/pricing/) — ScraperAPI (read 2026-10-22) 11. [ZenRows: 料金](https://docs.zenrows.com/first-steps/pricing.md) — ZenRows (read 2026-10-22) 12. [Scrapfly: 料金](https://scrapfly.io/pricing) — Scrapfly (read 2026-10-22) 13. [Scrape.do: 料金](https://scrape.do/pricing.md) — Scrape.do (read 2026-10-22) 14. [Crawlbase: 料金](https://crawlbase.com/pricing) — Crawlbase (read 2026-10-22) 15. [Bright Data Web Unlocker: 料金](https://www.bright.cn/pricing/web-unlocker) — Bright Data (read 2026-10-22) 16. [Oxylabs Web Scraper API: 料金](https://oxylabs.io/pricing/web-scraper-api) — Oxylabs (read 2026-10-22) 17. [Decodo Web Data API: 料金](https://help.decodo.com/docs/web-data-api-billing) — Decodo (read 2026-10-22) 18. [Scrapeless: 料金](https://www.scrapeless.com/en/pricing) — Scrapeless (read 2026-10-22) 19. [Hyperbrowser Fetch: 料金](https://hyperbrowser.ai/docs/pricing.md) — Hyperbrowser (read 2026-10-22) 20. [Steel scrape: 料金](https://docs.steel.dev/overview/pricinglimits) — Steel (read 2026-10-22) 21. [Crawl4AI Cloud:料金](https://crawl4ai.com/) — Crawl4AI (read 2026-10-22) 22. [Jina Reader: 料金](https://jina.ai/api-dashboard/pricing/) — Jina Reader (read 2026-10-22) 23. [Cloudflare Browser Run: 料金](https://developers.cloudflare.com/browser-run/pricing/) — Cloudflare Browser Run (read 2026-10-22) 24. [Spider: 料金](https://spider.cloud/pricing) — Spider (read 2026-10-22) 25. [Apify Website Content Crawler: 料金](https://apify.com/apify/website-content-crawler) — Apify Website Content Crawler (read 2026-10-22) 26. [Zyte API: 料金](https://www.zyte.com/pricing/) — Zyte API (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # URL to Markdown API クイックスタート:2分で最初のページを取得 > URL to Markdown API クイックスタート:APIキーを取得し、curl、Python、Node.jsで最初のページを読み取り、クレジットを確認します。$0.07/1Kページから、KYC不要。 - URL: https://webreaderapi.com/ja/docs/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) エンドポイントは1つ、パラメータも1つ:URLを`/read`に送ると、ページの本文がMarkdownで返ってきます。このページでは残高ゼロから実際に呼び出せる状態まで導き、その後ほかのすべての情報へ案内します。 **概要 — APIでURLをMarkdownに変換するには?** URLを`Authorization`ヘッダーにAPIキーを付けて`GET https://webreaderapi.com/api/v1/read`に送ってください。**WebReaderAPI**がページを取得し、本文を保持して、タイトル、著者、日付、単語数とともにMarkdownとして返します。1ページにつき1クレジット(ブラウザが必要な場合は2クレジット)で、2026年10月時点では$0.07/1Kページから。KYC不要、暗号資産で支払い。 ## APIの一覧表 | 項目 | 値 | | --- | --- | | ベースURL | `https://webreaderapi.com/api/v1` | | 1ページを読み取る | `GET`または`POST https://webreaderapi.com/api/v1/read` | | 複数のURLまたはサイト | `POST https://webreaderapi.com/api/v1/batch`と`POST https://webreaderapi.com/api/v1/crawl`、結果は`GET https://webreaderapi.com/api/v1/jobs/{job_id}`から | | 残高クレジット | `GET https://webreaderapi.com/api/v1/credits`(無料) | | 認証 | APIキーはAuthorizationヘッダーにBearerトークンとして、またはapi_keyクエリパラメータで送信してください | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | 当社のクローラー | `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`、robots.txtトークン`WebReaderAPI` | | 最小パック | $3.75で10,000ページ、クレジットは無期限 | ## APIキーはどう取得しますか? 3ステップで完了、記入するフォームはありません。最も時間がかかるのは、チャージ分のブロックチェーン確認です。 1. **暗号資産でチャージ** — BTC, USDT, USDC, ETH, SOL, LTCで$25以上を送金してください。アカウント番号でログイン。メールは任意。 2. **クレジットパックを購入する** — $3.75あたり10,000ページあれば、ご自身のURLで全オプションを試せます。 3. **APIキーをコピー** — 暗号資産でのチャージが確認され、パックを購入すると、ダッシュボードでAPIキーが使用可能になります。WEBREADER_API_KEYという名前の環境変数に保存してください。 ## 最初のリクエストはどのような形ですか? ページアドレスを`url`パラメータに入れた、シンプルなHTTPS GETです。アドレスには`:`や`/`の文字が含まれるため、エンコードしてください。curlでは`--data-urlencode`を付ければ自動で処理されます。デフォルト設定はほとんどの記事やドキュメントページにそのまま適しています。Markdown出力、本文のみ、そしてページに必要な場合のみブラウザを使用します。 *curl: 1ページを読み取る* ```bash curl -sG "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/blog/first-post" ``` *Python: 1ページを読み取って保存する* ```python import os import requests resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": "https://example.com/blog/first-post"}, timeout=70, ) resp.raise_for_status() page = resp.json() print(page["title"], "-", page["word_count"], "words,", page["credits_used"], "credit(s)") with open("first-post.md", "w", encoding="utf-8") as f: f.write(page["markdown"]) ``` *Node.js 18+: 1ページを読み取る* ```javascript const params = new URLSearchParams({ url: 'https://example.com/blog/first-post' }); const res = await fetch(`https://webreaderapi.com/api/v1/read?${params}`, { headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}` }, }); const page = await res.json(); if (!res.ok) throw new Error(`${page.error.code}: ${page.error.message}`); console.log(page.title, page.word_count, 'words'); console.log(page.markdown.slice(0, 500)); ``` ## 何が返ってきますか? `markdown`フィールドにMarkdown、その隣にページのメタデータを含むJSONオブジェクトです: `title`、`description`、`author`、`published_at`、`language`、`site_name`、`word_count`。何が起きたかを確認できるフィールドが2つあります: `final_url`はリダイレクト後のアドレス、`rendered`はブラウザが必要だったかどうかを示します。 `credits_used`は呼び出しのコストを示します: 通常のページは1、`rendered`が`true`のときは2、`country`を選んだ場合はさらに1。 [response format](https://webreaderapi.com/ja/docs/response/)ページには全フィールドが例付きで掲載されています。 ## どのオプションを最もよく使いますか? 5つのパラメータでほとんどのニーズをカバーできます。すべて任意です。 | パラメータ | 用途 | |---|---| | `format` | `markdown`の代わりに`text`やクリーンアップした`html`を取得 | | `main_content` | `false`を設定してメニューを含むページ全体を変換 | | `render` | ブラウザを強制(`true`)または禁止(`false`)。`auto`が自動判断 | | `include_links` | ページのリンクを別リストとして取得 | | `max_chars` | 長いページをモデルのコンテキスト予算に収まるようカット | [read reference](https://webreaderapi.com/ja/docs/read/)には`country`、`include_images`、`timeout`を含む全パラメータが記載されています。 ## 残りのクレジットはどう確認しますか? 同じキーで`GET https://webreaderapi.com/api/v1/credits`を呼び出してください。`credits_remaining`、`credits_used_today`、`concurrency_limit`を返し、コストはかかりません。長時間のジョブの開始時に実行すれば、途中で`402 insufficient_credits`により失敗するのではなく、クリーンに停止できます。 プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残りますため、あるプロジェクト用に購入したパックは次のプロジェクトでもその価値を保ちます。 ## サイトがrobotsを許可していない場合はどうなりますか? ページを読み取らず、課金もされません。当社のクローラーは`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`として名乗り、サイトのrobots.txtに従います。許可されていないページには`403 blocked_by_robots`を返し、別の方法でリクエストを拒否するサイトにはそのサイト自身のステータスコードとともに`502 target_refused`を返します。 サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。[errors page](https://webreaderapi.com/ja/docs/errors/)では、再試行すべきエラーと最終的なエラーを説明しています。 ## 次に何をすればよいですか? - [endpoint referenceを読む](https://webreaderapi.com/ja/docs/read/) — /readの全パラメータと例 - [バッチとクロール](https://webreaderapi.com/ja/docs/crawl/) — バッチあたり最大100 URL、またはサイト全体 - [レスポンス形式](https://webreaderapi.com/ja/docs/response/) — レスポンスの全フィールド - [エラーとrobots.txt](https://webreaderapi.com/ja/docs/errors/) — コード、原因、再試行ルール - [Python](https://webreaderapi.com/ja/docs/python/) — requests、async httpx、RAGチャンキング - [Node.js](https://webreaderapi.com/ja/docs/node/) — fetch、小さなプール、クロールのポーリング - [curlとjq](https://webreaderapi.com/ja/docs/curl/) — ターミナル向けレシピ - [MCPサーバー](https://webreaderapi.com/ja/docs/mcp/) — ClaudeとCursor向けのread_urlツール - [LangChainとLlamaIndex](https://webreaderapi.com/ja/docs/langchain/) — RAG向けのローダーとツール - [OpenAI function calling](https://webreaderapi.com/ja/docs/openai/) — read_urlツールのスキーマとループ - [n8n](https://webreaderapi.com/ja/docs/n8n/) — AI Agent向けHTTP Requestツール - [OpenClaw](https://webreaderapi.com/ja/docs/openclaw/) — web_fetchの隣にMCPサーバーを追加 ## クイックスタート: よくある質問 ### インストールするSDKはありますか? いいえ。WebReaderAPIはシンプルなHTTPS APIなので、どのHTTPクライアントでも動作します。ドキュメントにはPython、Node.js、curl向けのコピー&ペースト用コードと、MCP、LangChain、LlamaIndex、OpenAI function calling向けのツール定義が掲載されています。パッケージとして公開されているものはありません。 ### キーをヘッダーではなくURLで送れますか? はい、`api_key`クエリパラメータとして送れます。`Authorization: Bearer`ヘッダーの方が安全です。URLはログやブラウザ履歴に残ることが多いためです。APIキーは複数作成できます(例:エージェントやプロジェクトごとに1つ)。ダッシュボードからいつでも失効できます。 ### 失敗したページでクレジットは消費されますか? いいえ。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。コンテンツが返ってきたページのみ課金されます。 ### 購入前に試せますか? 無料枠はありません。無料プランはありません。最小パックがテスト手段で、最低チャージ額から支払います。最低チャージ額に到達するためだけに追加した金額は、未使用であれば30日以内にリクエストによりUSDTまたはUSDCで返金できます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # バッチ・クロールAPI: 多数のURLまたはサイト全体を読み取る > バッチ・クロールAPIリファレンス: 1ジョブあたり最大100 URL、またはサイト全体で最大10,000ページまで読み取り、robots.txtとCrawl-delayを尊重します。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/crawl/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) バックグラウンドジョブを開始するendpointは2つあります。最大100 URLのリストには`/batch`、1つのウェブサイトには`/crawl`です。どちらもジョブIDを返します。結果は`/jobs/{job_id}`から1ページ分ずつ取得します。 **概要 — WebReaderAPIでウェブサイトをMarkdownにクロールするには?** 開始URLを`limit`付きで`POST https://webreaderapi.com/api/v1/crawl`に送信します。**WebReaderAPI**がバックグラウンドでサイトを読み取り、同一ドメインのみ、サイトマップ、robots.txt、Crawl-delayに従い、1ジョブあたり最大10,000ページまで処理します。Markdownページはジョブから1ページ分ずつ取得します。各ページの読み取りは1クレジット(ブラウザ使用時は2クレジット)、$0.07/1Kページより2026年10月時点。KYC不要、暗号資産で支払い。 ## ジョブの概要 | 項目 | 値 | | --- | --- | | バッチ | バッチジョブあたり最大100 URL: `POST https://webreaderapi.com/api/v1/batch` | | クロール | 1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います: `POST https://webreaderapi.com/api/v1/crawl` | | 結果 | `GET https://webreaderapi.com/api/v1/jobs/{job_id}`、その後次の結果ページには`?cursor=…` | | 課金 | 各ページの読み取りは`/read`呼び出しと同様に課金されます。robots.txtによりスキップされたページと失敗したページは無料です | | クロールの範囲 | 1つのドメインのみ。他のドメインへのリンクは一覧表示されますが読み取られません | | ジョブのキャンセル | v1では利用できません: 支払い可能な最大ページ数を`limit`に設定してください | ## バッチジョブの開始 `POST /api/v1/batch` 同じオプションでバックグラウンドで最大100 URLを読み取ります。オプションは[/read](https://webreaderapi.com/ja/docs/read/)の名前と値を使用します。返答はジョブIDです。値は例示です。 認証:`Authorization: Bearer API_KEY`ヘッダーのAPIキー。 **リクエストボディ** | フィールド | 型 | 必須 | 説明 | | --- | --- | --- | --- | | `urls` | array of strings | はい | httpまたはhttpsのURLを1〜100個。重複は1回だけ読み取ります。 | | `options` | object | いいえ | `url`以外の任意の`/read`パラメータ: `format`、`main_content`、`render`、`include_links`、`include_images`、`country`、`max_chars`、`timeout`。 | *例: three articles as Markdown* ```json { "urls": [ "https://example.com/blog/post-1", "https://example.com/blog/post-2", "https://example.org/news/launch" ], "options": { "format": "markdown", "max_chars": 50000 } } ``` **レスポンス** `202 Accepted` ```json { "job_id": "job_5c1e8a90d2" } ``` *curl* ```bash curl -s "https://webreaderapi.com/api/v1/batch" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ -H "Content-Type: application/json" \ -d '{"urls": ["https://example.com/blog/post-1", "https://example.com/blog/post-2"], "options": {"format": "markdown"}}' ``` *Python* ```python import os import requests resp = requests.post( "https://webreaderapi.com/api/v1/batch", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, json={"urls": ["https://example.com/blog/post-1", "https://example.com/blog/post-2"], "options": {"format": "markdown"}}, timeout=30, ) print(resp.json()["job_id"]) ``` *Node.js* ```javascript const res = await fetch('https://webreaderapi.com/api/v1/batch', { method: 'POST', headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ urls: ['https://example.com/blog/post-1', 'https://example.com/blog/post-2'], options: { format: 'markdown' } }), }); console.log((await res.json()).job_id); ``` ## クロールジョブを開始する `POST /api/v1/crawl` 開始URLから1つのWebサイトを幅優先で読み取ります。クローラーは開始URLのドメインに留まり、robots.txtで指定された、または`/sitemap.xml`で見つかったsitemapを使用し、robots.txtとCrawl-delayを尊重します。値は例示です。 認証:`Authorization: Bearer API_KEY`ヘッダーのAPIキー。 **リクエストボディ** | フィールド | 型 | 必須 | 説明 | | --- | --- | --- | --- | | `url` | string | はい | 開始ページ。たとえばドキュメントサイトのホームページなどです。 | | `limit` | integer | いいえ | 読み取るページ数の上限で、最大10,000。ジョブはこの数に達すると停止します。 | | `max_depth` | integer | いいえ | 開始URLからリンクをたどる最大ステップ数。 | | `include_paths` | array of strings | いいえ | 保持する単純なパスパターン。たとえば`/docs/*`などです。 | | `exclude_paths` | array of strings | いいえ | スキップする単純なパスパターン。たとえば`/blog/tag/*`などです。 | | `options` | object | いいえ | `url`以外の任意の`/read`パラメータで、すべてのページに適用されます。 | *例: the docs section of a site, 500 pages at most* ```json { "url": "https://docs.example.com/", "limit": 500, "max_depth": 3, "include_paths": [ "/docs/*" ], "exclude_paths": [ "/docs/archive/*" ], "options": { "format": "markdown" } } ``` **レスポンス** `202 Accepted` ```json { "job_id": "job_8b27f41c0e" } ``` *curl* ```bash curl -s "https://webreaderapi.com/api/v1/crawl" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ -H "Content-Type: application/json" \ -d '{"url": "https://docs.example.com/", "limit": 500, "include_paths": ["/docs/*"]}' ``` *Python* ```python import os import requests resp = requests.post( "https://webreaderapi.com/api/v1/crawl", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, json={"url": "https://docs.example.com/", "limit": 500, "include_paths": ["/docs/*"]}, timeout=30, ) print(resp.json()["job_id"]) ``` *Node.js* ```javascript const res = await fetch('https://webreaderapi.com/api/v1/crawl', { method: 'POST', headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ url: 'https://docs.example.com/', limit: 500, include_paths: ['/docs/*'] }), }); console.log((await res.json()).job_id); ``` ## ジョブのステータスと結果を取得する `GET /api/v1/jobs/{job_id}` ジョブのステータスと、準備ができた次の結果を返します。`results`の各項目は、完全な`/read`レスポンスか、読み取れなかったページの`{url, error}`のいずれかです。`next_cursor`が存在する場合は、`cursor`にその値を設定してもう一度呼び出してください。存在しない場合は、まだ準備ができた結果はありません。値は例示です。 認証:`Authorization: Bearer API_KEY`ヘッダーのAPIキー。 **パラメータ** | 名前 | 場所 | 型 | 必須 | 説明 | | --- | --- | --- | --- | --- | | `job_id` | path | string | はい | `/batch`または`/crawl`が返したID。 | | `cursor` | query | string | いいえ | 前回の呼び出しで得た`next_cursor`の値。続きの結果を取得するために使用します。 | **レスポンス** `200` ```json { "job_id": "job_8b27f41c0e", "status": "running", "results": [ { "url": "https://docs.example.com/docs/install", "final_url": "https://docs.example.com/docs/install", "status_code": 200, "rendered": false, "credits_used": 1, "title": "Install", "markdown": "# Install\n\nRun the installer...", "word_count": 418 }, { "url": "https://docs.example.com/docs/private", "error": { "code": "blocked_by_robots", "message": "robots.txt disallows this page for WebReaderAPI." } } ], "next_cursor": "c_000002", "credits_used": 1 } ``` *curl* ```bash curl -sG "https://webreaderapi.com/api/v1/jobs/job_8b27f41c0e" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ -d cursor=c_000002 ``` *Python* ```python import os import requests resp = requests.get( "https://webreaderapi.com/api/v1/jobs/job_8b27f41c0e", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"cursor": "c_000002"}, timeout=30, ) job = resp.json() print(job["status"], len(job["results"]), job.get("next_cursor")) ``` *Node.js* ```javascript const res = await fetch('https://webreaderapi.com/api/v1/jobs/job_8b27f41c0e?cursor=c_000002', { headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}` }, }); const job = await res.json(); console.log(job.status, job.results.length, job.next_cursor); ``` ## ジョブの完了を待つにはどうすればよいですか? `/jobs/{job_id}`をポーリングし、カーソルを保持します。取得した結果を処理したら、`cursor`に`next_cursor`を設定してもう一度呼び出してください。`next_cursor`が存在せず、`status`が`done`であれば、すべて取得済みです。存在せず、ジョブがまだ`running`の場合は、待ってから同じカーソルで再度問い合わせてください。 最初は2秒ごとにポーリングし、新しい結果が届かない間は待ち時間を最大30秒まで倍にしていきます。サイトのCrawl-delayを尊重するクロールは時間がかかることがあるため、長い待ち時間は正常であり、コストはかかりません。 *Python: ジョブをポーリングし、すべてのページを.mdファイルとして保存する* ```python import os import pathlib import re import time import requests JOBS = "https://webreaderapi.com/api/v1/jobs" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} def save_job(job_id, folder="pages"): out = pathlib.Path(folder) out.mkdir(exist_ok=True) cursor, wait, saved = None, 2, 0 while True: params = {"cursor": cursor} if cursor else {} job = requests.get(f"{JOBS}/{job_id}", headers=HEADERS, params=params, timeout=30).json() for item in job["results"]: if "error" in item: print("skipped", item["url"], item["error"]["code"]) continue name = re.sub(r"[^a-z0-9]+", "-", item["final_url"].lower()).strip("-")[:120] (out / f"{name}.md").write_text(item["markdown"], encoding="utf-8") saved += 1 if job.get("next_cursor"): cursor, wait = job["next_cursor"], 2 continue if job["status"] == "done": return saved time.sleep(wait) wait = min(wait * 2, 30) if __name__ == "__main__": print(save_job("job_8b27f41c0e"), "pages saved") ``` ## クロールはどのページを読み取りますか? クロールは指定したURLから開始し、幅優先で1リンクステップずつ外側へ進み、最大`max_depth`まで読み取ります。また、リンクが少ないページを見つけるため、robots.txtで指定されたアドレスまたは`/sitemap.xml`にあるサイトのsitemapも読み取ります。 - **同一ドメインのみ。** 他のドメインへのリンクは、`include_links`を指定した場合に結果に一覧表示されますが、読み取られません。 - **パスフィルター。** `include_paths`と`exclude_paths`は`/blog/*`のような単純なパターンを受け付けます。 - **ページごとに1コピー。** サイトがcanonical URLを宣言している場合、複数のアドレスから到達したページは1回だけ読み取られます。 - **強制停止。** ジョブは`limit`ページを読み取ると終了します。 ## クロールはどのようにサイトを尊重しますか? すべてのリクエストにはUser-Agent `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`が付与され、クローラーは`WebReaderAPI`に対するrobots.txtのルール、または該当する名前がない場合はすべてのロボットに対するルールに従います。許可されていないページはスキップされ、エラー`blocked_by_robots`とともに`results`に表示されます。コストはかかりません。 robots.txtに`Crawl-delay`が設定されている場合、クローラーはサイトへの2つのリクエストの間にその時間だけ待機します。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 ## クロールのコストはいくらですか? 読み取った各ページには、`/read`呼び出しと同じコストがかかります: 1クレジット、ブラウザが必要なページは2クレジット、さらに`country`の場合は10クレジット。スキップされたページと失敗したページは無料です。ジョブの`credits_used`には、これまでに課金された分が合計されます。 ブラウザなしで読み取る500ページのドキュメントサイトでは約500クレジットを使用し、10,000ページパック($3.75)で何度もまかなえます。v1ではジョブをキャンセルできないため、`limit`が支出上限となります。支払ってもよい最大ページ数に設定してください。 ## バッチとクロール: よくある質問 ### /batchと多数の/read呼び出しのどちらを使うべきですか? URLがすでにあり、各回答をすぐに必要としない場合は`/batch`を使用してください。並行処理とリトライの管理が不要になります。エージェントが今すぐ1ページを必要とする場合は`/read`を使用してください。 ### ジョブの結果はどのくらい保持されますか? 準備ができたらすぐに取得してください。結果は取得するまで保持されますが、一度配信されるとページ内容のコピーは保持されないため、必要なものはご自身の側で保存してください。 ### クロールは他のWebサイトへのリンクをたどれますか? いいえ。クロールは1つのドメインのみを読み取ります。他のドメインは、指定した場合にリンクとして表示され、読み取りたい場合はそれらのURLを`/batch`に送ることができます。 ### 開始したクロールを停止できますか? v1ではできません。ジョブは`limit`ページで停止するため、予算に合った上限を選んでください。読み取り済みのページは課金されたままになり、読み取られなかったページは無料です。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # curlとjqでWebページをMarkdownに変換 > curlとjqを使ってターミナルからWebページをMarkdownに変換: ページの保存、リンクの一覧表示、バッチの実行、クレジットの確認。$0.07/1Kページから、KYC不要。 - URL: https://webreaderapi.com/ja/docs/curl/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) APIでできることはすべてシェルのワンライナーに収まります。これらのレシピではcurlでAPIを呼び出し、jqでJSONからフィールドを取り出します。最後にWindows向けのPowerShell版もあります。 **概要 — コマンドラインからWebページをMarkdownに変換するにはどうすればよいですか?** `Authorization: Bearer`ヘッダーにキーを設定して`curl -sG https://webreaderapi.com/api/v1/read --data-urlencode "url=…"`を実行し、その回答を`jq -r .markdown`にパイプします。**WebReaderAPI**はページの本文をメタデータ付きのMarkdownとして返します。プレーンなページ1枚で1クレジット、2026年10月時点で$0.07/1Kページから。KYC不要、暗号資産で支払い。 ## ターミナルの設定方法を教えてください。 ほとんどのLinuxおよびmacOSシステムに既にインストールされているcurlとjqをインストールし、セッションごとに1回キーをエクスポートします。以下のすべてのレシピは`$WEBREADER_API_KEY`からキーを読み取るため、キーがコマンドの一部としてシェル履歴に表示されることはありません。 GETリクエストには`-G`と`--data-urlencode`を使用します。curlがページアドレスをエンコードしてくれるので、アドレス自体に含まれる`?`、`&`、`=`を気にする必要があります。 *キーを設定して1ページを.mdファイルとして保存する* ```bash export WEBREADER_API_KEY="your-key" curl -sG "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/guides/compost" \ | jq -r '.markdown' > compost.md ``` ## 呼び出しの戻り値とコストを確認する方法を教えてください。 コンテンツではなくメタデータをjqに要求します。`final_url`はリダイレクト先を示し、`rendered`はブラウザが使用されたかどうかを示し、`credits_used`は呼び出しのコストです。応答がエラーの場合、同じフィルタで`null`フィールドが出力されます。`.error`を出力してコードとメッセージを確認してください。 *メタデータのみ、またはエラーがある場合はエラー* ```bash curl -sG "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/guides/compost" \ | jq '.error // {title, final_url, rendered, credits_used, word_count}' ``` ## ページのリンクを一覧表示する方法を教えてください。 `include_links=true`を追加し、`links`リストをタブ区切りの行に変換します。これにより、ページの送信リンクの簡単なマップが得られ、並べ替えたり、grepでフィルタリングしたり、バッチジョブに渡したりできます。 *リンクをテキストとURLとして1行に1つずつ* ```bash curl -sG "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/docs/" \ -d include_links=true \ | jq -r '.links[] | "\(.text)\t\(.url)"' | sort -u ``` ## JavaScriptページやPDFを読む方法を教えてください。 JavaScriptでコンテンツを構築するページには`-d render=true`を追加します。その場合、2クレジットかかります。PDFには特別なものは必要ありません。URLを送信すると、テキストが`markdown`で返されます。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。 *レンダリングされたページ、次にPDF* ```bash curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/app/changelog" -d render=true \ | jq -r '.markdown' > changelog.md curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/files/annual-report.pdf" \ | jq -r '.markdown' > annual-report.md ``` ## シェルからバッチジョブを実行する方法を教えてください。 URLを含むJSONボディを`/batch`にPOSTし、`job_id`を保持してからジョブを読み取ります。小さなループでジョブが`done`になるまで待機し、各ページのタイトルまたはエラーコードを出力します。長時間のジョブの場合は、[バッチとクロールのページ](https://webreaderapi.com/ja/docs/crawl/)に示されているように`next_cursor`に従ってください。 *3つのURLのバッチ、次に結果を待つ* ```bash JOB=$(curl -s "https://webreaderapi.com/api/v1/batch" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ -H "Content-Type: application/json" \ -d '{"urls": ["https://example.com/a", "https://example.com/b", "https://example.com/c"]}' \ | jq -r '.job_id') until [ "$(curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq -r '.status')" = "done" ]; do sleep 5 done curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" \ | jq -r '.results[] | "\(.url)\t\(.title // .error.code)"' ``` ## クレジットを確認する方法を教えてください。 `/credits`を呼び出します。これは無料です。`credits_remaining`、`credits_used_today`、および`concurrency_limit`を返します。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 *残りのクレジット* ```bash curl -s "https://webreaderapi.com/api/v1/credits" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq '.credits_remaining' ``` ## WindowsでのPowerShellバージョンは何ですか? `Invoke-RestMethod`はJSONを解析するので、jqは不要です。`[uri]::EscapeDataString`でクエリを構築してページアドレスをエンコードし、ヘッダーテーブルでキーを渡します。 *PowerShell:1ページを保存する* ```powershell $headers = @{ Authorization = "Bearer $env:WEBREADER_API_KEY" } $target = [uri]::EscapeDataString('https://example.com/guides/compost') $page = Invoke-RestMethod -Uri "https://webreaderapi.com/api/v1/read?url=$target" -Headers $headers $page.markdown | Out-File -Encoding utf8 compost.md "$($page.title): $($page.word_count) words, $($page.credits_used) credit(s)" ``` ## curl:よくある質問 ### URLに&が含まれていると失敗するのはなぜですか? シェルまたはcurlがそれを分割するためです。上記のレシピのように、`url=…`引数全体を引用符で囲み、`--data-urlencode`で渡します。curlはページアドレス内の`&`、`?`、`=`をエンコードします。 ### エラーのHTTPステータスを確認する方法を教えてください。 本文の後に出力するには`-w '\n%{http_code}\n'`を追加するか、すべてのヘッダーを表示するには`-i`を追加します。本文の`error.code`は、スクリプトでテストするための安定した値です。 ### 失敗した呼び出しは課金されますか? いいえ。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # エラー、robots.txtによる拒否、リトライ > WebReaderAPIのすべてのエラーコード:robots.txtによる拒否、サイトによる拒否、タイムアウト、クレジットエラー、再試行すべきもの、およびそれらのいずれも課金されない理由。 - URL: https://webreaderapi.com/ja/docs/errors/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 各エラーにはHTTPステータス、安定した`code`、読み取り可能な`message`があります。いずれもクレジットを消費しません。再試行する価値のあるものもありますが、サイトからの拒否は最終的なものであり、当社はそれを回避することはありません。 **概要 — WebReaderAPIのエラーコードの意味と、再試行すべきものはどれですか?** **WebReaderAPI**エラーは3つのグループに分かれ、いずれも課金されません。リクエストの問題(`invalid_url`、`invalid_api_key`、`insufficient_credits`)はお客様側で修正が必要です。サイトの決定(`blocked_by_robots`、`blocked_by_site_policy`、`target_refused`)は最終的なものです。一時的な障害(`fetch_failed`、`fetch_timeout`、`concurrency_limit`)はバックオフで再試行できます。クレジットは$0.07/1Kページから始まり、KYC不要の暗号資産で支払われます。 ## APIが返す可能性のあるエラーコードはどれですか? 本文は常に`{"error": {"code", "message"}}`で、拒否がサイトからのものである場合は`target_status`が付加されます。 | HTTP | `code` | 原因 | 再試行しますか? | | --- | --- | --- | --- | | 400 | `invalid_url` | http または https ではない、長すぎる、またはプライベート・ローカル・クラウドメタデータのアドレスです | いいえ: URLを修正してください | | 400 | `invalid_parameter` | パラメータの値がリストまたは範囲外です | いいえ: リクエストを修正してください | | 401 | `invalid_api_key` | キーが未設定、誤り、または失効しています | いいえ: APIキーを確認してください | | 402 | `insufficient_credits` | 残高にクレジットが残っていません | クレジットパック購入後 | | 403 | `blocked_by_robots` | サイトの robots.txt が、WebReaderAPI またはすべてのロボットに対してこのページを許可していません | いいえ: 確定です | | 403 | `blocked_by_site_policy` | サイトが `Content-Signal: ai-input=no` を宣言しています | いいえ: 確定です | | 422 | `unsupported_content` | 読み取れない種類(動画、アーカイブ)または大きすぎるファイルです | いいえ | | 429 | `concurrency_limit` | 同時に実行中のリクエストが多すぎます | はい、バックオフを付けて | | 502 | `target_refused` | サイトが拒否しました: 403、429、チャレンジページ、またはログインウォールです。ステータスは `target_status` にあります | いいえ: 確定です | | 502 | `fetch_failed` | DNS、TLS、接続エラー、またはサイトが 404 か 410 を返しました | 1~2回、バックオフを付けて | | 504 | `fetch_timeout` | サイトが `timeout` 以内に応答しませんでした | はい、バックオフまたはより長いタイムアウトで | ## robots.txt とサイトによる拒否が確定なのはなぜですか? それはサイト所有者の判断であり、WebReaderAPI はそれに従うように作られているからです。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。 サイトが別の形でリクエストを拒否した場合、403、429、チャレンジページ、ログインフォームなどでは、`target_refused` とサイト自身のステータスが `target_status` に返ります。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。同じ URL を1分後に再試行しても通常は同じ結果になるため、これらのコードは失敗ではなく結果として扱ってください。ログに記録して次に進みます。 ## ページが拒否された理由を確認するには? サイトの `/robots.txt` を開き、`WebReaderAPI` を名指すグループ、またはすべてのロボットに適用される `*` グループを探してください。パスに一致する `Disallow` の行があれば `blocked_by_robots` の説明になります。`Content-Signal: ai-input=no` のような行は `blocked_by_site_policy` の説明になります。 robots.txt のコピーは最大24時間保持します。サイトがロボット向けにセクションを開放したばかりの場合、変更が反映されるまで最大1日かかることがあります。サイト所有者は、クローラーの動作と許可・ブロックの方法を [クローラーページ](https://webreaderapi.com/ja/bot/) で確認できます。 ## 一時的な失敗はどのように再試行すべきですか? `concurrency_limit`、`fetch_timeout`、そして1~2回だけ `fetch_failed` を再試行してください。新しい試行の前に待機し、待機時間を毎回2倍にし、並列ワーカーが同時に再試行しないよう少しランダムなジッターを加えます。4~5回試行したら停止してください。 `concurrency_limit` には、一度に送るリクエストを減らすのがより良い対処です: すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。`fetch_timeout` には、遅いサイトを再試行する前に `timeout` を最大60秒まで延ばしてください。失敗した試行は課金されないため、再試行に費用はかかりません。 *Python: 変わりうるエラーだけを再試行する* ```python import os import random import time import requests API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} RETRY = {"concurrency_limit", "fetch_timeout", "fetch_failed"} FINAL = {"blocked_by_robots", "blocked_by_site_policy", "target_refused", "unsupported_content"} def read_page(url, attempts=5, **options): wait = 1.0 for attempt in range(1, attempts + 1): resp = requests.get(API, headers=HEADERS, params={"url": url, **options}, timeout=75) if resp.status_code == 200: return resp.json() error = resp.json().get("error", {}) code = error.get("code", "unknown") if code in FINAL: return {"url": url, "skipped": code, "target_status": error.get("target_status")} if code not in RETRY or attempt == attempts or (code == "fetch_failed" and attempt >= 3): raise RuntimeError(f"{code}: {error.get('message')}") time.sleep(wait + random.uniform(0, wait / 2)) wait = min(wait * 2, 30) raise RuntimeError("unreachable") if __name__ == "__main__": print(read_page("https://example.com/blog/first-post", max_chars=20000).get("title")) ``` *Node.js: 指数バックオフで同じルールを適用* ```javascript const RETRY = new Set(['concurrency_limit', 'fetch_timeout', 'fetch_failed']); const FINAL = new Set(['blocked_by_robots', 'blocked_by_site_policy', 'target_refused', 'unsupported_content']); const sleep = (ms) => new Promise((r) => setTimeout(r, ms)); export async function readPage(url, options = {}, attempts = 5) { let wait = 1000; for (let attempt = 1; attempt <= attempts; attempt++) { const params = new URLSearchParams({ url, ...options }); const res = await fetch(`https://webreaderapi.com/api/v1/read?${params}`, { headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}` }, }); const body = await res.json(); if (res.ok) return body; const code = body.error?.code ?? 'unknown'; if (FINAL.has(code)) return { url, skipped: code, target_status: body.error.target_status }; if (!RETRY.has(code) || attempt === attempts) throw new Error(`${code}: ${body.error?.message}`); await sleep(wait + Math.random() * (wait / 2)); wait = Math.min(wait * 2, 30000); } } ``` ## バッチやクロール内のエラーはどうなりますか? 1ページの失敗でジョブ全体が止まることはありません。そのページは`results`内に`{url, error}`として、上記と同じコードとともに記録され、クレジットは消費されません。あるセクションで`blocked_by_robots`に遭遇したクロールは、単にサイトの残りの部分を読み進めます。 ジョブ終了時にエラーコードを集計します。1つのサイトで`target_refused`が多い場合は、そのサイトが自動リーダーを受け付けていないことを意味します。`fetch_timeout`が多い場合はサイトが遅いことを意味し、ジョブオプションで`timeout`を長くすると改善する場合があります。 ## エラー: よくある質問 ### robots.txtでブロックされたページは課金されますか? いいえ。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。このページに記載されている他のすべてのエラーも同様です。 ### 依頼すれば、クローラーをブロックしているページも読めますか? いいえ。私たちはサイト所有者の選択に従い、ポリシーはすべてのお客様に同じです。サイトを所有している場合は、robots.txtに`WebReaderAPI`用のルールを追加してください。方法は[クローラーページ](https://webreaderapi.com/ja/bot/)に記載されています。 ### 存在するページなのにfetch_failedが返るのはなぜですか? サイトがダウンしていた、TLS接続の受け付けが遅かった、または自動クライアントに対して404を返していた可能性があります。バックオフを入れて1〜2回リトライしてください。それでも失敗し続ける場合は、ブラウザでアドレスを確認してください。 ### 拒否された後、エージェントはユーザーに何と伝えるべきですか? 「このサイトはそのページの自動読み取りを許可していません」といったシンプルな内容で十分です。その後、モデルに他の情報源を使わせてください。エラーコードをツールの結果として返すだけで、ほとんどのモデルには十分です。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # LangChainとLlamaIndex: Webページローダーとread_urlツール > LangChainとLlamaIndexのWebページローダー: read_urlツール、ドキュメントローダー、クロールから構築した小さなRAGインデックスを、すべてPythonで。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/langchain/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) PythonのAIスタックでAPIを使う方法は2つあります。ページをドキュメントとして読み込んで検索に使うか、エージェントに`read_url`ツールを与えるかです。同じ20行のつなぎ込みコードがLangChainとLlamaIndexの両方で機能します。 **概要 — WebページをLangChainやLlamaIndexにクリーンなMarkdownとして読み込むには?** **WebReaderAPI**の`/read`エンドポイントを呼び出し、各レスポンスを`Document`でラップします。Markdownをcontentに、`final_url`とタイトルをmetadataに入れます。エージェントには同じ呼び出しを`read_url`ツールとして公開します。ページは1ページ1クレジット、ブラウザ使用時は2クレジットで、2026年10月時点では$0.07/1Kページから利用できます。当社のパッケージは不要です。KYC不要、暗号資産で支払い。 ## 生のHTMLではなくMarkdownドキュメントを使うのはなぜですか? 検索はテキストに対して機能し、Markdownは重要な構造を残しつつそれ以外を削除するからです。見出しが残るので、スプリッターはトピックの変化で分割できます。リストやテーブルが残るので、手順や仕様がまとまったまま保たれます。ナビゲーション、Cookieバナー、広告は削除されるため、埋め込みを汚染したりトークンを無駄に消費したりしません。 メタデータは同じ呼び出しから取得します。引用元としての`final_url`、フィルタリング用の`title`、`published_at`、`language`です。 *reader.py: 共通ヘルパー (コードと同じ場所に保存してください)* ```python import os import requests API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} class PageError(Exception): pass def read_page(url, **options): resp = requests.get(API, headers=HEADERS, params={"url": url, **options}, timeout=75) body = resp.json() if resp.status_code != 200: raise PageError(body["error"]["code"]) return body ``` ## LangChainのドキュメントローダーを構築するには? 各ページを`langchain_core.documents.Document`に変換し、`langchain-text-splitters`パッケージの`MarkdownHeaderTextSplitter`で見出しごとに分割します。各チャンクはメタデータに見出しパスを保持し、ソースURLを追加することで、すべての回答が元のページを指し示せるようになります。 robots.txtで拒否されたページなどスキップされたページは、コードとともに`PageError`を発生させます。ログに記録して処理を続けてください。 *LangChain: ページの読み込みと分割* ```python from langchain_core.documents import Document from langchain_text_splitters import MarkdownHeaderTextSplitter from reader import PageError, read_page splitter = MarkdownHeaderTextSplitter(headers_to_split_on=[("#", "h1"), ("##", "h2"), ("###", "h3")]) def load_pages(urls): chunks = [] for url in urls: try: page = read_page(url) except PageError as exc: print("skipped", url, exc) continue for part in splitter.split_text(page["markdown"]): part.metadata.update({"source": page["final_url"], "title": page.get("title", "")}) chunks.append(part) return chunks docs = load_pages(["https://example.com/docs/install", "https://example.com/docs/configure"]) print(len(docs), "chunks", isinstance(docs[0], Document) if docs else "") ``` ## LangChainエージェントにread_urlツールを与えるには? `langchain_core.tools`の`@tool`で関数をデコレートします。docstringがモデルに読まれるツールの説明になるため、ツールが何を返すか、いつ使うかを書いてください。プレーンテキストを返します。タイトル行、ソース、Markdownを並べ、モデルに合わせて`max_chars`で切り詰めます。 ツール呼び出しをサポートする任意のチャットモデルにツールをバインドするか、エージェントのコンストラクタに渡します。モデルはその後、会話内または検索結果のURLを使って`read_url`を呼び出します。 *LangChain: read_urlツール* ```python import os from langchain.chat_models import init_chat_model from langchain_core.tools import tool from reader import PageError, read_page @tool def read_url(url: str, max_chars: int = 20000) -> str: """Read a public web page and return its main content as Markdown, with its title and source URL.""" try: page = read_page(url, max_chars=max_chars) except PageError as exc: return "Could not read the page: " + str(exc) return "# " + (page.get("title") or url) + "\nSource: " + page["final_url"] + "\n\n" + page["markdown"] model = init_chat_model(os.environ.get("CHAT_MODEL", "openai:gpt-4.1-mini")).bind_tools([read_url]) reply = model.invoke("Summarise https://example.com/blog/first-post in three bullet points.") print(reply.tool_calls) ``` ## LlamaIndexで同じことをするには? LlamaIndexは独自の`Document`クラスを使い、`text`と`metadata`、そして関数をツールに変換する`FunctionTool.from_defaults`を利用します。ヘルパーは同じままです。ドキュメントから`VectorStoreIndex.from_documents`でインデックスを構築します。これはLlamaIndexの設定で指定した埋め込みモデルを使用します。 *LlamaIndex: クロールのインデックス化とread_urlツール* ```python import os import time import requests from llama_index.core import Document, VectorStoreIndex from llama_index.core.tools import FunctionTool from reader import HEADERS, PageError, read_page def crawl_pages(start_url, limit=200): job = requests.post("https://webreaderapi.com/api/v1/crawl", headers=HEADERS, json={"url": start_url, "limit": limit}, timeout=30).json() pages, cursor = [], None while True: params = {"cursor": cursor} if cursor else {} res = requests.get("https://webreaderapi.com/api/v1/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=30).json() pages += [r for r in res["results"] if "error" not in r] cursor = res.get("next_cursor") if not cursor and res["status"] == "done": return pages if not cursor: time.sleep(5) pages = crawl_pages("https://docs.example.com/") docs = [Document(text=p["markdown"], metadata={"source": p["final_url"], "title": p.get("title", "")}) for p in pages] index = VectorStoreIndex.from_documents(docs) print(index.as_query_engine().query("How do I install the product?")) def read_url(url: str, max_chars: int = 20000) -> str: """Read a public web page and return its main content as Markdown.""" try: return read_page(url, max_chars=max_chars)["markdown"] except PageError as exc: return "Could not read the page: " + str(exc) read_tool = FunctionTool.from_defaults(fn=read_url, name="read_url") print(os.environ.get("CHAT_MODEL", "set CHAT_MODEL for your agent"), read_tool.metadata.name) ``` ## 小さなRAGインデックスにはどのくらいの規模のクロールが必要ですか? 思うより少なくて済みます。製品のドキュメントは数百ページであることが多く、`include_paths`をドキュメントのセクションに設定したクロールはその部分だけを読みます。1ページ1クレジットなら、300ページのドキュメントサイトは約300クレジットで、10,000ページ ($3.75) なら何度でも更新できます。 情報源の変化頻度に合わせたスケジュールで再クロールし、前回の実行と`final_url`および`word_count`を比較して、変更されたページだけを再埋め込みします。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 ## LangChainとLlamaIndex: よくある質問 ### LangChainやLlamaIndex用のWebReaderAPIパッケージはありますか? いいえ。このページのヘルパーとツールが統合のすべてであり、自由に改変できます。WebReaderAPIはプレーンなHTTPS APIで、任意のPython HTTPクライアントから呼び出せます。 ### 必要なLangChainのバージョンは? `langchain_core`、`langchain-text-splitters`、`init_chat_model`を備えた最近のバージョンであればどれでも構いません。ツールデコレーターと`Document`クラスは最近のリリースで安定しています。 ### 変更されていないページの再読み取りを避けるには? `final_url`、`word_count`、各読み取りの日付を保存します。スケジュールに従って再読み取りし、ページの語数またはコンテンツハッシュが変わった場合にのみ再埋め込みします。再読み取りごとに1クレジットかかるので、情報源に合ったペースを選んでください。 ### 一部のページが拒否された場合は? `blocked_by_robots`などのコードとともに`PageError`が発生し、クレジットは消費されません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Claude、Cursor、その他のMCPクライアント向けのWebページリーダーMCPサーバー > Claude Desktop、Cursor、その他のMCPクライアント向けのWebページリーダーMCPサーバー。クリーンなMarkdownを返す40行のPython read_urlツールです。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/mcp/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 任意のMCPクライアントに、リンクをクリーンなMarkdownに変換する`read_url`ツールを追加できます。サーバーはお手持ちのマシンで実行する短いPythonファイル1つで、APIキーはその環境変数に保持されます。 **概要 — MCPでClaude DesktopやCursorにWebページリーダーを追加するには?** **WebReaderAPI**を呼び出す`read_url`ツールを公開する小さなMCPサーバーを実行し、クライアントのMCP設定で`env`にキーを設定して登録します。これでモデルは任意の公開ページをクリーンなMarkdownとして読めるようになります。ページ読み取り1回につき1クレジット、ブラウザ使用時は2クレジットで、2026年10月時点では$0.07/1Kページから。KYC不要、暗号資産で支払い。 ## MCPサーバーの概要 | 項目 | 値 | | --- | --- | | 言語 | Python 3.10+、`mcp`および`httpx`パッケージを使用 | | トランスポート | stdio:クライアントがサーバーをローカルプロセスとして起動 | | ツール | `read_url(url, max_chars)` → タイトル、ソースURL、続いてページのMarkdown | | web_fetchを使わない理由 | Claude CodeとOpenClawには、すでにその名前の組み込みツールが搭載されています | | キー | サーバーの環境変数`WEBREADER_API_KEY`から読み取り | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | ## read_urlツールを使い、web_fetchを使わないのはなぜ? 同じ名前のツールが2つあると、クライアントとモデルの両方が混乱するからです。Claude CodeとOpenClawには、すでに`web_fetch`という名前のツールが含まれています。別の名前`read_url`と明確な説明があれば、ページの本文(JavaScriptページやPDFを含む)が必要なときにモデルがこちらを選べます。 このツールはJSONではなくテキストを返します。モデルはネストされたフィールドよりも短いヘッダーとMarkdownをうまく扱え、ヘッダーにソースURLが残るため回答で引用できます。 *webreader_mcp.py* ```python import os import httpx from mcp.server.fastmcp import FastMCP API = "https://webreaderapi.com/api/v1/read" KEY = os.environ["WEBREADER_API_KEY"] mcp = FastMCP("webreaderapi") @mcp.tool() def read_url(url: str, max_chars: int = 20000) -> str: """Read a public web page and return its main content as Markdown. Use it when the user gives a link or when a page must be read to answer. max_chars caps the length of the returned text (1,000 to 500,000). """ params = {"url": url, "max_chars": max(1000, min(int(max_chars), 500000))} try: resp = httpx.get(API, params=params, headers={"Authorization": "Bearer " + KEY}, timeout=75) except httpx.HTTPError as exc: return "Network error while reading the page: " + str(exc) body = resp.json() if resp.status_code != 200: err = body.get("error", {}) return "Could not read the page: " + err.get("code", str(resp.status_code)) + ". " + err.get("message", "") title = body.get("title") or url return "# " + title + "\nSource: " + body.get("final_url", url) + "\n\n" + body.get("markdown", "") if __name__ == "__main__": mcp.run() ``` ## サーバーのインストールとテスト方法は? 仮想環境を作成し、`mcp`と`httpx`をインストールして、上記のファイルを保存します。`mcp`パッケージはModel Context Protocolの公式Python SDKで、`FastMCP`は型付きPython関数をツールに変換し、docstringをその説明として使います。 クライアントに組み込む前に、キーを設定した状態でターミナルからファイルを一度実行してください。stdinでクライアントを静かに待機していれば、正しく起動しています。Ctrl+Cで停止できます。 *インストール* ```bash python -m venv .venv . .venv/bin/activate pip install "mcp[cli]" httpx WEBREADER_API_KEY="your-key" python webreader_mcp.py ``` ## Claude Desktopに登録するには? Claude Desktopの開発者設定を開き、`claude_desktop_config.json`を編集して、`mcpServers`の下にエントリを追加します。仮想環境のPythonとサーバーファイルの絶対パスを使用してください。キーは`env`に入れると、ツールの引数や会話に表示されることはありません。Claude Desktopを再起動すると、`read_url`がツール一覧に表示されます。 Cursorは独自のMCP設定ファイルから同じ`mcpServers`構造を読み取り、Claude Codeは`claude mcp add`コマンドで同じコマンドを登録できます。OpenClawについては[OpenClawページ](https://webreaderapi.com/ja/docs/openclaw/)をご覧ください。 *claude_desktop_config.json* ```json { "mcpServers": { "webreaderapi": { "command": "/home/you/webreader/.venv/bin/python", "args": ["/home/you/webreader/webreader_mcp.py"], "env": { "WEBREADER_API_KEY": "your-key" } } } } ``` ## ページをモデルのコンテキスト内に収めるには? `max_chars`を下げてください。デフォルトの20,000文字はほとんどの記事に十分で、長いページがコンテキストを埋めるのを防ぎます。1つの回答で複数ページを読むモデルには、1ページあたり8,000〜12,000文字が適しています。 モデルには、目にするすべてのリンクではなく、必要なページだけを読むよう指示してください。プロジェクトの指示に「1つの質問につき最大3ページまで読む」といった短い一文を入れておくと、コストとコンテキストの両方を抑えられます。 ## サイトが読み取りを拒否した場合はどうなりますか? ツールは`blocked_by_robots`や`target_refused`などのエラーコードを含む短いメッセージを返し、課金は発生しません。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。モデルはその後、そのページは自動リーダーには利用できないと伝え、別のソースを使えます。 ## MCPサーバー:よくある質問 ### WebReaderAPIの公式MCPパッケージはありますか? いいえ。このページのファイルが統合そのものです。読んで、変更して、自分で実行できる40行です。当社からインストールするものはなく、キーは当社APIへの呼び出し以外ではお客様のマシンから出ることはありません。 ### このサーバーでモデルはWeb検索できますか? いいえ。`read_url`は、お客様またはモデルがすでにアドレスを持っているページを読み取ります。クライアントが提供する任意の検索ツールと組み合わせてください。モデルが検索し、その後重要なページを読み取ります。 ### これを使ってアシスタントを運用するコストは? ページ読み取り1回につき1クレジット、ブラウザが必要な場合は2クレジットです。1日に50ページを読むアシスタントは月に約1,500クレジットを使用し、10,000ページ($3.75)で約6か月分をカバーできます。 ### サーバーはオフラインで動作しますか? いいえ。ページごとに`https://webreaderapi.com/api/v1/read`を呼び出すため、インターネット接続と有効なキーが必要です。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPIでn8n AIエージェントからWebページを読む > n8n AIエージェントでWebページを読む:任意のURLをクリーンなMarkdownに変換するHTTP Requestツール設定と、スケジュール実行ワークフロー。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/n8n/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) n8nのHTTP Requestノードは、AI Agentノードのツールとして使えます。`/read`を指定し、URLはモデルに入力させれば、エージェントは任意の公開ページをクリーンなMarkdownとして読めます。コミュニティノードのインストールは不要です。 **概要 — n8nのAIエージェントにWebページを読ませるには?** HTTP Requestノードをツールとしてn8nのAI Agentに接続し、メソッドを`GET https://webreaderapi.com/api/v1/read`に設定、**WebReaderAPI**キーを持つHeader Auth認証情報を指定して、`url`パラメータはモデルに定義させます。Optimize Responseをオンにして`title`、`final_url`、`markdown`だけを残します。1ページにつき1クレジット、2026年10月時点で$0.07/1Kページから。KYC不要、暗号資産で支払い。 ## どのHTTP Request設定を使えばいい? オプション名は、2026-10-22に確認したn8nのHTTP Requestノードのドキュメントに準拠しています。 | 設定 | 値 | | --- | --- | | 配置 | **AI Agent**ノードにツールとして接続 | | メソッド | `GET` | | URL | `https://webreaderapi.com/api/v1/read` | | 認証 | Generic credentials → **Header Auth** | | Header Auth認証情報 | Name `Authorization`、Value `Bearer ` の後にAPIキーを続ける | | Send Query Parameters | オン、**Using Fields Below** | | パラメータ `url` | モデルが定義(下記参照) | | パラメータ `max_chars` | `15000` などの固定値 | | Optimize Response | オン · response type **JSON** · Include Fields **Selected**: `title`、`final_url`、`markdown` | ## なぜHTTP Requestノードをツールとして使うのか? このAPIに必要な処理をすでにすべて備えているからです。GETリクエスト1回、ヘッダー1つ、クエリパラメータ2つだけです。n8nのドキュメントには、HTTP Requestノードは通常のノードとしても、AIエージェントにツールとして接続しても実行でき、一部のオプションはツール形式でのみ存在すると記載されています。 インストールや更新が必要なものはなく、キーはワークフロー内ではなくn8nの認証情報ストアに保管されます。n8n専用のキーを発行しておけば、他のスクリプトとは別に使用状況を確認でき、そのキーだけを無効化できます。APIキーは複数作成できます(例:エージェントやプロジェクトごとに1つ)。ダッシュボードからいつでも失効できます。 ## モデルはどうやって読み取るURLを選ぶのか? `url`パラメータをモデルに定義させます。n8nは該当するパラメータフィールドの横にボタンを表示し、値をモデルに渡せるようにしています。n8nの`$fromAI()`関数を使って自分で式を書くこともできます。キー、説明、型、任意のデフォルト値を指定でき、たとえばキー`url`、説明「The http or https address of the page to read」、型`string`とします。 n8nのドキュメントによると、`$fromAI()`はAI Agentノードに接続されたツールでのみ動作します。ツールの説明も「Reads a public web page and returns its main content as Markdown」のように平易な言葉で書き、エージェントがいつ呼び出すべきか分かるようにします。 ## なぜOptimize Responseをオンにするのか? ツールが返すものはすべてモデルのコンテキストに入るからです。Optimize Responseはツール専用のオプションで、モデルに渡すデータを削減します。JSONレスポンスタイプでは選択したフィールドだけを含められます。`title`、`final_url`、`markdown`を残し、それ以外は削除します。 長さは`max_chars`でこちら側で制限できます。APIから出る前にMarkdownが切り詰められます。ノードのHTMLおよびTextレスポンスタイプには独自のTruncate Responseオプションがありますが、当社のJSONレスポンスでは`max_chars`のほうがシンプルな制御方法です。 ## スケジュール実行ワークフローでAPIを使うには? HTTP Requestノードをツールではなく通常のノードとしてSchedule Triggerの後ろに置きます。`url`を固定値で指定し(追跡している変更履歴や料金ページなど)、`markdown`フィールドを次のノードに渡します。ファイル、データベース、チャットメッセージ、または前回の実行結果との比較などです。 1回の実行でURLごとに1ページを読みます。ブラウザを使わないページなら、20ページを1日1回監視しても月に約600クレジットなので、10,000ページ($3.75)で1年以上もちます。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 ## サイトが読み取りを拒否した場合はどうなりますか? ノードが`blocked_by_robots`や`target_refused`などのコードのエラーレスポンスを受け取ることがあり、課金は発生しません。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。エージェント内では、ツールがエラーを返すようにしてモデルが説明したり別のソースを試したりできるようにします。スケジュール実行ワークフローでは、エラーをログ記録するブランチに振り分けます。[errorsページ](https://webreaderapi.com/ja/docs/errors/)にはすべてのコードが掲載されています。 ## ワークフローを構築する前に呼び出しを試せますか? [curlレシピ](https://webreaderapi.com/ja/docs/curl/)に示すように、ターミナルで同じ呼び出しをcurlで実行してください。そこで成功してn8nで失敗する場合は、原因はノード設定にあります。多くは認証情報の値に`Bearer `プレフィックスがない、または`url`パラメータが空のままになっていることです。 ## n8n:よくある質問 ### WebReaderAPIにコミュニティノードは必要ですか? いいえ。組み込みのHTTP Requestノードで十分です。AI Agentのツールとしても、任意のワークフローの通常ノードとしても使えます。 ### エージェントはJavaScriptページやPDFを読めますか? はい。APIがブラウザが必要かどうかを判断し(`render=auto`)、PDFもテキストとして読み取ります。レンダリングされたページは2クレジットを使用します。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。 ### エージェントが読み取りすぎるページ数を制限するには? エージェントのシステムメッセージで読み取れるページ数を指定し、`max_chars`を控えめに保ちます。各読み取りは1回のツール呼び出しなので、エージェントのツール呼び出しに設定した制限はページ数にも上限を課します。 ### クレジットの支払い方法は? BTC, USDT, USDC, ETH, SOL, LTCの$25からチャージし、その後パックを購入します。WebReaderAPIでは身分証明書、自撮り写真、会社書類の提出は不要です。 ## ソース 1. [HTTP Requestノード](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) — n8n docs (read 2026-10-22) 2. [HTTP Request認証情報](https://docs.n8n.io/integrations/builtin/credentials/httprequest/) — n8n docs (read 2026-10-22) 3. [AI Agentノード](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/) — n8n docs (read 2026-10-22) 4. [$fromAI()でAIにツールパラメータを指定させる](https://docs.n8n.io/advanced-ai/examples/using-the-fromai-function/) — n8n docs (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Node.jsでWebページをMarkdownに変換 > Node.jsのネイティブfetchでWebページをMarkdownに変換:1ページ、小さな並列プール、クロールのポーリングループ。$0.07/1Kページから、KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/node/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Node.js 18以降には`fetch`が同梱されているため、依存関係はまったく不要です。3つのレシピ:1ページを読む、小さな並列プールでリストを読む、クロールジョブが完了するまで追跡する。 **概要 — Node.jsでWebページをMarkdownに変換するには?** Node.js 18以降の組み込み`fetch`を使います。`Authorization`ヘッダーにキーを入れて`https://webreaderapi.com/api/v1/read?url=…`を呼び出し、JSONの応答から`markdown`を読み取ります。**WebReaderAPI**はページの本文をタイトル、著者、日付とともに返します。1ページあたり1クレジット、ブラウザ使用時は2クレジットで、2026年10月時点で$0.07/1Kページから。KYC不要、暗号資産で支払い。 ## 何が必要ですか? Node.js 18以降(グローバルな`fetch`用)と、`WEBREADER_API_KEY`環境変数に設定したAPIキーです。例はESモジュールです:`.mjs`拡張子で保存するか、`package.json`で`"type": "module"`を設定して、トップレベルの`await`が動作するようにしてください。 JSDocコメントがレスポンスの形状を記述しているため、VS CodeなどのエディタではTypeScriptのビルド手順なしで補完が得られます。 *read.mjs:1ページ* ```javascript /** * @typedef {Object} Page * @property {string} url * @property {string} final_url * @property {number} status_code * @property {boolean} rendered * @property {number} credits_used * @property {string} [title] * @property {string} [author] * @property {string} [published_at] * @property {string} [language] * @property {string} [markdown] * @property {number} word_count */ /** @returns {Promise} */ export async function readPage(url, options = {}) { const params = new URLSearchParams({ url, ...options }); const res = await fetch(`https://webreaderapi.com/api/v1/read?${params}`, { headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}` }, signal: AbortSignal.timeout(75_000), }); const body = await res.json(); if (!res.ok) throw Object.assign(new Error(body.error.message), { code: body.error.code }); return body; } const page = await readPage('https://example.com/docs/getting-started', { max_chars: '20000' }); console.log(page.title, page.word_count, 'words,', page.credits_used, 'credit(s)'); ``` ## レート制限に達せずにURLのリストを読み取るには? 共有キューからURLを取得する固定数のワーカーを実行します。リスト全体に`Promise.all`を使うより簡単です。後者はすべてのリクエストを一度に開始し、`429 concurrency_limit`に達してしまいます。すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。 以下のプールはエラーを結果の隣に保持するため、1ページが拒否されても実行は止まりません。`blocked_by_robots`などの拒否は確定で無料です。数を数えて次に進んでください。 *pool.mjs:URLのリスト、8件ずつ* ```javascript import { readPage } from './read.mjs'; export async function readAll(urls, workers = 8) { const queue = [...urls]; const results = []; async function worker() { while (queue.length) { const url = queue.shift(); try { const page = await readPage(url, { max_chars: '50000' }); results.push({ url, page }); } catch (err) { results.push({ url, error: err.code ?? err.name }); } } } await Promise.all(Array.from({ length: workers }, worker)); return results; } const urls = Array.from({ length: 30 }, (_, i) => `https://example.com/blog/post-${i + 1}`); for (const r of await readAll(urls)) console.log(r.url, '->', r.error ?? r.page.title); ``` ## Node.jsでクロールジョブを追跡するには? `POST https://webreaderapi.com/api/v1/crawl`でジョブを開始し、ループで`https://webreaderapi.com/api/v1/jobs/{job_id}`を読み取ります。`next_cursor`が返ってくるたびに`cursor`を渡します。カーソルがなくステータスが`done`であれば、ジョブは完了しています。空のポーリングの間には待機し、待機時間を最大30秒まで倍にします。サイトのCrawl-delayを尊重するクロールは遅くなることがあるためです。 [バッチとクロールのページ](https://webreaderapi.com/ja/docs/crawl/)では、クロールがページをどのように選択するか、`limit`が読み取る内容をどのように制限するかを説明しています。 *crawl.mjs:クロールを開始し、すべてのページを収集する* ```javascript const headers = { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}`, 'Content-Type': 'application/json', }; const sleep = (ms) => new Promise((r) => setTimeout(r, ms)); const start = await fetch('https://webreaderapi.com/api/v1/crawl', { method: 'POST', headers, body: JSON.stringify({ url: 'https://docs.example.com/', limit: 300, include_paths: ['/docs/*'] }), }); const { job_id } = await start.json(); const pages = []; let cursor = ''; let wait = 2000; for (;;) { const url = `https://webreaderapi.com/api/v1/jobs/${job_id}${cursor ? `?cursor=${encodeURIComponent(cursor)}` : ''}`; const job = await (await fetch(url, { headers })).json(); pages.push(...job.results.filter((r) => !r.error)); if (job.next_cursor) { cursor = job.next_cursor; wait = 2000; continue; } if (job.status === 'done') break; await sleep(wait); wait = Math.min(wait * 2, 30000); } console.log(pages.length, 'pages read, job', job_id); ``` ## 結果をモデルに渡すには? JSON全体ではなくMarkdownを送信します。モデルが読むべきは`markdown`フィールドで、メタデータは引用のために保持する方が適しています。モデルがソースを名指しできるよう、タイトルと`final_url`を先頭に付け、`max_chars`をモデルのコンテキストに収まるサイズ(1ページあたり20,000文字など)に保ってください。 [OpenAI function callingのページ](https://webreaderapi.com/ja/docs/openai/)では、Pythonでの完全なツールループを示しています。上記の同じ`readPage`関数をNode.jsエージェントのツール本体として使用できます。 ## Node.js:よくある質問 ### Deno、Bun、ブラウザで動作しますか? DenoとBunは同じ`fetch`とESモジュールをサポートしています。ブラウザのページからAPIを呼び出さないでください。キーがすべての訪問者に見えてしまいます。代わりにサーバーから呼び出してください。 ### npmパッケージはありますか? いいえ。このページの関数が統合のすべてです。WebReaderAPIはプレーンなHTTPSとJSONなので、リトライ、タイムアウト、ロギングを自分で制御できます。 ### 429 concurrency_limitを処理するには? ワーカーの数を減らすか、毎回倍になる短い待機の後にリトライします。429にはコストはかからず、[エラーのページ](https://webreaderapi.com/ja/docs/errors/)にはすぐに使えるバックオフ関数があります。 ### 10,000ページを読むとどれくらいのコストですか? 通常のページなら約10,000クレジット、一部でブラウザが必要な場合はそれ以上です。10,000ページのコストは$3.75です。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # OpenAI function calling:モデル用のread_urlツール > read_urlツールを使ったOpenAI function calling:JSONスキーマと、リンクをモデル用のクリーンなMarkdownに変換するPythonループ。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/openai/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 1つの関数、`read_url`を定義し、モデルが要求したときに実行します。どのページを読むかはモデルが選び、あなたのコードがAPIを呼び出してMarkdownを返します。同じスキーマは、tool callingをサポートする他のモデルでも動作します。 **概要 — OpenAIのモデルにfunction callingでWebページを読ませるにはどうすればよいですか?** `tools`リスト内で`read_url`関数を宣言し、ループを実行します。モデルがツール呼び出しを返したら、URLを指定して**WebReaderAPI**の`/read`エンドポイントを呼び出し、Markdownを`tool`メッセージとして送り返します。各ページは1クレジット、ブラウザ使用時は2クレジットで、$0.07/1Kページ時点の価格は2026年10月現在です。KYC不要、暗号資産で支払い。 ## read_urlスキーマはどのような形ですか? パラメータは2つで十分です。必須の`url`(読み取る対象)と、モデルが長いページを短く保てる任意の`max_chars`です。最も重要なのはdescriptionで、ツールが何を返すか、いつ使うべきかをモデルに伝えます。事実に基づいて簡潔に保ちましょう。 エージェントランタイムの中には、同名のツールをすでに提供しているものがあるため、ツール名は`web_fetch`ではなく`read_url`としています。 *ツール定義* ```json { "type": "function", "function": { "name": "read_url", "description": "Read a public web page and return its main content as Markdown, with its title and source URL. Use it when the user gives a link or when a page must be read to answer.", "parameters": { "type": "object", "properties": { "url": { "type": "string", "description": "The http or https address of the page." }, "max_chars": { "type": "integer", "description": "Most characters to return, 1000 to 500000. Default 20000." } }, "required": ["url"], "additionalProperties": false } } } ``` ## tool callingのループはどのように動作しますか? `tools`リストを含めて会話を送信します。応答にツール呼び出しが含まれていれば、それぞれを実行し、結果をrole `tool`と対応する`tool_call_id`を持つメッセージとして追加し、再度モデルに問い合わせます。ツール呼び出しを含まない応答が返ってきたら、それが最終回答です。 ラウンド数には上限を設けましょう。数ページに関する質問なら3〜4回で十分であり、上限はより多くの読み取りを要求し続けるモデルからあなたを守ります。 *Python: openaiパッケージによる完全なループ* ```python import json import os import requests from openai import OpenAI READ_URL = { "type": "function", "function": { "name": "read_url", "description": "Read a public web page and return its main content as Markdown, with its title and source URL.", "parameters": { "type": "object", "properties": { "url": {"type": "string", "description": "The http or https address of the page."}, "max_chars": {"type": "integer", "description": "Most characters to return. Default 20000."}, }, "required": ["url"], "additionalProperties": False, }, }, } def read_url(url, max_chars=20000): resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": url, "max_chars": max_chars}, timeout=75, ) body = resp.json() if resp.status_code != 200: return "Could not read the page: " + body["error"]["code"] return "# " + (body.get("title") or url) + "\nSource: " + body["final_url"] + "\n\n" + body["markdown"] client = OpenAI() model = os.environ.get("OPENAI_MODEL", "gpt-4.1-mini") messages = [{"role": "user", "content": "What does https://example.com/blog/first-post announce? Answer in two sentences."}] for _ in range(4): reply = client.chat.completions.create(model=model, messages=messages, tools=[READ_URL]) msg = reply.choices[0].message if not msg.tool_calls: print(msg.content) break messages.append(msg) for call in msg.tool_calls: args = json.loads(call.function.arguments) messages.append({"role": "tool", "tool_call_id": call.id, "content": read_url(**args)}) ``` ## トークン使用量とコストを抑えるにはどうすればよいですか? 重要な設定は3つあります。`max_chars`を控えめに、1ページあたり約8,000〜20,000文字に保ちましょう。返すすべての文字がモデルに読まれるためです。デフォルトの`main_content=true`を維持すれば、メニューやフッターがコンテキストに入ることはありません。そして上記のようにループに上限を設ければ、1つの質問が数十回の読み取りを引き起こすことはありません。 当社側では、コストは文字数ではなくページ単位です: 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。1日に300ページを読むサポートアシスタントは月に約9,000クレジットを使用し、10,000ページ($3.75)の範囲内に収まります。 ## スキーマは他のモデルでも動作しますか? はい、ラッパーに小さな変更を加えるだけで動作します。ほとんどのtool calling APIはパラメータ用のJSON Schemaと、ツールの名前・説明を受け取るため、`read_url`はそのままプロバイダー間を移行できます。[MCPページ](https://webreaderapi.com/ja/docs/mcp/)はModel Context Protocolを扱うクライアント向けに同じ関数をパッケージ化し、[LangChainページ](https://webreaderapi.com/ja/docs/langchain/)はLangChainおよびLlamaIndexエージェント向けにラップします。 ## ページが拒否されたとき、モデルには何が見えるべきですか? 上記のループが返すような、短く明確な一文です: "Could not read the page: blocked_by_robots"。モデルはこれをうまく処理し、他のソースにフォールバックするか、ユーザーに伝えます。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。これらの拒否はいずれもクレジットを消費しません。 ## Function calling: よくある質問 ### Responses APIとChat Completionsのどちらが必要ですか? この例では`tools`パラメータを指定したChat Completionsを使用しています。同じ関数定義と同じ`read_url`ボディは、function toolsを受け入れる他のOpenAIインターフェースでも動作します。変わるのはそれらを囲むループだけです。 ### モデルは1ターンで複数のページを読めますか? はい。応答には複数のツール呼び出しを含めることができ、ループはそれぞれを実行し、再度モデルに問い合わせる前にすべての結果を返します。モデルが一度に多くのページを読む場合は、`max_chars`を低めに保ちましょう。 ### APIキーはモデルに公開されますか? いいえ。キーはあなたのコードの環境に留まります。モデルが見るのはツールの名前、説明、およびあなたの関数が返すテキストだけです。 ### 拒否されたページのコストはいくらですか? ゼロです。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # OpenClaw: web_fetchの隣に、MCP経由でWebページリーダーを追加 > MCP経由でOpenClawにWebページリーダーを追加: openclaw mcp add、doctor --probe、そしてread_urlが組み込みのweb_fetchをどう補完するか。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/openclaw/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) OpenClawには軽量なページ向けの`web_fetch`ツールがすでにあります。当社のMCPサーバーを追加すると、エージェントはJavaScriptページ、PDF、より長い文書向けの2つ目のリーダー`read_url`を得られます。セットアップはコマンド1つです。 **概要 — OpenClawにWebページリーダーAPIを追加するにはどうすればよいですか?** **WebReaderAPI** MCPサーバーを保存し、`openclaw mcp add webreaderapi --command … --arg … --env WEBREADER_API_KEY=…`で登録して`openclaw mcp doctor --probe`で確認します。エージェントは組み込みの`web_fetch`の隣に`read_url`ツールを得て、JavaScriptのレンダリングやPDFの読み取りが可能になります。ページは1クレジットで、$0.07/1Kページ時点の価格は2026年10月現在です。KYC不要、暗号資産で支払い。 ## OpenClawのweb_fetchとread_urlの比較 | 項目 | 値 | | --- | --- | | web_fetch(組み込み) | ローカルで実行し、Readabilityで本文抽出を行い、Markdownまたはテキストを返します | | web_fetchの制限 | JavaScript実行なし、`maxChars`がデフォルトで上限は20,000文字(OpenClawドキュメント) | | read_url(当社のMCPツール) | 必要に応じてJavaScriptをレンダリング、最大100ページのPDF、最大500,000文字 | | read_urlのコスト | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | 当社のクローラー | `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`、robots.txtを尊重 | | ツールプロファイル | MCPツールは`coding`と`messaging`プロファイルに表示され、`minimal`には表示されません | ## OpenClawにweb_fetchがあるのになぜリーダーを追加するのか 対象とするページが異なるからです。OpenClawのドキュメントによれば、`web_fetch`は常にローカルで実行され、本文抽出にReadabilityを使い、JavaScriptを実行しません。JavaScriptを多用するサイトやログインが必要なサイトには、同ツールのWeb Browserツールを使うよう案内しています。`maxChars`設定はデフォルトで20,000文字に設定され、その値で上限となります。 軽量で素早く読めるページには`web_fetch`を使い続けてください。JavaScriptでコンテンツを生成するページ、PDF、20,000文字を超えて読みたい長いドキュメントには`read_url`を追加してください。OpenClawのドキュメントには、公式のFirecrawlプラグインが現在、`web_fetch`がフォールバックできる唯一の同梱プロバイダーであるとも記されています。 ## OpenClawにMCPサーバーを登録するにはどうすればよいですか? まず[MCPページ](https://webreaderapi.com/ja/docs/mcp/)からPythonサーバーをセットアップします。ファイル1つと`mcp`・`httpx`パッケージが必要です。次にOpenClawで`openclaw mcp add`を使って保存します。OpenClawのレジストリドキュメントにはstdioフラグ`--command`、`--arg`、`--env`、`--cwd`が記載されており、保存された定義は設定内の`mcp.servers`に格納されます。 その後`openclaw mcp doctor --probe`を実行してください。`--probe`を付けない場合、doctorは保存された設定のみを確認しますが、付けると有効なサーバーが接続できることも確認します。 *サーバーの登録と確認* ```bash openclaw mcp add webreaderapi \ --command /home/you/webreader/.venv/bin/python \ --arg /home/you/webreader/webreader_mcp.py \ --env WEBREADER_API_KEY=your-key openclaw mcp doctor webreaderapi --probe ``` ## エージェントはread_urlを認識しますか? 通常のプロファイルでは認識します。OpenClawのレジストリドキュメントによれば、組み込みのOpenClawは設定済みのMCPツールを`coding`と`messaging`プロファイルで公開します。`minimal`プロファイルでは非表示になり、`tools.deny: ["bundle-mcp"]`では無効になるため、ツールが表示されない場合はこの2つの設定を確認してください。 ツールの説明には、モデルがいつ優先すべきかが記載されています。JavaScriptが必要なページ、PDF、長い読み取りです。それ以外はモデルが引き続き`web_fetch`を使えます。 ## read_urlは読み取るサイトをどう扱いますか? 当社のAPIへのすべての呼び出しと同じ扱いです。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 したがってログインの背後にあるページは`read_url`の対象外です。ログイン済みのサイトには、OpenClaw自身のブラウザツールをあなたのセッションで実行するのが適切です。 ## OpenClaw経由でページを読むコストはいくらですか? コンテンツが返ってきたページは1クレジット、ブラウザが必要な場合は2クレジット、拒否やエラーは無料です。チャットチャネル全体で1日30ページを読むアシスタントは、月に約900クレジットを使用します:10,000ページ($3.75)でほぼ1年持ちます。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。 OpenClaw専用のAPIキーを発行すれば、他のプロジェクトとは別に使用状況を確認できます。 ## OpenClaw:よくある質問 ### WebReaderAPIはOpenClawの組み込みプロバイダーですか? いいえ。MCPサーバーとして接続するもので、OpenClawはプラグインコードなしでこれをサポートします。MCPサーバーは[MCPページ](https://webreaderapi.com/ja/docs/mcp/)にある短いPythonファイルです。 ### web_fetchは無効にすべきですか? 必要ありません。両方のツールを有効にしておけます。説明によってモデルがどちらを使うべきか判断します。すべての読み取りを1か所にまとめてログを取りたい場合にのみ`web_fetch`を無効にしてください。 ### OpenClawのWebインターフェースからサーバーを管理できますか? OpenClawのドキュメントにはControl UIでのMCP設定が記載されており、コマンドラインと同じ保存済みの定義を編集します。使いやすい方をお使いください。 ### サンドボックス化されたOpenClaw環境でも動作しますか? MCPサーバーは`https://webreaderapi.com/api/v1/read`に到達するためにインターネットアクセスが必要なローカルプロセスです。サンドボックスがそのプロセスの起動とHTTPS呼び出しを許可しているか確認してください。 ## ソース 1. [Webツール](https://docs.openclaw.ai/tools/web) — OpenClaw docs (read 2026-10-22) 2. [Web Fetch](https://docs.openclaw.ai/tools/web-fetch) — OpenClaw docs (read 2026-10-22) 3. [保存済みMCPサーバーの管理](https://docs.openclaw.ai/cli/mcp/registry) — OpenClaw docs (read 2026-10-22) 4. [Control UIでのMCP](https://docs.openclaw.ai/cli/mcp/control-ui) — OpenClaw docs (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # PythonでWebページをMarkdownに変換 > PythonでWebページをMarkdownに変換:requests、同時実行数上限付きの非同期httpx、バッチジョブ、見出し単位のRAGチャンキング。$0.07/1Kページから、KYC不要。 - URL: https://webreaderapi.com/ja/docs/python/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) ほとんどのPythonプロジェクトをカバーする4つのレシピ:requestsで1ページを読み取る、httpxで複数ページを並行して読み取る、リストをバッチジョブに渡す、Markdownをベクトルストア用にチャンク分割する。 **概要 — PythonでWebページをMarkdownに変換するにはどうすればよいですか?** **WebReaderAPI**を`requests.get("https://webreaderapi.com/api/v1/read", params={"url": ...})`と`Authorization`ヘッダーのキーとともに呼び出します。JSONの応答にはページの本文が`markdown`で入っています。複数ページには、セマフォ付きの`httpx.AsyncClient`またはバッチジョブを使います。1ページ1クレジットで、2026年10月時点で$0.07/1Kページから利用できます。KYC不要、暗号資産で支払い。 ## 何をインストールする必要がありますか? Python 3.9以降とHTTPクライアントが1つ必要です。1ページずつ読み取るスクリプトには`requests`で十分です。`httpx`は多数のページを並行処理する非同期サポートを追加します。当社のパッケージは不要です:APIはプレーンなHTTPSとJSONです。 キーはコードに含めないでください。以下のすべての例と同様に、`WEBREADER_API_KEY`環境変数から読み取り、プロジェクトごとに専用のキーを発行すれば、他のキーに触れずに1つだけを失効できます。 *インストール* ```bash pip install requests httpx export WEBREADER_API_KEY="your-key" ``` ## requestsで1ページを読み取るにはどうすればよいですか? `url`と任意のオプションをクエリパラメータとして送信し、HTTPエラーで例外を発生させ、必要なフィールドを読み取ります。この例では本文を保持し、モデル用に20,000文字で上限を設定し、呼び出しにかかったコストを出力します。 *requests:1ページ* ```python import os import requests API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} def read(url, **options): resp = requests.get(API, headers=HEADERS, params={"url": url, **options}, timeout=75) if resp.status_code != 200: error = resp.json()["error"] raise RuntimeError(error["code"] + ": " + error["message"]) return resp.json() page = read("https://example.com/docs/getting-started", max_chars=20000) print(page["title"], page["word_count"], "words", page["credits_used"], "credit(s)") print(page["markdown"][:500]) ``` ## httpxで複数ページを一度に読み取るにはどうすればよいですか? `httpx.AsyncClient`を1つと、同時実行数の上限以下に設定した`asyncio.Semaphore`を使います。すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。1ページのエラーで他のページが止まるべきではないため、この例では例外を発生させる代わりに結果と並べてエラーを収集します。 上限を超えると、APIは`429 concurrency_limit`を返します。課金はされませんが、ページは読み取られません。セマフォを上限以下に保つほうが、リトライするより簡単です。 *httpx:最大10ページを同時実行* ```python import asyncio import os import httpx API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} async def read_one(client, sem, url): async with sem: resp = await client.get(API, params={"url": url, "max_chars": 50000}) body = resp.json() if resp.status_code == 200: return url, body, None return url, None, body["error"]["code"] async def read_many(urls, limit=10): sem = asyncio.Semaphore(limit) async with httpx.AsyncClient(headers=HEADERS, timeout=75) as client: return await asyncio.gather(*(read_one(client, sem, u) for u in urls)) if __name__ == "__main__": urls = [f"https://example.com/blog/post-{n}" for n in range(1, 21)] for url, page, error in asyncio.run(read_many(urls)): print(url, "->", error or page["title"]) ``` ## 代わりにバッチジョブはいつ使うべきですか? 最大100件のURLリストがあり、各ページを準備ができた瞬間に取得する必要がない場合です。バッチジョブは当社側で実行されるため、あなたのスクリプトは接続を開いたままにせず、リトライ処理も行いません。`POST https://webreaderapi.com/api/v1/batch`で開始し、[バッチとクロールのページ](https://webreaderapi.com/ja/docs/crawl/)に示すカーソルループでジョブから結果を収集します。 サイト全体の場合は、代わりにクロールを開始し、sitemapとリンクをたどらせます。同じページに、ページごとに1つの`.md`ファイルを書き出す完全なループがあります。 *バッチジョブの開始* ```python import os import requests urls = [f"https://example.com/changelog/{year}" for year in range(2020, 2027)] resp = requests.post( "https://webreaderapi.com/api/v1/batch", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, json={"urls": urls, "options": {"format": "markdown", "main_content": True}}, timeout=30, ) resp.raise_for_status() print("job:", resp.json()["job_id"]) ``` ## RAG用にMarkdownをチャンクに分割するにはどうすればよいですか? まず見出しで分割し、次にサイズで分割します。見出しはトピックが変わる位置を示すため、見出しから始まるチャンクはレトリーバーがマッチしやすくなります。各チャンクのメタデータにページタイトルと見出しパスを保持してください。モデルが正しいセクションを引用するのに役立ちます。 以下の関数は追加のライブラリを必要としません。`#`から`###`の見出しで分割し、その後、長いセクションを空行で分割して文字数予算内に収めます。各チャンクとともに`final_url`を保存し、同じページに至る2つのアドレスが重複を作らないようにします。 *見出しでMarkdownをチャンク化する* ```python import re def chunk_markdown(page, max_chars=2000): """Split a /read response into chunks with a heading path and the source URL.""" chunks, path, buf = [], [], [] def flush(): text = "\n".join(buf).strip() while text: part = text[:max_chars] cut = part.rfind("\n\n") if len(text) > max_chars and cut > max_chars // 2: part = part[:cut] chunks.append({"text": part.strip(), "section": " > ".join(path), "title": page.get("title"), "source": page["final_url"]}) text = text[len(part):].strip() buf.clear() for line in page["markdown"].splitlines(): m = re.match(r"^(#{1,3}) (.+)", line) if m: flush() level = len(m.group(1)) path[:] = path[: level - 1] + [m.group(2).strip()] buf.append(line) flush() return chunks ``` ## Pythonジョブのコストはいくらですか? リクエストではなくページを数えます。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。ブラウザを使わずに2,000件のドキュメントページを読むと約2,000クレジットを使用し、これは10,000ページ($3.75)で5回分以上をカバーします。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残りますため、月に1回実行するパイプラインは読んだ分だけを使用します。 ## Python:よくある質問 ### 公式のPythonパッケージはありますか? いいえ。このページのコードだけで十分です。WebReaderAPIはプレーンなHTTPS APIであり、`requests`や`httpx`はそれを直接扱えます。 ### robots.txtが拒否するページはどう処理すればよいですか? エラーコードを確認してください。`blocked_by_robots`と`target_refused`は最終的で無料です。記録して続行してください。[エラーページ](https://webreaderapi.com/ja/docs/errors/)には、変化しうるコードのみをリトライするリトライヘルパーがあります。 ### JupyterノートブックからAPIを使えますか? はい。`requests`のレシピはそのまま動作します。ノートブックでは、イベントループがすでに実行されているため、`await read_many(urls)`が`asyncio.run`の代わりになります。 ### クライアントのタイムアウトはどれを使うべきですか? API自体より少し長めにしてください。デフォルトは30秒、最大は60秒なので、クライアント側で75秒にすると遅いサイトとレスポンスのための余裕ができます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # エンドポイントリファレンスを読む:GETおよびPOST /read > エンドポイントリファレンスを読む:GETおよびPOST /readのすべてのパラメータを、formatやrenderからcountryやmax_charsまで、例付きで解説。$0.07/1Kページから、KYC不要。 - URL: https://webreaderapi.com/ja/docs/read/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) `/read`は1つの公開ページを取得し、本文を抽出してMarkdown、プレーンテキスト、またはクリーンなHTMLとして返します。このページではすべてのパラメータ、そのデフォルト値、およびコストを一覧にしています。 **概要 — WebReaderAPIのreadエンドポイントはどのパラメータを取りますか?** **WebReaderAPI**の`/read`エンドポイントには必須パラメータが1つ、`url`があります。オプションのパラメータでは、出力形式(`format`)、ページの保持範囲(`main_content`)、ブラウザを実行するか(`render`)、リンクと画像、読み取り国、文字数上限、タイムアウトを選択します。通常のページは1クレジット、ブラウザ使用時は2クレジットで、2026年10月時点で$0.07/1Kページから。KYC不要、暗号資産で支払い。 ## /read at a glance | 項目 | 値 | | --- | --- | | メソッド | クエリパラメータ付きの`GET`、または同じ名前を使ったJSONボディ付きの`POST` | | URL | `https://webreaderapi.com/api/v1/read` | | 必須 | `url`:httpまたはhttpsのアドレス、最大2,048文字 | | デフォルトの出力 | 本文のMarkdown | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | 国 | ページを読み取る国を指定すると10クレジットが加算されます。その場合、ページはその国のレジデンシャル接続経由で読み取られるためです | | PDF | 20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです | | クローラーの識別情報 | `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)` | ## 1ページを読む(GET) `GET /api/v1/read` 1つの公開ページを取得し、その本文をページのメタデータ付きでMarkdownとして返します。パラメータはクエリ文字列にURLエンコードして指定します。例はブログ記事を読み取ります。ID、日付、値は例示用です。 認証:`Authorization: Bearer API_KEY`ヘッダーのAPIキー。 **パラメータ** | 名前 | 場所 | 型 | 必須 | 説明 | | --- | --- | --- | --- | --- | | `url` | query | string | はい | 読み取るページ:httpまたはhttps、最大2,048文字。プライベート、ローカル、クラウドメタデータのアドレスは拒否されます。 | | `format` | query | string | いいえ | `markdown`(デフォルト)、`text`(プレーンテキスト、マークアップなし)、または`html`(コンテンツのクリーンなHTML)。 | | `main_content` | query | boolean | いいえ | `true`(デフォルト)は記事または本文のみを保持します。`false`はメニューやフッターを含むページ全体を変換します。 | | `render` | query | string | いいえ | `auto`(デフォルト)は生のHTMLにテキストが少なすぎる場合にのみブラウザを起動します。`true`は常に、`false`は決して起動しません。レンダリングされたページは2クレジットかかります。 | | `include_links` | query | boolean | いいえ | `true`は`{url, text}`の`links`リストを追加します。デフォルトは`false`。 | | `include_images` | query | boolean | いいえ | `true`はMarkdown内の画像を`![alt](src)`として保持します。デフォルトは`false`。 | | `country` | query | string | いいえ | 2文字の国コード(ISO 3166-1 alpha-2)。その国のアドレスからページを読み取り、10クレジット追加(レジデンシャル接続)。 | | `max_chars` | query | integer | いいえ | 出力をこの文字数で切り捨てます。1,000〜500,000。モデルのコンテキストに収めるのに便利です。 | | `timeout` | query | integer | いいえ | サイトの待機秒数(5〜60)。デフォルトは30。 | | `api_key` | query | string | いいえ | `Authorization`ヘッダーを送信しない場合に使用するAPIキー。 | **レスポンス** `200` ```json { "url": "https://example.com/blog/first-post", "final_url": "https://example.com/blog/first-post", "status_code": 200, "fetched_at": "2026-10-22T09:41:12Z", "rendered": false, "credits_used": 1, "title": "Our first post", "description": "Why we started this blog and what comes next.", "language": "en", "author": "Jane Doe", "published_at": "2026-10-01", "site_name": "Example Blog", "markdown": "# Our first post\n\nWe started this blog to share what we learn...\n\n## What comes next\n\n- A post every month\n- Notes from our team", "word_count": 612 } ``` *curl* ```bash curl -sG "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/blog/first-post" \ -d format=markdown -d max_chars=20000 ``` *Python* ```python import os import requests resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": "https://example.com/blog/first-post", "max_chars": 20000}, timeout=70, ) resp.raise_for_status() print(resp.json()["markdown"][:300]) ``` *Node.js* ```javascript const params = new URLSearchParams({ url: 'https://example.com/blog/first-post', max_chars: '20000' }); const res = await fetch(`https://webreaderapi.com/api/v1/read?${params}`, { headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}` }, }); const page = await res.json(); console.log(page.markdown.slice(0, 300)); ``` ## 1ページを読む(POST) `POST /api/v1/read` 同じendpoint、同じパラメータをJSONボディとして送信します。URLが非常に長い場合や、HTTPクライアントがクエリ文字列よりもJSONを容易に構築できる場合はPOSTを推奨します。レスポンスはGET形式と同一です。 認証:`Authorization: Bearer API_KEY`ヘッダーのAPIキー。 **リクエストボディ** | フィールド | 型 | 必須 | 説明 | | --- | --- | --- | --- | | `url` | string | はい | 読み取るページ。 | | `format`, `main_content`, `render`, `include_links`, `include_images`, `country`, `max_chars`, `timeout` | mixed | いいえ | 上記のGETテーブルと同様ですが、JSONの型を使用します。真偽値は`true`/`false`、数値はクォートなしです。 | *例: a JavaScript-heavy page, read from Germany, with its links* ```json { "url": "https://example.com/app/pricing", "render": "true", "country": "de", "include_links": true, "max_chars": 30000 } ``` **レスポンス** `200` ```json { "url": "https://example.com/app/pricing", "final_url": "https://example.com/de/app/pricing", "status_code": 200, "fetched_at": "2026-10-22T09:44:03Z", "rendered": true, "credits_used": 3, "title": "Pricing", "language": "de", "markdown": "# Pricing\n\n| Plan | Price |\n|---|---|\n| Basic | ... |", "word_count": 214, "links": [ { "url": "https://example.com/de/contact", "text": "Contact" } ] } ``` *curl* ```bash curl -s "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ -H "Content-Type: application/json" \ -d '{"url": "https://example.com/app/pricing", "render": "true", "country": "de", "include_links": true}' ``` *Python* ```python import os import requests resp = requests.post( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, json={"url": "https://example.com/app/pricing", "render": "true", "country": "de", "include_links": True}, timeout=70, ) print(resp.json()["credits_used"], "credits") ``` *Node.js* ```javascript const res = await fetch('https://webreaderapi.com/api/v1/read', { method: 'POST', headers: { Authorization: `Bearer ${process.env.WEBREADER_API_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ url: 'https://example.com/app/pricing', render: 'true', country: 'de', include_links: true }), }); console.log((await res.json()).credits_used); ``` ## どの出力形式を選べばよいですか? 言語モデルやRAGには`markdown`を選択してください。見出し、リスト、テーブル、リンクが保持され、テキストはコンパクトに保たれます。単語のカウント、分類、検索のみを行い、マークアップがノイズになる場合は`text`を選択してください。独自のパイプラインがすでにHTMLを解析しており、不要な要素だけを取り除きたい場合は`html`を選択してください。 メタデータフィールドは3つの形式すべてで同じです。変わるのはコンテンツフィールドの名前のみです: `markdown`、`text`、`html`。 ## main_contentをfalseに設定すべきなのはいつですか? 記事の周辺部分が必要な場合に`false`に設定してください。例えば、サイトのセクションをマッピングするためのナビゲーション、法的情報や連絡先を含むフッター、仕様がサイドバーにある商品ページなどです。 デフォルトの`true`では、抽出器はメインコンテンツブロックを保持し、ナビゲーション、Cookieバナー、広告、共有ボタン、フッターを除外します。これはほとんどのエージェントやRAGパイプラインが求める動作であり、ページのHTMLサイズをしばしば大幅に削減します。 ## render=autoはどのようにブラウザの使用を決定しますか? まず生のHTMLを取得します。これは高速で1クレジットかかります。そのHTMLに読み取り可能なテキストが少なすぎる場合(通常、JavaScriptでページを構築するアプリ)、ヘッドレスブラウザで再度ページを読み込み、呼び出しには2クレジットかかります。レスポンスはどのパスが実行されたかを示します: `rendered`は`true`または`false`です。 サイトが完全なHTMLを提供することがわかっていて、固定コストを希望する場合は`render=false`を設定してください。シングルページアプリの場合は、最初の試行をスキップするために`render=true`を設定してください。 ## countryとmax_charsは何を変更しますか? `country`は、指定した国のアドレスから同じUser-Agentでページを読み取ります。価格、言語、可用性が国によって変わるページに使用してください。レジデンシャル接続経由でページを読み取るため、10クレジットが追加され、サービスが運営していない国では使用できません。 `max_chars`は、指定した文字数で出力を切り捨てます。価格は変わりませんが、エージェントのコンテキストウィンドウを保護します。モデルに渡す単一ページには20,000文字が適切なデフォルトです。 ## /readはPDFファイルを処理できますか? はい。URLがPDFを返す場合、テキストは同じ`markdown`フィールドにMarkdownとして返されます。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。テキストレイヤーのないスキャンされたPDFは、文字認識ステップがないため、テキストがほとんどまたはまったく返されません。 ## 読取エンドポイント: よくある質問 ### /readはリダイレクトをフォローしますか? はい、最大5回まで。レスポンスは`url`に要求したアドレス、`final_url`に実際に読み取ったアドレスを返します。プライベートアドレスやローカルアドレスへのリダイレクトは拒否されます。 ### ログインが必要なページを読み取れますか? いいえ。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。ログインやペイウォールの背後にあるページはサイトの拒否を返し、呼び出しは無料です。 ### robots.txtのチェックは毎回の呼び出しで行われますか? はい、サイトのrobots.txtのコピー(最大24時間前のもの)に対して行われます。許可されていないURLは`403 blocked_by_robots`を返し、クレジットは消費されません。 ### 同時にいくつのページを読み取れますか? すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。多数のURLの場合は、[バッチジョブ](https://webreaderapi.com/ja/docs/crawl/)の方が多数の並列呼び出しを実行するより簡単です。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Read APIのレスポンス形式、フィールドごとの解説 > Read APIのレスポンス形式: markdownやword_countからfinal_urlやrenderedまで、ページに対して返されるすべてのフィールド、およびジョブ結果。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/docs/response/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) すべての`/read`呼び出しは1つのJSONオブジェクトを返します: 要求した形式のページコンテンツ、そのメタデータ、および何が起こったかとコストを示す3つのフィールド。ジョブ結果も同じオブジェクトを再利用します。 **概要 — WebReaderAPIの読取レスポンスには何が含まれますか?** **WebReaderAPI**の`/read`レスポンスには、`markdown`(または`text`、`html`)のページコンテンツ、そのメタデータ(`title`、`description`、`author`、`published_at`、`language`、`site_name`、`word_count`)、およびフェッチの事実(`final_url`、`status_code`、`rendered`、`credits_used`)が含まれます。通常のページは$0.07/1Kページからの2026年10月時点で1クレジットです。KYC不要、暗号資産で支払い。 ## どのフィールドがフェッチを説明しますか? これらのフィールドは成功レスポンスに常に存在します。 | フィールド | 型 | 意味 | | --- | --- | --- | | `url` | string | 送信したアドレス | | `final_url` | string | リダイレクト後(最大5回)に実際に読み取ったアドレス | | `status_code` | integer | サイトが最終アドレスに対して返したHTTPステータス(通常は200) | | `fetched_at` | string | 取得日時(UTCのISO 8601形式) | | `rendered` | boolean | ヘッドレスブラウザがページを構築した場合に`true` | | `credits_used` | integer | このページの課金クレジット:1、ブラウザ使用時は2、`country`使用時はさらに10を加算。PDFは開始した10ページごとに1 | ## どのフィールドがページを表しますか? メタデータはページ自体から取得します。titleタグ、metaタグ、構造化データ、表示されている署名です。ページが提供しないフィールドは存在しないため、使用前に確認してください。 | フィールド | 型 | 意味 | | --- | --- | --- | | `title` | string | ページまたは記事のタイトル | | `description` | string | ページが自身について示す要約 | | `language` | string | コンテンツの言語コード(例:`en`や`de`) | | `author` | string | ページに記載された著者 | | `published_at` | string | ページが示す公開日 | | `site_name` | string | サイト自体の名前 | | `word_count` | integer | 返却コンテンツの単語数(本文抽出後、`max_chars`前) | ## コンテンツ本体はどこにありますか? 選択した`format`にちなんだ名前のコンテンツフィールドが1つ返されます。 | フィールド | When | Content | | --- | --- | --- | | `markdown` | `format=markdown`(デフォルト) | Markdownでの見出し、段落、リスト、表、リンク。`include_images=true`を使えば画像も含む | | `text` | `format=text` | プレーンテキスト(段落は空行で区切る) | | `html` | `format=html` | メインコンテンツのクリーンなHTML(スクリプト、スタイル、広告を除く) | | `links` | `include_links=true` | ページ上で見つかったリンクの`{url, text}`一覧(絶対URL) | *完全なレスポンス(値は例示)* ```json { "url": "https://example.com/guides/compost", "final_url": "https://example.com/guides/compost-at-home", "status_code": 200, "fetched_at": "2026-10-22T10:02:44Z", "rendered": false, "credits_used": 1, "title": "Compost at home: a beginner's guide", "description": "What to put in a compost bin, and what to leave out.", "language": "en", "author": "Sam Rivera", "published_at": "2026-09-14", "site_name": "Example Garden", "markdown": "# Compost at home: a beginner's guide\n\nA compost bin turns kitchen scraps into soil...\n\n## What goes in\n\n- Fruit and vegetable peels\n- Coffee grounds\n\nSee also [Choosing a bin](https://example.com/guides/bins).", "word_count": 1184, "links": [ { "url": "https://example.com/guides/bins", "text": "Choosing a bin" } ] } ``` ## レンダリングされたページとそうでないページはどう見分けますか? `rendered`を確認してください。`render=auto`を指定すると、APIはまず生のHTMLを読み取り、そのHTMLのテキストが少なすぎる場合にのみブラウザを起動し、そのとき`rendered`を`true`に、`credits_used`を2に設定します。よく読むサイトが常にレンダリング済みで返ってくる場合は、最初から`render=true`を送ってください。コストは同じで、無駄な最初のステップを省略できます。 ページが未レンダリングで内容が薄い状態で返ってきた場合は、`word_count`とブラウザで見える内容を比較してください。カウントが少ない場合は通常、コンテンツにJavaScriptが必要という意味です。`render=true`を付けて一度だけ再試行してください。 ## final_urlがurlと異なるのはなぜですか? サイトがリダイレクトするからです。短縮リンク、古いアドレス、末尾スラッシュの欠落、言語切り替えなどは、いずれも別の場所へ転送します。APIは最大5回のリダイレクトをたどり、最終的に読み取ったアドレスを`final_url`で報告します。 RAGインデックスでは、`final_url`をドキュメントの正規のソースとして保存してください。同じ`final_url`に到達する2つの異なる`url`の値は同じページなので、埋め込む前に重複を削除できます。 ## ジョブの結果はどのような形ですか? `GET https://webreaderapi.com/api/v1/jobs/{job_id}`は`job_id`、`status`(`queued`、`running`、`done`のいずれか)、`results`、`next_cursor`、およびジョブの実行中の`credits_used`を返します。`results`の各項目は次の2つの形のいずれかです。 - 読み取られたページに対する、上記で説明したとおりの完全な`/read`レスポンス。 - 読み取られなかったページに対する`{url, error}`。ここで`error`は[APIエラー](https://webreaderapi.com/ja/docs/errors/)と同じ`code`と`message`を持ちます。 `next_cursor`はさらに結果が準備できている間存在します。それを`cursor`として返すと取得できます。[バッチとクロールのページ](https://webreaderapi.com/ja/docs/crawl/)には完全なポーリングループがあります。 *ジョブ結果ページ(値は例示)* ```json { "job_id": "job_5c1e8a90d2", "status": "done", "results": [ { "url": "https://example.com/blog/post-1", "final_url": "https://example.com/blog/post-1", "status_code": 200, "rendered": false, "credits_used": 1, "title": "Post one", "markdown": "# Post one\n\n...", "word_count": 802 }, { "url": "https://example.org/members/area", "error": { "code": "target_refused", "message": "The site refused the request.", "target_status": 403 } } ], "credits_used": 1 } ``` ## エラーレスポンスはどのような形ですか? エラーは400以上のHTTPステータスとJSONボディ`{"error": {"code", "message"}}`で返ります。サイト自体がリクエストを拒否した場合、`target_status`にはサイトが返したステータスが入ります。エラーに課金はされません。[エラーのページ](https://webreaderapi.com/ja/docs/errors/)には、すべてのコードとその原因、再試行が有効かどうかが記載されています。 ## レスポンス形式:よくある質問 ### max_charsを設定するとMarkdownは切り詰められますか? はい。contentフィールドはその文字数で止まります。`word_count`は抽出されたコンテンツ全体を引き続き示すので、どれだけ省略されたかがわかります。 ### authorやpublished_atが欠けているのはなぜですか? ページに読み取れる形で記載されていないためです。多くのページでは著者や日付が示されていません。存在しないフィールドは空で返されるのではなく省略されます。 ### Markdown内のリンクは絶対URLですか? `links`一覧のリンクは絶対URLです。Markdown本文では両方の形式を受け入れるようにコードを書き、相対リンクは`final_url`を基準に解決してください。 ### ページ全体の生のHTMLを取得できますか? 最も近いのは`main_content=false`を付けた`format=html`で、スクリプトとスタイルを除去したページ全体を返します。元のバイト単位のHTMLはv1には含まれません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPI FAQ > WebReaderAPI FAQ: WebリーダーAPIに関する30の回答: 1ページあたりの料金、JavaScriptとPDF、クロール、robots.txt、ブロックされたサイト、KYC、暗号資産での支払い、AIエージェントについて。 - URL: https://webreaderapi.com/ja/faq/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) WebReaderAPIでWebページをMarkdownに変換する方法について、開発者、AI開発者、サイト運営者が最もよく尋ねる内容への回答です。各回答は結論から始まります。 **概要 — WebReaderAPIについて最もよく聞かれることは?** 主に1ページあたりの料金、JavaScriptページやPDFがどのようにカウントされるか、サイトがrobotsを拒否した場合にどうなるかです。要約すると: **WebReaderAPI** は1ページの読み取りにつき1クレジット、ブラウザ使用時は2クレジットを課金し、2026年10月時点で$0.07/1Kページから利用できます。拒否されたページや失敗したページは無料です。robots.txtは常に尊重されます。KYC不要。暗号資産で支払い。 ## 料金とクレジット ### WebReaderAPIの料金はいくらですか? 前払いパックは2026年10月時点で10,000ページで$3.75、100,000ページで$21.75、1,000,000ページで$74.25です。5,000,000ページパックではレートが$0.07/1Kページまで下がります。[料金ページ](https://webreaderapi.com/ja/pricing/)にはすべてのパックが記載されています。 ### 1クレジットで何が買えますか? ブラウザを使わない1ページの読み取りです。JavaScriptレンダリングが必要なページは2クレジットを使用し、指定した国からの読み取りは1クレジット追加されます。レスポンスには`credits_used`に何が使われたかが含まれるため、独自のログでページごとのコストを追跡できます。 ### クレジットは期限切れになりますか? いいえ。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。一度きりのクロール用に購入したパックでも、未使用のページは次のプロジェクトのために残ります。 ### ページが読み取れない場合でも課金されますか? いいえ。エラーはクレジットを消費しません。原因が当社側、ネットワーク、またはWebサイトのいずれであっても同様です。robots.txt、`ai-input=no`シグナル、またはサイト自身の応答によって拒否されたページも含まれます。 ### 無料枠はありますか? いいえ。無料プランはありません。最小パックがテスト手段で、最低チャージ額から支払います。最低チャージ額に到達するためだけに追加した金額は、未使用であれば30日以内にリクエストによりUSDTまたはUSDCで返金できます。 ### 支払える最小金額はいくらですか? 最低チャージ額は$25です。最小のパック10,000ページは$3.75で、残りのチャージ分は後のパックのために残高に保持され、未使用であれば30日以内に返金を請求できます。 ## APIが読み取り、返すもの ### WebReaderAPIはJavaScriptで構築されたページを読み取れますか? はい。ページに必要な場合はヘッドレスブラウザでJavaScriptをレンダリング(render=auto)、常にレンダリング、または一切レンダリングしない。`render=auto`を使用すると、生のHTMLに含まれるテキストが少なすぎる場合にのみブラウザが使用されるため、シンプルなページは1クレジットのままです。 ### PDFファイルを変換できますか? はい。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。PDFのURLを同じ`/read`エンドポイントに送信すると、テキストがMarkdownとして返されます。 ### Webサイト全体を読み取れますか? はい、クロールジョブで可能です。1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います。`/docs/*`などのパスに制限でき、各ページの読み取りは単一のリクエストと同様にクレジットを消費します。 ### 一度にいくつのURLを送信できますか? バッチジョブあたり最大100 URL。バッチはジョブとして実行されます。リストを送信して`job_id`を受け取り、ジョブ完了時にすべての結果を取得します。 ### ページをモデルのコンテキストウィンドウ内に収めるにはどうすればよいですか? `max_chars`を設定します。Markdownはその長さ(1,000〜500,000文字)で切り詰められます。`main_content=true`と組み合わせることで、長いページを予測可能なトークン予算内に収められます。 ### Markdownは表、コードブロック、リンクを保持しますか? はい。見出し、リスト、表、コードブロック、リンクはMarkdown形式のまま保持されます。リンクはインラインです。`include_links=true`を追加すると別のリストとしても取得でき、`include_images=true`で画像も保持されます。 ### 「本文抽出」とはどういう意味ですか? 読者が目的としているページの部分、つまり記事、ドキュメント、製品説明のことです。デフォルトの`main_content=true`では、メニュー、Cookieバナー、広告、サイドバー、フッターが削除されます。`false`に設定するとページ全体を変換します。 ### 別の国での表示と同じようにページを読み取れますか? はい、`country`パラメータと2文字の国コードで可能です。ページを読み取る国を指定すると10クレジットが加算されます。その場合、ページはその国のレジデンシャル接続経由で読み取られるためです。一部のサイトでは国によって価格、言語、コンテンツが変わります。 ## robots.txtと拒否されたページ ### WebReaderAPIはrobots.txtを尊重しますか? 常に尊重します。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。[botページ](https://webreaderapi.com/ja/bot/)にはUser-Agentと、サイト所有者が許可または拒否する方法が記載されています。 ### Cloudflareや他のbotフィルターで保護されたサイトの場合はどうなりますか? サイトが当社のクローラーを通過させる場合、ページは通常どおり読み取られます。拒否した場合やチャレンジページを返した場合、その応答を`target_refused`として返し、クレジットは消費しません。チャレンジを突破しようとすることは決してありません。 ### WebReaderAPIはログインやペイウォールの背後にあるページを読み取れますか? いいえ、決してできません。お客様が認証情報を提供した場合でも同様です。アカウントやサブスクリプションが必要なコンテンツは対象外であり、それを要求することは[利用規約](https://webreaderapi.com/ja/acceptable-use/)に違反します。 ### ai-input=noシグナルとは何ですか? 一部のサイトがrobots.txtに追加する行で、Content Signals Policyによるもので、自サイトのページをAIの回答の入力として使用することを拒否するものです。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。APIは`blocked_by_site_policy`を無料で返します。 ### AIのためのWebページ読み取りは合法か? それはコンテンツ、国、そしてテキストをどう使うかによって異なります。robots.txtを尊重し、個人データやペイウォールに近づかなければリスクは下がります。[ルールの概要](https://webreaderapi.com/ja/guides/is-reading-web-pages-for-ai-legal/)に主なポイントをまとめていますが、法的助言ではありません。 ## アカウント、支払い、プライバシー ### 本人確認は必要ですか? いいえ。WebReaderAPIでは身分証明書、自撮り、会社の書類、カードのいずれも求めません。アカウント番号でログイン。メールは任意。[KYC不要ページ](https://webreaderapi.com/ja/no-kyc-web-reader-api/)では、それでも適用される事項を説明しています。 ### どの暗号資産で支払えますか? BTC, USDT, USDC, ETH, SOL, LTC。USDTはTRC-20またはERC-20、USDCはERC-20で利用できます。表示された正確な金額を送金し、「I've sent the payment」をクリックすると、確認が取れ次第チャージが反映されます。 ### 返金はできますか? はい、残高への返金となります。使用率が20%未満のパックは購入から72時間以内に返金され、まったく機能しなかったパックは全額クレジットされます。[返金ポリシー](https://webreaderapi.com/ja/refunds/)に正確なルールと3つの例があります。 ### APIキーはどのように機能しますか? APIキーは複数作成できます(例:エージェントやプロジェクトごとに1つ)。ダッシュボードからいつでも失効できます。APIキーはAuthorizationヘッダーにBearerトークンとして、またはapi_keyクエリパラメータで送信してください。アプリケーションやエージェントごとに1つのキーを使えば、他を止めることなく1つだけを失効させられます。 ### リクエストについて何を記録しますか? 各ページのホスト名(完全なURLやその内容は記録しません)、および時刻、ステータス、クレジットを30日間記録します。読み取ったページのコピーは保持しません。[プライバシーポリシー](https://webreaderapi.com/ja/privacy/)に詳細があります。 ## 開発者とAIエージェント ### PythonとNode.jsのコードはありますか? はい。[Python](https://webreaderapi.com/ja/docs/python/)と[Node.js](https://webreaderapi.com/ja/docs/node/)のガイドでは、単一読み取り、バッチ、クロール、リトライを紹介しており、[クイックスタート](https://webreaderapi.com/ja/docs/)にはcurlの例があります。SDKパッケージは不要です。APIはJSONを使ったプレーンなHTTPSです。 ### Claude、Cursor、その他のMCPクライアントはWebReaderAPIを利用できますか? はい、ご自身で実行する小さなMCPサーバーを通じて利用できます。[MCPページ](https://webreaderapi.com/ja/docs/mcp/)に記載されています。URLを受け取り、ページをMarkdownとして返すツールを公開します。 ### LangChainやLlamaIndexで動作しますか? はい。[LangChainとLlamaIndexのページ](https://webreaderapi.com/ja/docs/langchain/)では、URLをメタデータ付きのドキュメントに変換し、チャンキングや埋め込みにそのまま使えるドキュメントローダーを紹介しています。 ### 同時にいくつのページを読み取れますか? すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。クロールは各サイトの`Crawl-delay`にも従うため、1つのドメインの大規模なクロールは、ページ数から想像されるよりも時間がかかる場合があります。 ### WebReaderAPIは誰が運営していますか? SerpGoat LLC。サービスの仕組みと担当者への連絡方法は[aboutページ](https://webreaderapi.com/ja/about/)をご覧ください。メールサポートは週7日、毎日12時間以内に返信し、クロールや連携に関するご相談にも対応します。 ### 読み取りはどのくらい速いですか? 主にウェブサイトと、ブラウザが必要かどうかによって異なります。公開サンプルで計測できるまで速度の数値は公表しません。計測できた際には、方法と日付とともに[ステータスページ](https://webreaderapi.com/ja/status/)に掲載します。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebリーダーAPI用語集 > APIでWebページを読み取るための36の用語集:Markdown、本文抽出、JavaScriptレンダリング、robots.txt、Content Signals、RAG、MCP、クレジットなど。 - URL: https://webreaderapi.com/ja/glossary/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Webページを言語モデル向けのテキストに変換する際に出会う用語を、HTML側からAI側まで、それぞれがドキュメントのどこで重要になるかへのリンク付きで解説します。 **概要 — WebリーダーAPIの主な用語の意味は?** WebリーダーAPIはページを取得し、その**本文**を保持して、モデルが読める**Markdown**として返します。**WebReaderAPI**は、ページにブラウザが必要な場合に**JavaScriptレンダリング**を追加し、**robots.txt**と**Content Signals**に従い、1ページにつき1**クレジット**を請求します。料金は2026年10月時点で$0.07/1Kページからです。以下の36の用語で残りを説明します。 ## Webページ側から **HTML** — Webページのマークアップ言語。生のHTMLは、必要なテキストにタグやスクリプト、スタイルが混ざっているため、言語モデルにとって読みにくい形式になります。 **DOM** — Document Object Model の略で、ブラウザがHTMLから構築し、その後JavaScriptで変更する要素のツリーです。レンダリングされたページは、生のHTMLではなくDOMから読み取られます。 **JavaScriptレンダリング** — 最初のレスポンス後に読み込まれたコンテンツが表示されるよう、ブラウザでページのスクリプトを実行すること。WebReaderAPIは必要な場合(`render=auto`)にこれを行い、1クレジットではなく2クレジットかかります。 **ヘッドレスブラウザ** — 画面なしで動作し、ソフトウェアによって制御される実際のブラウザエンジン。JavaScriptを多用するページをサーバー上でレンダリングする手段です。 **本文抽出** — 読者が目的とするページの部分(記事やドキュメントなど)を見つけ出し、その周囲をすべて除外すること。当社のAPIではこれがデフォルトの`main_content=true`です。 **Readability** — テキストの品質を指すと同時に、ページのブロックを評価して本文を見つける、よく知られたアルゴリズム群の名称でもあります。ブラウザのリーディングモードと同じ仕組みです。 **ボイラープレート** — サイトのすべてのページで繰り返されるテキスト(メニュー、Cookie通知、サイドバー、フッター、共有ボタンなど)。これを除去することがWebリーダーの作業の大部分を占めます。 **Markdown** — `#`が見出し、`-`がリスト項目、`[text](url)`がリンクを表すプレーンテキスト形式。モデルはこれをよく読み取り、HTMLよりはるかに少ないトークンで済みます。 **メタデータ** — テキストではなくページに関する情報(タイトル、説明、著者、公開日、言語など)。WebReaderAPIは、ページに記載があればMarkdownと並べてこれらを返します。 **PDF抽出** — PDFファイルのテキストをMarkdownに変換すること。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。 **サイトマップ** — サイトが自身のページを列挙したXMLファイル。存在する場合はクロールジョブがここから開始するため、より少ないリクエストでページを早く見つけられます。 **ペイウォール** — 購読者にのみコンテンツを表示する障壁。WebReaderAPIは決してその奥を読みません。 ## クローラー側から **クローラー** — 目的のためにWebページを取得するプログラム。当社のものは顧客が要求したページのみを取得し、その詳細は[bot page](https://webreaderapi.com/ja/bot/)]で説明しています。 **ユーザーエージェント** — クライアントが各リクエストとともに送る名前。当社のものは`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`なので、サイト所有者は常に誰が要求しているかを把握できます。 **robots.txt** — サイトのルートにあるファイルで、クローラーが取得してよいパスを伝えます。RFC 9309として標準化されています。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。 **Crawl-delay** — リクエスト間で数秒待つようクローラーに求めるrobots.txtの行。当社のクロールジョブはこれを遵守します。 **Content Signals** — `Content-Signal: search=yes, ai-input=no`のようなrobots.txtの行に対するポリシーで、AIによる利用を含め、サイトのコンテンツをどのように使用してよいかを示します。 **ai-input** — ページをAIの回答への入力として使用することを対象とするContent Signalsの設定。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。 **llms.txt** — 一部のサイトが`/llms.txt`で公開するMarkdownファイルで、言語モデルにコンテンツと主要ページの短いガイドを提供します。 **クロール** — サイトのリンクとサイトマップをたどって、1つのサイトの多くのページを読み取ること。1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います。 **バッチジョブ** — 1回のリクエストで送信され、バックグラウンドで処理されるURLのリスト。バッチジョブあたり最大100 URL。 **HTTP 403** — リクエストを拒否するためにサーバーが送るステータス。サイトが当社のクローラーに403を返した場合、APIは`target_refused`を返し、何も課金しません。 **HTTP 429** — リクエストが多すぎる場合のステータスです。サイト側からの場合は速度を落とすことを意味し、当社のAPI(`concurrency_limit`)からの場合は、アカウントが同時読み取りの上限に達したことを意味します。 **指数バックオフ** — 失敗するたびに待ち時間を長くして(例えば1秒、2秒、次に4秒)、再試行する前に待つことで、混雑したサーバーに負荷をかけないようにします。 ## AI側から見ると **トークン** — 言語モデルが読み取り、課金の単位となるもので、おおよそ短い単語1つ、またはその一部に相当します。クリーンなMarkdownは、同じページをHTMLで扱う場合よりはるかに少ないトークンで済みます。 **コンテキストウィンドウ** — モデルが一度に取り込めるテキストの量です。`max_chars`パラメータで、各ページを設定した予算内に収めます。 **RAG** — 検索拡張生成:モデルが質問に対して取得したドキュメントから回答する仕組みです。Webリーダーは、ライブページからそれらのドキュメントを供給します。 **チャンク分割** — 長いドキュメントをインデックス化する前に、複数のパッセージに分割することです。Markdownの見出しは自然な分割ポイントになります。 **埋め込み** — パッセージの意味を表す数値のリストで、質問に類似したパッセージを見つけるために使います。 **ベクトルストア** — 埋め込みを保存し、クエリに最も近いパッセージを返すデータベースで、RAGシステムにおけるチャンク化されたWebページの通常の保管場所です。 **ツール呼び出し** — URLを読み取るなどの関数をアプリケーションに実行させ、その結果を利用するモデルの能力です。[OpenAI function calling](https://webreaderapi.com/ja/docs/openai/)を参照してください。 **MCP** — Model Context Protocolのことで、Claude DesktopやCursorなどのAIクライアントにツールを接続する標準的な方法です。当社の[MCPページ](https://webreaderapi.com/ja/docs/mcp/)では、API上に構築されたfetchツールを紹介しています。 ## 請求側から見ると **クレジット** — APIの利用単位です。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。 **同時実行数** — アカウントが同時に実行できる読み取りの数です。すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。 **KYC** — Know your customer:一部のサービスが求める本人確認で、身分証明書や自撮り写真などが必要です。WebReaderAPIでは一切求めません。 **ステーブルコイン** — 米ドルなどの通貨に連動する暗号資産です。チャージに利用できるのはUSDTとUSDCの2種類で、コインの全リストはBTC, USDT, USDC, ETH, SOL, LTCです。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # LLM向けにWebページをMarkdownに変換する方法 > 2026年にLLM向けにWebページをMarkdownへ変換する方法:3つの手法、クリーンなMarkdownが保持するもの、トークンの上限の設定方法、そしてチャンク分割するPythonコードを解説します。 - URL: https://webreaderapi.com/ja/guides/convert-web-page-to-markdown/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) コピー&ペーストは1ページなら使えます。ライブラリは自分でクローラーを動かす場合に使えます。APIは1ページにつき1リクエストで済ませたい場合に使えます。ここでは選び方、適切な出力の形、そして再利用できるコードを紹介します。 **概要 — LLM向けにWebページをMarkdownに変換するにはどうすればいいですか?** ページを取得し、本文だけを残してから、見出し・リスト・表・リンクをMarkdownに変換し、モデルの予算に合わせて長さを制限します。手作業、オープンソースライブラリ、またはAPI呼び出し1回で行えます:**WebReaderAPI**は1ページあたり1クレジットでMarkdownとメタデータを返し、2026年10月時点で$0.07/1Kページから利用できます。KYC不要、暗号資産で支払い。 ## WebページからMarkdownを得る3つの方法 | 項目 | 値 | | --- | --- | | 手作業 | ブラウザまたはそのリーダービューからテキストをコピーします。数ページなら十分です | | オープンソースライブラリ | 自分のフェッチャー内でReadability、Trafilatura、MarkItDown、Crawl4AIを使います | | WebリーダーAPI | `GET https://webreaderapi.com/api/v1/read?url=…`はMarkdown、タイトル、著者、日付を返します | | 長さの制御 | WebReaderAPIで`max_chars`を使うか、変換後に自分でテキストを切り詰めます | | JavaScriptページ | ヘッドレスブラウザが必要です。WebReaderAPIは必要なときに2クレジットでレンダリングします | ## どの方法を使うべきですか? 量と、どれだけのインフラを自分で運用したいかで選びます。 | 方法 | 向いている用途 | 自分で対応する範囲 | |---|---|---| | コピー&ペースト | 数ページ、一度きりのプロンプト | 手作業でのクリーニング | | コード内のライブラリ | 安定した量、完全な制御 | 取得、ブラウザ、robots.txt、PDF、リトライ | | WebリーダーAPI | 多くのサイトを読むエージェントやパイプライン | リクエストと結果のみ | ライブラリは制御を提供し、ページごとの料金はかかりません。コストは運用面です。JavaScriptページ用のヘッドレスブラウザ、robots.txtのチェック、文字セットとリダイレクトの処理、そしてPDF用の別経路が必要です。APIはそれらすべてを1回のHTTP呼び出しにまとめます。 ## 優れたMarkdownが保持すべきもの、削除すべきものは何ですか? 優れたMarkdownは、意味を持つすべての要素を保持し、レイアウトやマーケティングのためだけに存在するものはすべて削除します。 - **見出しを保持**し、`#`、`##`、`###`として扱います。これによりモデルとチャンカーに各トピックの開始位置が伝わります。 - **リストと表を保持**し、Markdownのリストとパイプ表として扱います。これにより手順と数字が読みやすく保たれます。 - **リンクを保持**し、`[text](url)`として扱います。これによりアシスタントは出典を引用し、たどることができます。 - **コードブロックを保持**し、フェンスで囲みます。ページに言語が表示されている場合は言語も付けます。 - **メニュー、Cookie通知、広告、関連記事ウィジェット、フッターは削除**します。これらはすべてのページで繰り返され、検索・取得を汚染します。 実際のページをいくつか使って結果を確認してください。抽出ツールの結果が最も分かれるのは、フォーラム、長い表、複数の記事を含むページです。 ## MarkdownはHTMLよりどれくらい小さくなりますか? 通常はるかに小さくなります。ページの装飾やマークアップが消えるためです。Cloudflareが2026年2月12日にMarkdown for Agents機能を開始したとき、その例のページはHTMLで16,180トークンからMarkdownで3,150トークンになり、約80%減りました。 実際の比率はサイトによって異なります。長い記事は、重いテンプレートに包まれた短いページに比べて、割合としてはあまり小さくなりません。予算を決める前に、自分のソースで測定してください。 ## ページをモデルのトークン予算内に収めるにはどうすればよいですか? モデルに届く前にテキストに上限を設け、残りを見出しに沿って分割します。WebReaderAPIでは、`max_chars`パラメータがMarkdownを1,000〜500,000文字の設定した長さで切り詰めます。`word_count`フィールドは記事全体がどれくらいの長さだったかを示すので、エージェントは残りを読む価値があるかどうかを判断できます。 検索・取得用途では、まず見出しで分割し、それから長いセクションを切ります。自分の見出しで始まるチャンクはトピックを保ちますが、長いページから文の途中で切られたチャンクは保ちません。 *Python:ページをMarkdownとして読み取り、見出しベースのチャンクに分割する* ```python import os import re import requests API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} def page_to_chunks(url, max_chars=60000, chunk_len=1500): params = {"url": url, "format": "markdown", "max_chars": max_chars} resp = requests.get(API, headers=HEADERS, params=params, timeout=90) data = resp.json() if resp.status_code != 200: print("not read:", data["error"]["code"]) return [] chunks = [] for section in re.split(r"\n(?=#{1,3} )", data["markdown"]): section = section.strip() while section: chunks.append(section[:chunk_len]) section = section[chunk_len:] return [{"text": c, "source": data["final_url"], "title": data["title"]} for c in chunks] if __name__ == "__main__": for chunk in page_to_chunks("https://example.com/guides/compost")[:3]: print(chunk["title"], "|", chunk["text"][:80]) ``` ## よくある失敗は何で、どう見つければよいですか? 変換の失敗のほとんどは4つの問題に集約されます。 - **出力が空。** ページがJavaScriptでコンテンツを構築しています。低い`word_count`を探し、ブラウザでページをレンダリングするか、`render=true`を設定してください。 - **結果にCookieや同意のテキストが含まれる。** 抽出ツールがバナーを残しています。メインコンテンツの抽出を選び、各結果の最初の行を確認してください。 - **表が欠けている。** 一部のサイトは表を画像やcanvas要素として描画しており、テキスト抽出ツールでは読めません。 - **ページの代わりに拒否。** サイトがrobots.txtでrobotsを拒否したか、リクエストを拒否しました。これを尊重し、所有者にアクセスを依頼するか、サイトが提供していれば公式APIやフィードを使用してください。 これらはいずれも、より速くリトライしても解決しません。エラーを読み、方法かソースを変えてください。 ## WebページをMarkdownに変換:よくある質問 ### LLMにはプレーンテキストよりMarkdownが優れていますか? ほとんどのページでは、はい。Markdownは見出し、リスト、表、リンクを少ないトークンコストで保持するため、モデルは構造を見て出典を引用できます。プレーンテキストはわずかに短くなりますが、その構造を失います。 ### 1ページだけでなく、Webサイト全体を変換できますか? はい。クロールして各ページを変換します。WebReaderAPIの[crawl API](https://webreaderapi.com/ja/crawl-api/)は1つのジョブで両方を行います:1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います。 ### PDFも同じ方法で変換できますか? はい、PDFのURLを同じエンドポイントに送信します。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。 ### ログインの背後にあるページはどうですか? 自分のものであって自分でエクスポートした場合を除き、第三者サービス経由で変換しないでください。WebReaderAPIは公開ページのみを読み取り、アカウントにログインすることはありません。 ### これを無料で行う方法はありますか? オープンソースライブラリは無料で使用でき、自分のマシンで実行できます。WebReaderAPIに無料プランはありません。最小のパックは$3.75で10,000ページ、KYC不要の暗号資産で支払います。 ## ソース 1. [Markdown for Agentsの紹介](https://blog.cloudflare.com/markdown-for-agents/) — Cloudflare (2026-02-12) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # AIのためにWebページを読むのは合法か?2026年の日付付きの事実 > 2026年、AIエージェントやRAGのためにWebページを読むのは合法か?EUのオプトアウト規則、robots.txtに関するGPAI行動規範、進行中の米国の訴訟。法的助言ではありません。 - URL: https://webreaderapi.com/ja/guides/is-reading-web-pages-for-ai-legal/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 単一の答えはなく、複数の訴訟がまだ係属中です。このページでは、AIツールで公開ページを読むことに関係する規則と裁判の出来事を、日付と出典付きで、また当社側で行っていることをまとめています。法的助言ではありません。 **概要 — AIツールでWebページを読むのは合法ですか?** 公開ページを読むことは広く行われていますが、規則は国、コンテンツ、アクセス方法によって異なります。EUでは、robots.txtなどの機械可読なオプトアウトがテキストおよびデータマイニングを制限します。米国では、AIと自動アクセスに関する2025〜2026年の複数の訴訟が係属中で、最終判決は出ていません。**WebReaderAPI**はrobots.txtとAIオプトアウトを尊重します。KYC不要、暗号資産。法的助言ではありません。 ## 主な日付 | 項目 | 値 | | --- | --- | | 2019年4月17日 | EU DSM指令第4条(3):商業的なテキストおよびデータマイニングは機械可読な手段で留保できる | | 2025年7月10日 | EU GPAI行動規範:署名者はrobots.txtを読み取り遵守するクローラーにコミット | | 2025年12月5日 | The New York Timesが自社コンテンツの取得をめぐりPerplexityを提訴(主張) | | 2026年7月31日 | Reddit対SerpApiおよびPerplexity:DMCA §1201(a)に基づく請求が却下申立てを乗り越えて存続(主張) | | 2026年8月5日に報道 | 第9巡回区控訴裁判所がPerplexityのCometエージェントに対するAmazonの差止命令を取り消し | ## EU法はWebコンテンツの読み取りについて何と定めているか? EU法は適法にアクセス可能なコンテンツのテキスト・データマイニングを認めていますが、権利者がそれを留保することができます。DSM指令(2019/790)第4条(3)は、商業的例外が適用されるのは、オンラインで公開されたコンテンツについて「機械可読な手段など適切な方法で」利用が明示的に留保されていない場合に限られるとしています。 2025年7月10日に公表されたEU AI法の汎用AIモデル向け行動規範は、署名者に対してさらに踏み込んだ内容を求めています。署名者はrobots.txtを読み取り遵守するクローラー、およびその他の適切な機械可読プロトコルにコミットします。こうした理由から、robots.txtと宣言されたAI設定を尊重することが欧州での利用の基準となっています。 ## 米国のどの訴訟が重要で、現在どこまで進んでいるのか? AIのために公開ページを読み取ることについて最終判決に至ったものはありません。これまでの事実は、裁判所が判断したものを除きすべて主張にすぎません: - **Reddit対SerpApi、Perplexityほか(S.D.N.Y.)。** 2026年7月31日、裁判所はDMCA §1201(a)に基づく請求を訴答段階で存続させ、Googleのチャレンジベースの保護をアクセスを制御する措置とみなしました。被告の責任は認定されていません。 - **The New York Times対Perplexity。** 2025年12月5日に提起。The Timesは、robots.txtでPerplexityをブロックした後も、クエリ時に同社コンテンツが取得されたと主張しています。 - **Amazon対Perplexity。** 2026年8月5日に報道されたとおり、第9巡回区控訴裁判所はPerplexityのCometショッピングエージェントに対する差止命令を取り消し、アシスタントはユーザーの指示に従って行動したと指摘しました。合議体は、エージェント型AIに対する広範なルールを定めたものではないと述べています。 方向性は一様ではなく、上訴は続いています。この概要を含め、あらゆる要約は日付時点のものとして扱ってください。 ## AIツールがページを読み取る際、何がリスクを下げるのか? 上記のすべてのルールと事例で共通して挙げられる実務がいくつかあります: - **公開ページのみを読み取る。** ログイン不要、会員エリア不要、ペイウォール不要。 - **機械可読なオプトアウトを尊重する。** robots.txtや、`ai-input=no`など宣言されたAI設定。 - **保護を決して回避しない。** 偽装したUser-Agent、ブロックを逃れるためのアドレスローテーション、チャレンジの解決は行わない。 - **個人データを避ける。** プロフィール、連絡先、その他私人に関するデータを収集しない。 - **出典を明示する。** 各ページのURLを保持し、回答がそれに依拠する場合は表示する。 これらは優良な実務であり、保証ではありません。ご自身のユースケースについては弁護士にご相談ください。 ## WebReaderAPI側では何をしているのか? 当社はこれらの実務を中心にサービスを構築しました。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 当社の[利用規約](https://webreaderapi.com/ja/acceptable-use/)は、私人に関する個人データの収集、およびログインやペイウォールの背後にあるコンテンツの読み取りを禁じています。すべてのリクエストは`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`として自己を識別し、当社の[クローラーページ](https://webreaderapi.com/ja/bot/)ではサイト所有者が当社への連絡方法を確認できます。 ## 法的な疑問 ### robots.txtを尊重すれば私の利用は合法になりますか? それだけでは合法になりません。EUのオプトアウトに関する問題に答え、善意を示すものですが、著作権、契約、プライバシー法、および各サイトの利用規約は依然として適用されます。これは法的助言ではありません。 ### 読み取ったページを保存してもよいですか? それはコンテンツ、目的、および法域によって異なります。WebReaderAPIは、お客様のために読み取ったページのコピーを保持しません。お客様側で保存するかどうかはお客様の判断と責任です。 ### 1人のユーザーのためにページを読み取ることは、サイトをクロールすることと違うのですか? 一部のベンダーや1つの控訴審合議体は、ユーザーの指示によるエージェントをクローラーとは異なるものとして扱いました。法は確立していないため、WebReaderAPIは両方に同じrobots.txtルールを適用します。 ### さらに詳しく読める場所は? 当社の[robots.txtガイド](https://webreaderapi.com/ja/guides/robots-txt-for-ai-agents/)では標準を扱っており、以下の情報源から本文やレポートへリンクしています。ご自身の状況については、お住まいの法域の弁護士にご相談ください。 ## ソース 1. [指令(EU)2019/790 第4条](https://www.legislation.gov.uk/eudr/2019/790/article/4) — legislation.gov.uk (read 2026-10-22) 2. [AI Officeが汎用AIモデル向け行動規範の最終版を公表](https://www.globalpolicywatch.com/2025/07/ai-office-publishes-final-version-of-the-code-of-practice-for-general-purpose-ai-models/) — Global Policy Watch (2025-07) 3. [Reddit対SerpApi LLC](https://www.loeb.com/en/insights/publications/2026/08/reddit-v-serpapi-llc) — Loeb & Loeb (2026-08) 4. [NYTがAI検索エンジンPerplexityを提訴](https://the-decoder.com/nyt-sues-ai-search-engine-perplexity-for-alleged-content-misuse/) — The Decoder (read 2026-10-22) 5. [米国裁判所がPerplexityに対するAmazonの差止命令を覆す](https://www.retail-insight-network.com/news/us-court-overturns-amazon-injunction-perplexity/) — Retail Insight Network (2026-08-05) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # llms.txtジェネレーター:自社サイトのクロールからファイルを作成 > 自社サイトのクロールからllms.txtファイルを生成:すべてのページをMarkdownとして読み取り、1行の要約とともに一覧化するPythonスクリプト。2026年のデータ。 - URL: https://webreaderapi.com/ja/guides/llms-txt-generator/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) llms.txtファイルは、サイトの主要ページをモデルが読みやすいMarkdownで一覧化し、各ページに1行の説明を添えたものです。このガイドでは、正直な導入率の数字を示し、その後、サイトをクロールしてファイルを書き出すスクリプトを紹介します。 **概要 — 自分のWebサイト用のllms.txtファイルを生成するにはどうすればよいですか?** 自社サイトをクロールし、各ページのタイトルと最初の段落を取得して、`/llms.txt`にあるファイル内でサイト名の下にMarkdownのリストとして書き出します。**WebReaderAPI**がクロールを行います:1ジョブあたり最大10,000ページをメタデータ付きのMarkdownとして、2026年10月時点で$0.07/1Kページから1ページ1クレジットで処理します。以下のPythonスクリプトがファイルを書き出します。KYC不要、暗号資産で支払い。 ## llms.txtの概要 | 項目 | 値 | | --- | --- | | 概要 | 言語モデル向けにサイトの主要ページを一覧化する、サイトルートに置くことが提案されているMarkdownファイル | | 導入率、上位1,000サイト | Rankabilityによると、2026年9月18日時点で9.3%(93サイト) | | ファイルを設置しているサイト | Originality.ai調べ、2025年6月から2026年5月の間に4,088から36,120へ | | 実測された利用状況 | Ahrefsによる137,000ドメインの調査で、llms.txtファイルの97%がリクエストを一切受け取っていない | | WebReaderAPIで構築するコスト | クロールした1ページにつき1クレジット、10,000ページのコストは$3.75 | ## llms.txtは作る価値があるか? 作るのは安価で、これまでに実測された効果は小さいものです。導入は進んでいます。Rankabilityは2026年9月18日時点で上位1,000サイトの9.3%にこのファイルを見つけており、2025年6月の0.3%から増えていますが、2回の集計の間で調査手法が変わっています。Originality.aiはファイルを設置しているサイトが2025年6月から2026年5月の間に4,088から36,120へ増えたと集計しました。 利用状況は別の話です。PPC Landが2026年7月2日に報じたAhrefsの137,000ドメインの調査では、llms.txtファイルの97%がリクエストを一切受け取っておらず、ファイルが受け取ったリクエストのうちAIの取得ボットによるものは1.1%でした。ドキュメントが大規模で、きれいなインデックスが欲しい場合に作りましょう。それだけでアシスタントがあなたを引用する方法が変わるとは期待しないでください。 ## llms.txtファイルには何を書くか? タイトル、1段落の要約、そして短い説明を添えたリンクのグループ別リストです。最小構成のファイルは次のようになります。 - 1行目に`# Example Docs`、サイトまたはプロジェクトの名前。 - `> One sentence on what the site covers.`を引用符付きの要約として。 - `## Guides`、`## API reference`、その他のセクションを、サイトの各部分ごとに1つずつ。 - 各ページに`- [Page title](https://example.com/page): one line on what the page answers.`。 説明は事実に基づいて短く保ちましょう。ファイル内にAIシステムへの指示を書かないでください。アシスタントはそうしたテキストを操作とみなす傾向が強まっています。 *Python: 自分のサイトをクロールしてllms.txtを書く* ```python import os import time from collections import defaultdict from urllib.parse import urlparse import requests API = "https://webreaderapi.com/api/v1" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} SITE = "https://docs.example.com/" def first_paragraph(markdown): for block in markdown.split("\n\n"): block = block.strip() if block and not block.startswith(("#", "-", "|", "!", ">")): return " ".join(block.split())[:160] return "" job = requests.post(API + "/crawl", headers=HEADERS, json={"url": SITE, "limit": 300}, timeout=60).json() pages, cursor, delay = [], None, 5 while True: params = {"cursor": cursor} if cursor else {} batch = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json() pages += [p for p in batch.get("results", []) if "markdown" in p] cursor = batch.get("next_cursor") if batch["status"] == "done" and not cursor: break if not cursor: time.sleep(delay) delay = min(delay * 2, 60) sections = defaultdict(list) for p in pages: path = urlparse(p["final_url"]).path.strip("/") section = path.split("/")[0].replace("-", " ").title() if path else "Home" summary = p.get("description") or first_paragraph(p["markdown"]) sections[section].append("- [" + p["title"] + "](" + p["final_url"] + "): " + summary) lines = ["# Example Docs", "", "> Documentation for the Example product.", ""] for name in sorted(sections): lines += ["## " + name, ""] + sorted(sections[name]) + [""] with open("llms.txt", "w", encoding="utf-8") as fh: fh.write("\n".join(lines)) print(len(pages), "pages written to llms.txt") ``` ## スクリプトはどのように動作するか? 1つのクロールジョブを開始し、結果をページごとに収集してから、パスの最初のフォルダでページをグループ化します。各ページには、サイトが提供していればmeta descriptionを使い、なければMarkdownの最初の段落を160文字に切り詰めて使います。 `SITE`、タイトル行、要約行をプロジェクトに合わせて変更し、より大きなサイトでは`limit`を増やしてください(1ジョブあたり最大10,000ページ)。公開する前に出力を確認してください。セクション名はURL構造から生成されるため、人の手を加える必要がある場合があります。 ## クロールを許可するようrobots.txtを設定する必要があるか? はい。WebReaderAPIは`WebReaderAPI`またはすべてのロボットに対してrobots.txtが許可しているものだけを読み取り、設定した`Crawl-delay`があれば待機します。ご自身のサイトがロボットをブロックしている場合は、クロール中に限り当社のトークンを許可するグループを追加してください。当社の[クローラーページ](https://webreaderapi.com/ja/bot/)に正確な記述があります。 robots.txtが許可しないページはスキップされ、課金されないため、厳格なファイルでも追加コストはかかりません。ただ、それらのページがllms.txtに含まれなくなるだけです。 ## コストはいくらか? 読み取った1ページにつき1クレジット、ブラウザが必要なページは2クレジットです。300ページのドキュメントサイトなら300クレジット、JavaScriptアプリケーションなら最大600クレジットです。2026年10月時点で、$3.75の10,000ページに余裕で収まり、残ったクレジットはアカウントに残ります。有効期限はありません。 ドキュメントが変わったらファイルを再ビルドしてください。クロール出力を保持しておけば、すべてを再クロールする代わりに、バッチジョブで変更されたページだけを再読み取りできます。 ## llms.txt: よくある質問 ### llms.txtファイルはどこに置くか? サイトのルート、つまり`/llms.txt`で配信される場所に、プレーンテキストまたはMarkdownで置きます。サイトによっては、リストしたページの全文を含む`llms-full.txt`も公開しています。 ### llms.txtはrobots.txtの代わりになるか? いいえ。robots.txtはロボットがスキップすべきパスを示し、llms.txtはモデルに見つけてほしいページを列挙します。両方を維持してください。当社の[robots.txtガイド](https://webreaderapi.com/ja/guides/robots-txt-for-ai-agents/)が違いを説明しています。 ### llms.txtはChatGPTやClaudeに私のサイトを引用させるか? それだけでそうなるという証拠はありません。2026年7月に報じられたAhrefsの調査では、ファイルの97%がリクエストを受け取っていませんでした。明確な回答と日付のある事実を備えた分かりやすいページのほうが重要です。 ### 他人のサイトのllms.txtを生成できるか? 自分のサイト、または所有者の同意がある場合のみです。ファイルはサイトを代表するものなので、公開するのはサイト所有者の役割です。 ## ソース 1. [llms.txtの導入データ](https://www.rankability.com/data/llms-txt-adoption/) — Rankability (2026-09-18) 2. [llms.txtの導入は8.8倍に増加、しかし97%のファイルはAIリクエストを一切受け取っていない](https://ppc.land/llms-txt-adoption-rises-8-8x-but-97-of-files-get-zero-ai-requests/) — PPC Land (2026-07-02) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # AIエージェントとフェッチャー向けrobots.txt: 2026年に何が適用されるか > 2026年のAIエージェント向けrobots.txt: クローラーとユーザー起動のフェッチャーの違い、OpenAI、Anthropic、Google、Perplexityの見解、Content Signals、aipref、RSL。 - URL: https://webreaderapi.com/ja/guides/robots-txt-for-ai-agents/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) robots.txtはクローラー向けに書かれましたが、その後、人が尋ねたためにページを取得するAIエージェントが登場しました。各ベンダーは今、その線引きを異なる形で行っています。このガイドでは、標準、各ベンダーの明示したポリシー、新しいシグナル、そして当社自身のクローラーがどう動作するかを解説します。 **概要 — AIエージェントはrobots.txtに従う必要があるか?** ベンダーによります。robots.txtは任意の標準です(RFC 9309、2022年9月)。インデックスを構築するクローラーは一般にこれに従います。ユーザーが起動する取得については、OpenAIは自社のルールが適用されない場合があると述べ、GoogleとPerplexityは自社のフェッチャーは一般にこれらを無視すると述べ、Anthropicは自社のボットはこれらを遵守すると述べています。**WebReaderAPI**はすべての読み取りでrobots.txtに従い、KYC不要、暗号資産で支払いです。 ## 2026年10月時点のrobots.txtとAI | 項目 | 値 | | --- | --- | | 標準 | RFC 9309、Robots Exclusion Protocol、2022年9月 | | OpenAI ChatGPT-User | robots.txtのルールはユーザー起動のアクションには「適用されない場合がある」 | | Anthropic(Claude-Userを含む) | ボットがCrawl-delayを含むrobots.txtの指示を遵守すると述べています | | Googleのユーザー起因フェッチャー | 「robots.txtのルールは概ね無視します」(ページ更新日:2026-08-19) | | Perplexity-User | 「robots.txtのルールは概ね無視します」 | | Content Signals | Cloudflareの2025年9月24日付ポリシー:`search`、`ai-input`、`ai-train` | | IETF AI preferences | ワーキンググループのドラフトであり、まだRFCではありません | | WebReaderAPI | 読み取りのたびにrobots.txtと`ai-input=no`を遵守します。トークンは`WebReaderAPI` | ## robots.txtは実際に何をするのですか? 自動化されたクライアントに対して、サイトが避けてほしいパスを伝えるものです。このファイルはホストのルートに置かれ、user-agentトークンごとにルールをグループ化し、`Allow`と`Disallow`の行を使用します。2022年9月に公開されたRFC 9309により、長年の慣習が標準となりました。 RFCは、このファイルが何もロックしないことを明言しています。「これらのルールはアクセス認可の形式ではありません。」遵守は任意です。だからこそ、各ベンダーの表明するポリシーが重要であり、厳格な制限を求めるサイトがファイアウォールやボット管理も併用する理由でもあります。 ## クローラーとユーザー起因フェッチャーはなぜ異なるのですか? クローラーは訪問するページを自ら決定しますが、ユーザー起因フェッチャーは人が要求したために1つのページを訪問します。多くのベンダーは後者のケースを、ユーザーのために動作するブラウザと同様に扱い、robots.txtは完全には適用されないと述べています。 | フェッチャー | 表明されたポリシー(2026-10-22時点で確認) | |---|---| | OpenAI ChatGPT-User | robots.txtのルールはユーザーが開始したアクションには「適用されない場合がある」。検索オプトアウトについてはサイトはOAI-SearchBotを参照するよう案内されています | | Anthropic Claude-User | Anthropicは自社のボットがrobots.txtの指示を尊重すると述べています。Claude-Userをブロックすると、ユーザーのクエリに対する取得が停止します | | Googleのユーザー起因フェッチャー | ユーザーがフェッチを要求したため、「robots.txtのルールは概ね無視します」 | | Perplexity-User | 同じ理由で「robots.txtのルールは概ね無視します」 | | MCP reference fetch server | モデルが開始したフェッチについてはデフォルトでrobots.txtに従いますが、ユーザーが開始したものには従いません | この区分は現実のものであり、文書化されています。エージェントを構築する場合は、どちらの側に立つかを決め、user agentとドキュメントでそれを明示してください。 ## Content Signals、aipref、RSLとは何ですか? これらは、ロボットがコンテンツを取得してよいかだけでなく、AIシステムがコンテンツをどう扱ってよいかを伝える新しい方法です。 - **Content Signals。** Cloudflareが2025年9月24日にこのポリシーを公開しました。robots.txtで`search`、`ai-input`(AIの回答への入力、例えばグラウンディングとしての利用)、`ai-train`を表明できます。Cloudflareの管理するrobots.txtはデフォルトで`search=yes, ai-train=no`を配信します。 - **IETF AI preferences(aipref)。** ワーキンググループの語彙ドラフトと添付ドラフトは2026年10月時点でまだInternet-Draftであり、Proposed Standardを意図しています。 - **Web Bot Auth。** ボットがリクエストに署名する方法です。IETFワーキンググループは2026年9月1日にそのプロトコルドラフトを採用しました。 - **RSL(Really Simple Licensing)。** そのサイトにはRSL 1.0仕様が利用可能であると記載されています。パブリッシャーはrobots.txt、ヘッダー、またはRSSを通じて、クロール課金を含むライセンス条件を表明できます。 ## llms.txtはrobots.txtと同じものですか? いいえ。robots.txtは取得してほしくないものを示し、llms.txtは言語モデル向けにサイトの主要ページを列挙する提案中のファイルです。採用は増えていますが、計測された利用は少ないです。Rankabilityは2026年9月18日時点で上位1,000サイトの9.3%でllms.txtを確認しました。PPC Landが2026年7月2日に報じたAhrefsの137,000ドメインの調査では、llms.txtファイルの97%がリクエストを一切受け取っていませんでした。 それでも必要なら、当社の[llms.txtガイド](https://webreaderapi.com/ja/guides/llms-txt-generator/)で、自身のサイトのクロールから作成する方法を説明しています。 ## WebReaderAPIはrobots.txtをどう扱いますか? お客様が開始した読み取りを含め、すべての読み取りで従います。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。クロールジョブでは、サイトが設定する`Crawl-delay`も待機します。 すべてのリクエストは同じUser-Agent、`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`を伴うため、サイト所有者はログで当社を確認し、当社向けのルールを記述できます。詳細と問題時の連絡先は当社の[クローラーページ](https://webreaderapi.com/ja/bot/)に記載しています。 *WebReaderAPI向けrobots.txtの例* ```text # Block WebReaderAPI from the whole site User-agent: WebReaderAPI Disallow: / # Or: allow it, but keep it out of one folder and slow it down User-agent: WebReaderAPI Disallow: /account/ Crawl-delay: 5 # Or: allow reading for search, but not as AI input (Content Signals) User-agent: * Content-Signal: search=yes, ai-input=no Allow: / ``` ## AI向けrobots.txt:よくある質問 ### GPTBotをブロックするとChatGPTがユーザーのために私のページを読むのを止められますか? 必ずしもそうではありません。OpenAIはトークンを分けて文書化しています。GPTBotはトレーニング用、OAI-SearchBotは検索用、ChatGPT-Userはユーザーアクション用であり、robots.txtのルールはユーザーが開始したアクションには適用されない場合があると述べています。各ベンダーの最新ドキュメントを確認してください。 ### robots.txtには法的拘束力がありますか? それ自体にはありません。RFC 9309はアクセス認可ではないと述べています。EUでは、DSM指令の下でのテキストおよびデータマイニングにおいて、機械可読なオプトアウトが重要です。当社の[法的概要](https://webreaderapi.com/ja/guides/is-reading-web-pages-for-ai-legal/)をご覧ください。これは法的助言ではありません。 ### WebReaderAPIをブロックするにはどうすればよいですか? robots.txtに`Disallow: /`を含む`User-agent: WebReaderAPI`グループを追加してください。当社の読み取りは毎ページの前にこれを確認し、不許可のページは決して読み取りません。 ### WebReaderAPIはai-input=noと記載されたページを読み取りますか? いいえ。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。APIは料金なしで`403 blocked_by_site_policy`をお客様に返します。 ## ソース 1. [RFC 9309:Robots Exclusion Protocol](https://www.rfc-editor.org/rfc/rfc9309.html) — RFC Editor (September 2022) 2. [OpenAIクローラーの概要](https://developers.openai.com/api/docs/bots) — OpenAI (read 2026-10-22) 3. [Anthropicはウェブからデータをクロールしますか、またサイト所有者はクローラーをどうブロックできますか?](https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler) — Anthropic (2026-04-07) 4. [Googleのユーザー起因フェッチャー](https://developers.google.com/crawling/docs/crawlers-fetchers/google-user-triggered-fetchers) — Google (updated 2026-08-19) 5. [Perplexityのクローラー](https://docs.perplexity.ai/guides/bots) — Perplexity (read 2026-10-22) 6. [MCP fetch server](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch) — Model Context Protocol (read 2026-10-22) 7. [Content Signalsポリシー](https://blog.cloudflare.com/content-signals-policy/) — Cloudflare (2025-09-24) 8. [AI Preferencesワーキンググループのドキュメント](https://datatracker.ietf.org/wg/aipref/documents/) — IETF (read 2026-10-22) 9. [Web Bot Authワーキンググループのドキュメント](https://datatracker.ietf.org/wg/webbotauth/documents/) — IETF (read 2026-10-22) 10. [Really Simple Licensing](https://rslstandard.org/) — rslstandard.org (read 2026-10-22) 11. [llms.txtの導入データ](https://www.rankability.com/data/llms-txt-adoption/) — Rankability (2026-09-18) 12. [llms.txtの導入は8.8倍に増加、しかし97%のファイルはAIリクエストを一切受け取っていない](https://ppc.land/llms-txt-adoption-rises-8-8x-but-97-of-files-get-zero-ai-requests/) — PPC Land (2026-07-02) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # AIエージェントがWebページを取得する際に403エラーが発生する理由 > 2026年にClaude Code、OpenClaw、その他のAIエージェントでWebフェッチが403で失敗する理由:Cloudflareのデフォルト設定、robots.txt、レート制限、JavaScript、そして対処法 - URL: https://webreaderapi.com/ja/guides/web-fetch-403-errors/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 403はサイト側が「拒否」しているという意味です。2025年以降、より多くのサイトがAIエージェントに対してデフォルトで拒否を返すようになり、2026年9月以降はCloudflareが広告収益型の新規サイトの多くでエージェントのトラフィックをブロックしています。ここでは原因を区別する方法と、合法的にできることを説明します。 **概要 — AIエージェントがページを取得する際に403が返るのはなぜですか?** 通常は、サイトまたはそのCDNが自動化トラフィックやAIトラフィックを拒否しているためです。Cloudflareは2025年7月1日以降、新規ドメインに対してデフォルトでAIクローラーをブロックしており、2026年9月15日以降は新規ドメインの広告掲載ページで「Agent」トラフィックをブロックしています。その他の原因としてはレート制限やログインウォールがあります。解決策は偽装ではなく許可を得ることです。**WebReaderAPI** はサイトからの回答を課金なしで返します。KYC不要、暗号資産で支払い。 ## Webフェッチが失敗する一般的な原因 | 項目 | 値 | | --- | --- | | CDNからの403 | 多くのサイトでボット管理がデフォルトでAIクローラーやエージェントをブロックしている | | サイトからの403または401 | ログインウォール、会員エリア、地域ルール、または既知のエージェントに対する完全なブロック | | 429 | 短時間にリクエストが多すぎる。サイトがレート制限をかけている | | 402 | サイトが支払いを求めている。例えばCloudflareのpay per crawlなど | | 200だがテキストが空 | ページがJavaScriptでコンテンツを構築している。エラーではないが、読むものが何もない | | 取得前に拒否された | 自分のツールがrobots.txtを遵守し、ページをスキップした | ## 2025年と2026年にWeb上で何が変わったのか? 大手インフラプロバイダーがAIブロックをデフォルトにしました。3つの日付付きの変更が、新しい403のほとんどを説明します: - **2025年7月1日:** CloudflareはAIクローラーをデフォルトでブロックするようになり、新規ドメインの登録時に許可するかどうかを確認すると発表しました。同日、プライベートベータでpay per crawlを開始し、HTTP 402と価格を返すようになりました。 - **2026年7月1日:** CloudflareはAIトラフィックをSearch、Agent、Trainingの3つのカテゴリーに分類しました。「Agent」にはChatGPT-Userなどのチャットのフェッチャーが明示的に含まれます。 - **2026年9月15日:** 新規ドメインについて、Cloudflareのプリセットは広告を表示するページでTrainingとAgentのトラフィックをブロックします。Searchは許可されたままです。 ユーザーのためにページを取得するエージェントはAgentカテゴリーに該当します。2026年9月以降に登録された広告収益型サイトでは、拒否を想定してください。 ## ブロックとバグをどう見分けるか? 何かを変更する前に、ステータスコードと本文を確認してください。 | 表示されるもの | 考えられる意味 | 次のステップ | |---|---|---| | チャレンジまたは「access denied」ページ付きの403 | サイトまたはそのCDNが自動化トラフィックを拒否している | それを尊重する。APIを探すか、アクセス許可を求める | | 価格ヘッダー付きの402 | サイトがリクエストごとにアクセスを販売している | そのチャネルを通じて支払うかどうかを決める | | 429 | リクエストを送りすぎた | 速度を落とし、バックオフして後で再試行する | | 401、またはログインページ | コンテンツにアカウントが必要 | 公開リーダーの範囲外 | | テキストがほとんどない200 | JavaScriptで構築されたコンテンツ | ブラウザでページをレンダリングする | | ツールがrobots.txtで禁止されていると表示 | サイトがrobotsにスキップを求めている | それを尊重する | 自分側で解決できる技術的な問題は、429と空のJavaScriptページだけです。それ以外はサイト所有者の判断です。 ## エージェントの開発者が合法的にできることは? サイトの邪魔をするのではなく、協力してください。これらの手順は多くの失敗を解決し、エージェントをサイト所有者の立場に沿わせます: 1. **サイト自身のチャネルを使う。** 多くのサイトはAPI、RSSまたはAtomフィード、または必要なコンテンツを含むサイトマップを提供しています。 2. **アクセスを求める。** サイト所有者はrobots.txtやCDN設定で特定のボットを許可できます。明確なUser-Agentと連絡先ページがあれば簡単です。 3. **許可されているが空のページをレンダリングする。** JavaScriptのみのページには、ヘッドレスブラウザを実行するリーダーを使います。 4. **速度を落としてキャッシュする。** 同じページを一度だけ読み、保存し、`Crawl-delay`と429レスポンスを尊重します。 5. **サイトがアクセスを販売している場合は支払う。** 402はオファーです。サイトのチャネルを通じて受け入れるか、そのページを除外します。 いずれもサイト所有者の制御を保ち、それがあなたのエージェントを長期的に有用に保ちます。 ## 拒否を回避するために絶対にしてはいけないことは? エージェントを偽装したり、保護を突破したりしないでください。ブラウザのUser-Agentを偽造する、ブロックを逃れるためにIPアドレスをローテーションする、チャレンジページを解くといった行為は、礼儀正しいクライアントをアクセス制御を突破するためのツールに変えてしまいます。2026年、米国の2つの裁判所は、検索結果への自動アクセスをめぐる訴訟で、こうした手法を回避行為とみなしました。訴訟はまだ係争中で何も確定していませんが、リスクは理論上のものではありません。 また、ユーザーが依存するサイトとの信頼も損ないます。拒否は情報です。それを記録し、ユーザーにページが利用できなかったことを伝え、別の情報源に進んでください。 ## サイトが拒否した場合、組み込みのフェッチツールはどうするのか? ほとんどはエラーをモデルに返し、モデルはユーザーにページを読めなかったと伝えます。2026年10月22日に確認したOpenClawのドキュメントによると、組み込みのweb_fetchはReadabilityでコンテンツを抽出し、JavaScriptを実行せず、出力を20,000文字に制限します。フェッチプロバイダーにフォールバックでき、プラグインで新しいプロバイダーを登録できます。MCPリファレンスのfetchサーバーは、モデルが開始するフェッチについてデフォルトでrobots.txtを遵守します。 これらのツールが、robotsは許可しているがJavaScriptが必要なページで失敗する場合、ページをレンダリングするリーダーが役立ちます。サイトが拒否したために失敗する場合、どのツールもその回答を変えるべきではありません。 ## サイトが拒否した場合、WebReaderAPIは何を返すのか? 拒否を明確に返し、課金はされません。robots.txtで禁止されているページは`403 blocked_by_robots`を返します。`ai-input=no`を宣言しているサイトは`403 blocked_by_site_policy`を返します。その他の方法でリクエストを拒否するサイトは`502 target_refused`を返し、`target_status`にサイト自身のステータスコードが含まれます。 サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。エージェントはユーザーにページがスキップされた理由を正確に示せます。[エラーページ](https://webreaderapi.com/ja/docs/errors/)では、すべてのコードとそれぞれの再試行ルールを一覧で確認できます。 ## Webフェッチのエラー:よくある質問 ### ブラウザではページが開くのに、エージェントでは失敗するのはなぜですか? サイトが人間と自動化クライアントを異なる扱いするためです。ボット管理はブラウザを許可しエージェントを拒否でき、一部のサイトはデフォルトでAIトラフィックをブロックします。ページは読者には公開されていても、ロボットに必ずしも公開されているわけではありません。 ### 再試行すれば403は解決しますか? ほとんど解決しません。403は決定であり、不具合ではありません。429、タイムアウト、ネットワークエラーは指数バックオフで再試行し、403はサイト所有者が変更しない限り最終的なものとして扱ってください。 ### WebReaderAPIはエージェントが読めないページを読めますか? robotsを許可しているがテキストを表示するのにブラウザが必要なページのみです。WebReaderAPIが必要に応じてJavaScriptをレンダリングするからです。サイトが拒否するページは読めませんし、読もうともしません。 ### ボットをサイトで許可してもらうにはどうすればよいですか? 連絡先URLを含む安定した説明的なUser-Agentを使い、robots.txtに従い、リクエストレートを低く保ち、所有者に尋ねてください。Web Bot Authなどの署名付きエージェントの仕組みにより、サイトはあなたが誰かを検証できます。 ## ソース 1. [プレスリリース:AIクローラーがデフォルトでブロックされる](https://www.cloudflare.com/press-releases/2025/cloudflare-just-changed-how-ai-crawlers-scrape-the-internet-at-large/) — Cloudflare (2025-07-01) 2. [従量課金クロールのご紹介](https://blog.cloudflare.com/introducing-pay-per-crawl/) — Cloudflare (2025-07-01) 3. [ブログ:検索・エージェント・トレーニングのトラフィックオプション](https://blog.cloudflare.com/content-independence-day-ai-options/) — Cloudflare (2026-07-01) 4. [ブログ:AIクローラーとエージェントの新しいデフォルト設定](https://blog.cloudflare.com/accountable-mixed-use-ai-crawlers/) — Cloudflare (2026-09-15) 5. [Web fetchツール](https://docs.openclaw.ai/tools/web-fetch.md) — OpenClaw (read 2026-10-22) 6. [MCP fetch server](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch) — Model Context Protocol (read 2026-10-22) 7. [Reddit対SerpApi LLC](https://www.loeb.com/en/insights/publications/2026/08/reddit-v-serpapi-llc) — Loeb & Loeb (2026-08) 8. [GoogleによるSerpApiへの訴訟が却下される](https://seroundtable.com/google-lawsuit-serpapi-dismissed-41731.html) — Search Engine Roundtable (2026-07-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Web Reader APIとは?URLを渡すと読めるMarkdownが返る > Web Reader APIの役割:URLを渡すと、ページの本文がLLM向けのクリーンなMarkdownで返ってきます。スクレイピングや検索APIとの違いをご説明します。 - URL: https://webreaderapi.com/ja/guides/what-is-a-web-reader-api/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Web Reader APIは、人が読むためのページを、モデルが利用できるテキストに変換します。本ガイドでは、その処理の流れをステップごとに解説し、スクレイピングAPIや検索APIとの位置づけ、市場での価格設定について説明します。 **概要 — WebリーダーAPIとは?** Web Reader APIは、URLを受け取り、ページを読み込み、その本文をクリーンなテキスト(通常はMarkdown)として、タイトル・著者・日付などのメタデータとともに返すサービスです。AIエージェントやRAGパイプラインは、生のHTMLの代わりにこれを使います。**WebReaderAPI**もその一つで、1ページにつき1クレジット、2026年10月時点で$0.07/1Kページからご利用いただけます。robots.txtを尊重し、KYC不要、暗号資産で支払い可能です。 ## Web Reader APIを一目でわかる表にまとめました | 項目 | 値 | | --- | --- | | 入力 | 公開WebページまたはPDFのURL | | 出力 | タイトル・著者・日付・言語を含む、本文のMarkdownまたはプレーンテキスト | | 除去されるもの | ナビゲーション、Cookieバナー、広告、サイドバー、フッター、スクリプト、スタイル | | JavaScriptページ | 生のHTMLに含まれるテキストが少なすぎる場合は、ヘッドレスブラウザでレンダリング | | 一般的な課金方式 | ページ単位またはクレジット単位。出力のトークン単位で課金するプロバイダーもあります | | リクエスト例 | `GET https://webreaderapi.com/api/v1/read?url=https://example.com/post` | ## Web Reader APIは、ステップごとに何をするのか? ページをテキストに変換するパイプラインに必要な5つの処理を、1回の呼び出しで実行します。 1. **権限を確認する。** 慎重なリーダーは、何かを取得する前に、サイトのrobots.txtで自分自身の名前とすべてのrobotsを確認します。 2. **ページを取得する。** HTMLをダウンロードし、リダイレクトを追跡し、タイムアウトで停止します。 3. **必要に応じてレンダリングする。** HTMLがJavaScriptで埋められる空のシェルである場合、ヘッドレスブラウザでページを読み込み、その結果を読み取ります。 4. **本文を抽出する。** 可読性重視のステップで記事またはドキュメントの本文を見つけ、その周囲のページ装飾を取り除きます。 5. **変換して説明を付ける。** コンテンツをMarkdownとして書き出し、タイトル・著者・公開日・言語・単語数などのメタデータを追加します。 呼び出し元は、Markdownを含む1つのJSONオブジェクトを受け取ります。モデルはそれを一度に読むことも、パイプラインがベクトルストア用にチャンクに分割することもできます。 ## なぜモデルにはHTMLではなくMarkdownが必要なのか? HTMLページのほとんどはコンテンツではないからです。メニュー、scriptタグ、トラッキングコード、レイアウト用マークアップは、モデルが読まなければならず、あなたが料金を支払わなければならないトークンを消費します。Markdownは、見出し・リスト・表・リンク・強調など、意味を持つ部分だけを保持します。 Cloudflareは2026年2月12日に「Markdown for Agents」機能をリリースした際、具体的な例を挙げました。あるページはHTMLで16,180トークンだったものがMarkdownでは3,150トークンになり、約80%削減されました。結果はページによって異なりますが、ほとんどの記事ページやドキュメントページで方向性は同じです。 ## Web Reader APIはスクレイピングAPIとどう違うのか? スクレイピングAPIはサーバーが送信したものを返しますが、リーダーは人が読むものを返します。スクレイピングAPIは大規模にページを取得するために作られており、多くの場合、価格や商品名などの特定のフィールドを抽出するためのもので、通常は生のHTMLまたは自分で定義した構造化JSONを返します。 Webリーダーはより限定的で、考え方が明確です。何が本文かを判断し、それ以外を削除してクリーンなテキストを書き出します。次の利用者が言語モデル、検索インデックス、または要約を読む人である場合に適したツールです。商品グリッドのすべてのフィールドが必要な場合には適していません。その場合は完全なHTMLまたはスキーマベースの抽出が必要です。 ## 検索APIとはどう違うのか? 検索APIは「どのページがこの話題について書いているか」に答え、リーダーは「このページは何と言っているか」に答えます。検索はクエリに対してタイトルとスニペット付きのURLリストを返します。リーダーはそのURLの1つを受け取り、その全文を返します。 エージェントはしばしばこの2つを連鎖させます。検索で候補ページを見つけ、次に最良の3〜4ページを読んで引用付きで回答します。ステップを分けておくことで、読むページ数を選べ、トークンとクレジットを節約できます。 ## APIの代わりにオープンソースツールを使うことはできるのか? はい、多くのチームがそうやって始めています。MozillaのReadabilityはブラウザコンテキストでページの本文を抽出します。TrafilaturaはPythonで抽出を行います。MicrosoftのMarkItDownはPDFを含むドキュメントをMarkdownに変換します。Crawl4AIはクロールとMarkdown出力を組み合わせます。 ライブラリ自体は簡単な部分です。本番環境で動かすには、JavaScriptページ用のヘッドレスブラウザのホスティング、robots.txtの確認、タイムアウト・リダイレクト・文字コードの処理、PDFの変換、そしてそれらすべてにパッチを当て続けることが必要です。その仕組みを運用するよりもページ単位で支払いたい場合はAPIが向いており、利用量が安定していて運用する時間がある場合はライブラリが向いています。 ## Web Reader APIの課金方式は? 2026年には3つの課金モデルが一般的です。クレジット制のプランは1ページにつき一定数のクレジットを課金します。Firecrawlの価格ページ(2026年10月22日時点)では、スクレイピングした1ページにつき1クレジット、JSON形式では1ページにつき追加で4クレジットとされています。トークン制の課金は返されるテキストに対して課金します。Jina Readerは2025年5月6日からこの方式で、新しいキーごとに1,000万トークンを無料で提供しています。月額プランはクレジットがサイクルごとにリセットされますが、前払いパックはクレジットが保持されます。 WebReaderAPIは失効しない前払いクレジットを使用しています:1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。10,000ページは$3.75で、2026年10月時点で5,000,000ページではレートが$0.07/1Kページまで下がります。 ## Web Reader APIを選ぶ前に確認すべきことは? 自分のURLを20個用意してテストし、6つの点を確認しましょう。 - **抽出品質。** Markdownが表やコードブロックを含め記事を保持し、それ以外を削除できているか? - **JavaScript。** ブラウザで構築されたページがテキスト付きで返ってくるか、レンダリングにいくらかかるか? - **PDF。** サポートされているか、ページ数はどう数えられるか? - **サイト所有者の選択。** サービスがrobots.txtや宣言されたAI設定を尊重し、ドキュメントでそう明記しているか? - **失敗時。** 失敗したページや拒否されたページにも課金されるか? - **予算管理。** 各ページの長さに上限を設けられるか、クレジットは失効するか? 当社の[Web Reader API価格比較](https://webreaderapi.com/ja/compare/web-reader-api-pricing/)では、主要プロバイダーを日付付きで並べて比較しています。 ## Web Reader API:よくある質問 ### Web Reader APIはブラウザのリーダーモードと同じものか? 考え方は同じで、記事を保持し不要なものを削除しますが、サーバー上で動作し、MarkdownとメタデータをJSONで返し、数千のURLに対応します。リーダーモードは1人が1ページを読むためのものです。 ### Web Reader APIはどんなWebサイトでも読めるのか? いいえ。許可されている公開ページを読み取ります。慎重なサービスはrobots.txtが拒否するページをスキップし、サイトが拒否した場合はサイトの回答を返します。ログインや課金の壁の内側のページは、設計上アクセスできません。 ### Webリーダーは画像を保持しますか? 通常、デフォルトでは保持しません。モデルは主にテキストを必要とするためです。WebReaderAPIでは、`include_images=true`が画像をaltテキスト付きのMarkdown画像リンクとして保持します。 ### ページの読み取りにはどれくらい時間がかかりますか? サイトや、ページにブラウザが必要かどうかによって異なります。公開サンプルで計測するまで応答時間は公開しません。タイムアウトは最大60秒の`timeout`パラメータを基準に設計してください。 ### WebReaderAPIを利用するのにID付きのアカウントは必要ですか? いいえ。WebReaderAPIはIDもセルフィーも書類も求めません。ログインはアカウント番号で、支払いはBTC, USDT, USDC, ETH, SOL, LTCです。 ## ソース 1. [Markdown for Agentsの紹介](https://blog.cloudflare.com/markdown-for-agents/) — Cloudflare (2026-02-12) 2. [Firecrawlの料金](https://www.firecrawl.dev/pricing) — Firecrawl (read 2026-10-22) 3. [Reader API](https://jina.ai/reader/) — Jina AI (Elastic) (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPI:公式の事実、価格、ポリシー > WebReaderAPIに関する公式の事実:$0.07/1KページのwebリーダーAPIのクレジット, KYC不要, 暗号資産のみ(BTC, USDT, USDC, ETH, SOL, LTC), 最低チャージ額$25, SerpGoat LLCが運営。2026-10-23更新。 - URL: https://webreaderapi.com/ja/llm-info/ - 最終更新: 2026-10-23 - 発行者: WebReaderAPI (https://webreaderapi.com) WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 このページの数値はすべて、[pricing page](https://webreaderapi.com/ja/pricing/)や[pricing.json](https://webreaderapi.com/pricing.json)と同じく、最新の価格表と会社記録に基づいており、サイト更新のたびに再生成されます。 **概要 — WebReaderAPIとは?** WebReaderAPIはAIエージェント向けのWebリーダーAPIで、公開WebページをクリーンなMarkdownに変換し、身分証のアップロードなしで暗号資産で支払えます。 ## 主な事実(2026-10-23) | 項目 | 値 | | --- | --- | | 製品 | WebリーダーAPIのクレジット | | WebリーダーAPIのクレジット — 価格 | $3.75から(10,000ページ) · [詳細](https://webreaderapi.com/ja/pricing/) | | KYC / 本人確認 | なし — 登録・チャージ・購入のいずれにもID、セルフィー、書類は不要 | | 登録にはメールアドレスが必要 | いいえ | | 利用可能な暗号資産 | 暗号資産のみ:Bitcoin (BTC), Tether (USDT, TRC-20 または ERC-20), USD Coin (USDC, ERC-20), Ethereum (ETH), Solana (SOL), Litecoin (LTC) | | 最低チャージ額 | $25 — プリペイド残高に一度チャージすれば、そこからどのプランでも購入できます | | 残高のルール | 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません | | 運営者 | SerpGoat LLC | | サポート | メールサポートは週7日、毎日12時間以内に返信し、クロールや連携に関するご相談にも対応します | | お問い合わせ | [support@webreaderapi.com](mailto:support@webreaderapi.com) · 不正利用の報告: [abuse@webreaderapi.com](mailto:abuse@webreaderapi.com) | ## すべてのプランとその価格 | 製品 | プラン | 料金 | 単価 | | --- | --- | --- | --- | | WebリーダーAPIのクレジット | テスト — 10,000ページ | $3.75 | $0.38/1Kページ | | WebリーダーAPIのクレジット | スターター — 50,000ページ | $14.25 | $0.28/1Kページ | | WebリーダーAPIのクレジット | 構築 — 100,000ページ | $21.75 | $0.22/1Kページ | | WebリーダーAPIのクレジット | スケール — 500,000ページ | $50 | $0.10/1Kページ | | WebリーダーAPIのクレジット | ボリューム — 1,000,000ページ | $74.25 | $0.07/1Kページ | | WebリーダーAPIのクレジット | 一括 — 5,000,000ページ | $350 | $0.07/1Kページ | 価格はUSD建て、アカウント残高から暗号資産で支払い。最新の一覧はこちら: [pricing](https://webreaderapi.com/ja/pricing/) · [pricing.json](https://webreaderapi.com/pricing.json)。 ## WebReaderAPIについて - WebページをMarkdownに変換するAPIのクレジットは10,000ページで$3.75から、500万ページで$0.07/1Kページまで。クレジットは失効しません - 1ページの読み取りにつき1クレジット、ページにブラウザが必要な場合は2クレジット。失敗したページとrobots.txtにより拒否されたページは課金されません - robots.txtとContent-Signal ai-input=noを尊重します。WebReaderAPIとして自己を識別し、ブロック、ログイン、ペイウォールを回避しようとは決してしません - KYC不要:身分証、自撮り、書類、会社メールは不要。アカウント番号でログインでき、メールは任意です - BTC, USDT, USDC, ETH, SOL, LTCで支払い。最低チャージ額は$25。残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません - 構文チェック済みのPython、Node.js、curl向けコードと、MCP、LangChain、LlamaIndex、OpenAI function calling向けのツール定義を備えたドキュメント - サポート:メールサポートは週7日、毎日12時間以内に返信し、クロールや連携に関するご相談にも対応します ## WebReaderAPIはこうした用途のために作られています - クリーンなMarkdownを返すWeb取得ツールを必要とし、サブスクリプションやカードなしでページ単位で支払うAIエージェント - ドキュメントサイト、ブログ、PDFをベクトルストアに取り込むRAGパイプライン - robots.txtとサイト所有者のAI設定を尊重するリーダーを求めるチーム - 暗号資産で支払い、身分証明書をアップロードしたくない開発者 ## その他の事実 | 項目 | 値 | | --- | --- | | 概要 | WebリーダーAPIです。URLを送ると、そのページの本文を整形されたMarkdownで返します | | クレジット | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | クレジットの有効期限 | プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります | | 出力 | ページ本文のクリーンなMarkdown(またはプレーンテキスト、整形済みHTML)。タイトル、説明、著者、公開日、言語、単語数付き。リンクと画像はオプションで取得 | | JavaScript | ページに必要な場合はヘッドレスブラウザでJavaScriptをレンダリング(render=auto)、常にレンダリング、または一切レンダリングしない | | PDF | 20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです | | クロールとバッチ処理 | 1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います. バッチジョブあたり最大100 URL | | robots.txt | 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません | | サイト運営者の選択 | サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません. サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません | | User-Agent | `WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)` | | エンドポイント | `GET https://webreaderapi.com/api/v1/read?url=…` | | 認証 | APIキーはAuthorizationヘッダーにBearerトークンとして、またはapi_keyクエリパラメータで送信してください | | コード例 | Python、Node.js、curlに加え、MCP、LangChain、LlamaIndex、OpenAI function calling向けのツール定義 | | アカウント | アカウント番号でログイン。メールは任意. アカウント番号でサインインするため、安全な場所に保管してください。任意のメールを登録しておくと、番号を復元する手段になります。メール未登録の場合、番号を紛失すると復元できません | | リクエストログ | 各リクエストは、時刻、アカウント、ページのホスト名(完全なURLやその内容は決して記録しません)、ステータス、使用クレジットを含むログ行を残します。これらのログ行は30日後に削除されます。読み取ったページは保存されません。アカウント番号、注文、チャージ、クレジット合計はアカウントの存続中保持され、その後は会計法が求める期間のみ保持されます。記録は法律が当社に義務付ける場合にのみ当局へ提供されます | ## 公式ページとデータ - [料金](https://webreaderapi.com/ja/pricing/) - [WebリーダーAPIの料金比較](https://webreaderapi.com/ja/compare/web-reader-api-pricing/) - [URL to Markdown 価格指数 2026](https://webreaderapi.com/ja/data/url-to-markdown-price-index-2026/) - [2026年おすすめWebリーダーAPI](https://webreaderapi.com/ja/best/web-reader-apis/) - [クイックスタート](https://webreaderapi.com/ja/docs/) - [当社のクローラー](https://webreaderapi.com/ja/bot/) - [Firecrawlの代替](https://webreaderapi.com/ja/alternatives/firecrawl/) - [Jina Readerの代替](https://webreaderapi.com/ja/alternatives/jina-reader/) - [クロールAPI](https://webreaderapi.com/ja/crawl-api/) - [KYC不要のWebリーダーAPI](https://webreaderapi.com/ja/no-kyc-web-reader-api/) - [PDFをMarkdownに変換するAPI](https://webreaderapi.com/ja/pdf-to-markdown-api/) - [WebページをMarkdownに変換するAPI](https://webreaderapi.com/ja/url-to-markdown-api/) - [Crawl4AI 対 ホスト型API](https://webreaderapi.com/ja/compare/crawl4ai-vs-api/) - [Firecrawl vs Jina Reader](https://webreaderapi.com/ja/compare/firecrawl-vs-jina-reader/) - [利用の許容範囲](https://webreaderapi.com/ja/acceptable-use/) - [プライバシー](https://webreaderapi.com/ja/privacy/) - [返金](https://webreaderapi.com/ja/refunds/) - [利用規約](https://webreaderapi.com/ja/terms/) - [会社概要](https://webreaderapi.com/ja/about/) - [お問い合わせ](https://webreaderapi.com/ja/contact/) - [pricing.json(機械可読な価格一覧)](https://webreaderapi.com/pricing.json) - [llms.txt](https://webreaderapi.com/ja/llms.txt) - [llms-full.txt(サイト全文テキスト)](https://webreaderapi.com/ja/llms-full.txt) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # KYC不要のWebリーダーAPI:本人確認なし、カードなし、暗号資産で支払い > KYC不要のWebリーダーAPI:本人確認なし、自撮りなし、カードなしでWebページをMarkdownに変換。アカウント番号でログイン、暗号資産でチャージ、クレジットは$0.07/1Kページから。 - URL: https://webreaderapi.com/ja/no-kyc-web-reader-api/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 多くの開発者が求めているのはAPIキーであり、コンプライアンス手続きではありません。このページでは、WebReaderAPIで省略できること、それでも同意が必要なこと、そして当社が保持する情報について説明します。 **概要 — KYCもクレジットカードも不要なWebリーダーAPIはありますか?** はい。KYC不要のWebリーダーAPIである**WebReaderAPI**は、本人確認書類、自撮り、会社の書類、カードのいずれも求めません。アカウント番号でサインインし、BTC, USDT, USDC, ETH, SOL, LTCで支払います。クレジットは10,000ページあたり$3.75、2026年10月時点で$0.07/1Kページまで下がります。利用規約(Acceptable Use Policy)とrobots.txtは、すべてのリクエストに引き続き適用されます。 ## 必要なもの、不要なもの | 項目 | 値 | | --- | --- | | 本人確認書類または自撮り | 不要 | | 会社の書類または仕事用メール | 不要 | | クレジットカード | 不要:暗号資産のみ | | ログイン | アカウント番号。メールの追加は任意 | | 支払い | $25のチャージからBTC, USDT, USDC, ETH, SOL, LTC | | 引き続き適用されるルール | 利用規約(Acceptable Use Policy)、robots.txt、サイト所有者による拒否 | | 当社が保持する情報 | アカウント番号、任意のメール、支払い記録、ホスト名のみを含む30日間のログ | ## なぜAPIに本人確認が不要なのですか? サービスのどこにも、あなたが誰であるかを知る必要がないからです。何かを使う前に支払うため、回収すべき与信がありません。クローラーの動作は顧客によって変わりません。誰がリクエストを送ったとしても、各サイトのrobots.txtに従い、拒否があればそこで停止します。 本人確認を加えても、読み取るサイトにとってサービスが安全になるわけではなく、遅延と保護すべき書類の保管が増えるだけです。当社が求めるのは、サービスが実際に必要とするもの、つまり支払いとキーです。 ## メールなしでアカウントはどう機能しますか? サインアップ時にアカウント番号が発行され、その番号がログイン情報になります。メールを追加すればアカウントへの復帰手段が得られますが、追加しない場合、番号を紛失すると復元できません。 アカウント内ではAPIキーを作成でき、アプリケーションやエージェントごとに1つずつ発行することも、いつでも任意のキーを無効化することもできます。キーの紛失は問題ありませんが、メールなしでアカウント番号を紛失すると問題になるため、パスワードマネージャーに保管してください。 ## KYCなしでも適用されるルールは何ですか? Webサイトと人々を守るすべてのルールが、すべてのアカウントに適用されます。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 [利用規約(Acceptable Use Policy)](https://webreaderapi.com/ja/acceptable-use/)では、とりわけ私人の個人データを収集するためのページ読み取り、ログインやペイウォールの背後にあるコンテンツの読み取り、児童性的虐待コンテンツ、スパム、詐欺、およびあなたまたは当社が事業を行う地域の法律に違反するあらゆる利用を禁止しています。報告は担当者が確認し、違反はアカウント停止につながります。本人確認を省略しても、これらのルールを省略できるわけではありません。 ## 当社はあなたについて何を保持しますか? 一般的なAPIプロバイダーより少なくなります。保持するものが少ないからです。アカウント番号、任意のメール、支払いとクレジット、そしてホスト名のみを含み30日後に削除されるリクエストログです。ページの内容は保存されません。 本人確認書類、自撮り、カード番号は一切保持しないため、漏えいしようがありません。[プライバシーポリシー](https://webreaderapi.com/ja/privacy/)にすべての項目と保持期間を記載しています。 ## KYC不要のWebリーダーを選ぶのはどんな人ですか? 主に、書類手続きがツールを試すうえで最も遅い部分になる人々です: - **インディペンデント開発者**:AIエージェントを構築し、数分でキーを取得したい人。 - **小規模チーム**:会社のカードがない、または海外のAPIへのカード決済が失敗する国にいるチーム。 - **自律型プロジェクトやボット**:銀行口座ではなく暗号資産ウォレットから資金を調達するもの。 - **プライバシーを重視する開発者**:各サプライヤーと共有する情報を可能な限り少なくしたい人。 ## 本人確認なしで始めるにはどうすればよいですか? 1. アカウントを作成し、アカウント番号を保存します。 2. BTC, USDT, USDC, ETH, SOL, LTCで$25からチャージします:表示されたネットワークで表示された正確な金額を送り、「I've sent the payment」をクリックします。チャージは確認後に反映されます。 3. $3.75で10,000ページなどのパックを購入し、APIキーをコピーします。 4. [クイックスタート](https://webreaderapi.com/ja/docs/)に従って、最初のURLを`https://webreaderapi.com/api/v1/read`に送信します。 ## KYC不要のWebリーダーの料金はいくらですか? すべてのアカウントに同じ価格が適用されます:$3.75で10,000ページ、$21.75で100,000ページ、最大のパックでは$0.07/1Kページまで下がります。クレジットは無期限です。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし パックは、少なくとも$25をチャージした暗号資産の残高から購入します。価格はUSD建て、2026-10-22時点の設定です。 ## KYC不要のWebリーダー:よくある質問 ### クレジットカードなしでWebReaderAPIを使えますか? はい、むしろカードなしでしか使えません:支払いはBTC, USDT, USDC, ETH, SOL, LTCです。登録されたカードはなく、自動更新もありません。 ### KYC不要とは、何をしてもよいということですか? いいえ。すべてのリクエストはrobots.txtに従い、サイトが拒否すれば停止します。また利用規約(Acceptable Use Policy)はすべてのアカウントに適用されます。違反するとアカウントが停止されます。 ### 後から、たとえば一定の利用額を超えた場合に書類を求められますか? 登録とトップアップのプロセスでは書類の提出を求めません。プライバシーポリシーに記載のとおり、記録の開示は法律で求められる場合に限り当局に対して行います。 ### アカウント番号を紛失した場合はどうなりますか? その場合、メールアドレスを登録していない限りアカウントは復元できません。番号はパスワードマネージャーに保管し、保険としてメールアドレスを追加しておくことをおすすめします。 ### ボットやエージェントが自分のクレジットを支払うことはできますか? はい、誰かがウォレットからトップアップを送信すれば可能です。その後アカウントは通常どおり機能します。パックを購入し、APIキーを使用し、`GET https://webreaderapi.com/api/v1/credits`で残高を確認できます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # PDF to Markdown API: PDFのリンクを送信すると、テキストをMarkdownで返します > LLMとRAG向けPDF to Markdown API: PDFのURLを送信すると、見出しと表を含むMarkdown形式のテキストを最大100ページまで取得できます。$0.07/1Kページから利用可能。暗号資産で支払い。 - URL: https://webreaderapi.com/ja/pdf-to-markdown-api/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) レポート、論文、マニュアル、価格表はPDFであることがよくあります。Webページと同じendpointにリンクを渡すと、ドキュメントのテキストをMarkdownとして取得でき、チャンク化と埋め込みの準備が整います。 **概要 — PDFをURLからMarkdownに変換するAPIはありますか?** はい。**WebReaderAPI**では、PDFのURLを`https://webreaderapi.com/api/v1/read`に送信します。APIがファイルをダウンロードし、見出し、段落、リスト、シンプルな表を含むMarkdownとしてテキストを返します。20 MB、100ページまでのファイルに対応し、10ページ単位(開始したブロックごと)で1クレジット、2026年10月時点で$0.07/1Kページから。KYC不要。暗号資産で支払い。 ## PDF to Markdownの概要 | 項目 | 値 | | --- | --- | | エンドポイント | `GET https://webreaderapi.com/api/v1/read?url=https://…/report.pdf`(Webページと同じ) | | 制限 | 20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです | | 出力 | 見出し、段落、リスト、シンプルな表を含むMarkdownテキスト。プレーンテキストには`format=text` | | 非対応 | テキストレイヤーのないスキャンPDF(OCRなし)、パスワード保護されたファイル | | robots.txt | 他のページと同様にPDFリンクにも適用 | | 支払い | BTC, USDT, USDC, ETH, SOL, LTC、$25のトップアップから。KYC不要 | ## PDFのページ数はどう数えますか? PDFは10ページ単位(開始したブロックごと)で1クレジットです。4ページのパンフレットは1クレジット、25ページのレポートは3クレジット、100ページのマニュアルは10クレジットです。レスポンスには正確な数値が`credits_used`で示されます。 20 MBを超えるファイルや100ページを超えるファイルは`422 unsupported_content`を返し、クレジットは消費しません。長いドキュメントの場合は、まず同じ内容のHTML版を探してください。多くの場合、より安価で構造も良好です。 ## Markdownはどのようになりますか? コンバーターはPDFのテキストレイヤーから読み取り順序を再構築します。セクション冒頭の大きな行や太字の行は見出しになり、箇条書きや番号付きの項目はMarkdownリストになり、シンプルなグリッド表はMarkdownの表になります。 各ページで繰り返されるランニングヘッダー、フッター、ページ番号は削除されるため、チャンク内の文が分割されることはありません。2段組みレイアウトは段ごとに読み取ります。脚注はページ上の位置のままテキストとして残ります。 *Python: PDFを読み取り、見出しごとにチャンクに分割する* ```python import os import re import requests resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": "https://example.com/annual-report.pdf"}, timeout=120, ) resp.raise_for_status() doc = resp.json() chunks = [c.strip() for c in re.split(r"\n(?=#{1,3} )", doc["markdown"]) if c.strip()] print(len(chunks), "chunks,", doc["credits_used"], "credit(s)") for c in chunks[:3]: print(c.splitlines()[0]) ``` ## どのPDFが最適で、どれが対応していませんか? ワードプロセッサ、Webサイト、パブリッシングツールからエクスポートされたPDFが最適です。これらはフォントと位置を持つテキストレイヤーを含んでいます。年次報告書、研究論文、製品マニュアル、ポリシー文書、価格表は通常このグループに該当します。 スキャン文書はページの画像であり、テキストレイヤーがありません。WebReaderAPIは光学文字認識を実行しないため、スキャン文書はテキストがほとんど、またはまったく返りません。そのことは`word_count`フィールドにすぐに示されます。パスワード保護されたPDFや暗号化されたPDFは`422 unsupported_content`で拒否され、課金はありません。 ## PDFはRAGパイプラインにどう組み込みますか? Webページと同じように扱います。PDFを読み取り、Markdownを見出しに沿って分割し、各チャンクのメタデータにソースURLとページタイトルを追加してから埋め込みます。URLを保持しておくと、アシスタントが使用したドキュメントを引用できます。 クロールが同じドメイン上のPDFへのリンクに遭遇すると、同じルールと同じrobots.txtのチェックで読み取ります。完全な取り込み例については[RAGガイド](https://webreaderapi.com/ja/use-cases/rag/)をご覧ください。 ## PDF変換のコストはいくらですか? PDFはWebページと同じクレジットから消費されます。10ページ単位(開始したブロックごと)で1クレジットです。$3.75あたり10,000ページの場合、約10,000件の短いPDF、または100ページのドキュメント1,000件を変換できます。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | スケール | 500,000ページ | $50 | $0.10/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## PDF to Markdown API: よくある質問 ### リンクを送信する代わりにPDFファイルをアップロードできますか? バージョン1ではできません。APIは公開URLからPDFを読み取ります。非公開のファイルを変換するには、リクエストの間だけ、自分が管理するURLに置いてください。 ### スキャンしたPDFからテキストを抽出しますか? いいえ。WebReaderAPIはPDFのテキストレイヤーを読み取り、OCRは実行しません。スキャン文書はテキストがほとんど、またはまったく返りません。そのことは`word_count`フィールドに示されます。 ### 表は保持されますか? シンプルなグリッド表はMarkdownの表になります。結合セルや複雑なレイアウトを持つ表は読み取り順序のままテキストとして保持され、モデルはこのテキストも問題なく読み取れます。 ### 失敗したPDFは課金されますか? サイズが大きすぎるファイル、長すぎるファイル、暗号化されたファイル、サイトに拒否されたファイルは課金されません。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # Web reader APIの料金:無期限のプリペイド式ページクレジット > WebReaderAPIの料金:10,000ページで$3.75、最大で$0.07/1Kページまで、クレジットは無期限、失敗したページは無料。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/pricing/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 1クレジットで1ページを読み取れます。ブラウザが必要なページは2クレジットです。失敗したページやサイトに拒否されたページは無料です。暗号資産の残高からパックを購入し、自分のペースで使えます。KYC不要 — 身分証明書もセルフィーも書類も不要。暗号資産で支払い。 **概要 — WebReaderAPIの料金はいくらですか?** **WebReaderAPI**はプリペイド式ページクレジットを販売しています:$3.75で10,000ページ($0.38/1Kページ)、$21.75で100,000ページ、$74.25で1,000,000ページ、そして$0.07/1Kページは500万で、2026年10月時点。ブラウザで読み取るページは2クレジットを使用します。失敗したページとrobots.txtに拒否されたページは無料で、クレジットは無期限です。KYC不要、暗号資産で支払い。 ## どのクレジットパックを買えばいいですか? 6つのパックがあり、どれも同じAPIと同じオプションです。1ページあたりの価格は、最小のパックの$0.38/1Kページから最大のパックの$0.07/1Kページまで下がります。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | スケール | 500,000ページ | $50 | $0.10/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | | 一括 | 5,000,000ページ | $350 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 お支払いの流れ ## ページ数はどのようにカウントされますか? すべてのレスポンスは`credits_used`でいくらかかったかを示します。ルールは次のとおりです: - **静的ページ:1クレジット。** ページのHTMLにコンテンツが含まれていました。 - **ブラウザが必要だったページ:2クレジット。** `render=auto`では、生のHTMLがほぼ空のときだけブラウザが実行されます。`render=false`は決してブラウザを使いません。 - **国を指定:+10クレジット。** ページを読み取る国を指定すると10クレジットが加算されます。その場合、ページはその国のレジデンシャル接続経由で読み取られるためです。 - **PDF:開始された10ページのブロックごとに1クレジット。** 25ページのレポートは3クレジットです。 - **エラーと拒否:0クレジット。** 無効なURL、タイムアウト、robots.txtやサイトに拒否されたページ、読み取れないファイルは無料です。 - **残高の確認:無料。** `GET https://webreaderapi.com/api/v1/credits`はクレジットを使いません。 ## 未使用のクレジットは期限切れになりますか? いいえ。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。あるクロールのために購入したパックは残りの価値を次のクロールのために保持し、1か月アイドル状態のエージェントも何も失いません。 もしサービスを販売停止することがあれば、[利用規約](https://webreaderapi.com/ja/terms/)はクレジットを使うかその価値を移すために少なくとも30日前の通知を提供します。値上げは公表後に購入されたパックにのみ適用されます。 ## どのパックが自分の作業量に合いますか? 典型的なボリュームとそれをカバーするパックです。ブラウザが必要なページは2クレジットで数えてください。 | 作業量 | ページ数 | 推奨パック | | --- | --- | --- | | プロトタイプのエージェントや小規模サイトの一度きりのクロール | 5,000未満 | 10,000ページ ($3.75) | | 小規模チームが毎日使うAIエージェント | 月10,000〜30,000 | 50,000ページ ($14.25) | | 複数のドキュメントサイトのRAGインデックス、週次更新あり | 30,000〜80,000 | 100,000ページ ($21.75) | | 自社ユーザーのためにページを読み取るプロダクト | 月100,000〜400,000 | 500,000ページ ($50) | | 研究コーパスや大規模アーカイブ | 100万以上 | 1,000,000ページ($74.25)または5,000,000ページ($350) | ## これらの価格は他のWeb reader APIと比べてどうですか? 各プロバイダーの公開料金ページに基づく、月100,000ページを読み取る場合の1,000ページあたりの価格です。21のAPIと3つのボリュームを含む完全な表は[web reader API pricing compared](https://webreaderapi.com/ja/compare/web-reader-api-pricing/)にあります。 | プロバイダーとプラン | 通常ページ | ブラウザが必要なページ | | --- | --- | --- | | WebReaderAPI, 100,000ページ | $0.22/1Kページ | 1ページ2クレジット | | Firecrawl Standard(100,000クレジットで$99) | $0.99 | $0.99(すべてのページをレンダリング) | | Olostep Standard($99) | $0.99 | $0.99(すべてのページをレンダリング) | | Crawl4AI Cloud Builder($99) | $0.50 | $0.99 | | Scrape.do Hobby(250,000クレジットで$29) | $0.29 | Proでは$0.99 | | ScrapingBee Freelance($49) | $0.49 | Startupでは$0.99 | | Exa contents | $1.00 | ブラウザオプションの記載なし | | Tavily Extract(ベーシック、従量課金あり) | $1.40 | $2.36(アドバンスト) | *価格確認日:2026年10月22日.* あらゆるボリュームやページタイプで最も安いと主張するものではありません。出典:各プロバイダーの料金ページ(比較ページに掲載)。 ## お支払いの流れ 1. **$25以上をチャージ** — 金額とコイン(BTC, USDT, USDC, ETH, SOL, LTC)を選択してください。暗号資産の額とレートは30分間固定されます。 2. **表示されたアドレスへ、指定のネットワークで送金してください** — お支払いページに、選択したコインとネットワークの入金アドレス(BTC オン Bitcoin, USDT オン Tron (TRC-20) または Ethereum (ERC-20), USDC オン Ethereum (ERC-20), ETH オン Ethereum, SOL オン Solana, LTC オン Litecoin)が表示されます。必ずそのネットワークでそのコインのみを送金してください。別のネットワークや別のコインで送金された資金は取り戻せません。ネットワーク手数料は金額とは別に必要です。 3. **表示された正確な金額を送金し、「送金しました」をクリックしてください** — 各入金には、小数の最後の桁まで含めた固有の正確な金額があります。この金額によって、当社はお支払いを特定し、お客様のアカウントに紐付けます。 4. **お支払いがブロックチェーン上で確認され次第、残高に反映** — ネットワークが取引を承認した後、当社がブロックチェーン上で取引を確認し、残高に反映します。ネットワーク承認の目安時間: 5. **すべてのページクレジットを1つの残高で管理** — パックから開始する場合、チャージ額はその価格(パックがそれより小さい場合は最低額)になります。クレジットは支払いが入金された時点で追加され、APIキーはダッシュボードで待機しています。残りは後続のパック用に残高に保持されます。 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. | 暗号資産 | ネットワーク | 確認数 | 通常の所要時間 | | --- | --- | --- | --- | | Bitcoin (BTC) | Bitcoin | 2 | 約20分 | | Tether (USDT) | Tron (TRC-20) | 20 | 約1分 | | Tether (USDT) | Ethereum (ERC-20) | 12 | 約5分 | | USD Coin (USDC) | Ethereum (ERC-20) | 12 | 約5分 | | Ethereum (ETH) | Ethereum | 12 | 約5分 | | Solana (SOL) | Solana | 1 | 約1分 | | Litecoin (LTC) | Litecoin | 6 | 約15分 | タブを閉じてしまった場合も、保留中のチャージはアカウントの「請求」に残っています。開くとアドレスと正確な金額を再度確認できます。 ## 料金に関するご質問 ### 無料枠はありますか? いいえ。無料プランはありません。最小パックがテスト手段で、最低チャージ額から支払います。最低チャージ額に到達するためだけに追加した金額は、未使用であれば30日以内にリクエストによりUSDTまたはUSDCで返金できます。10,000ページパックは$3.75で、最大パックのすべてのオプションが含まれます。 ### パックの方が安いのに、なぜ$25をチャージする必要があるのですか? すべての支払いは残高を通じて行われ、最低チャージ額は$25です。残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません。 ### 返金はできますか? 購入から72時間未満のクレジットパックは、クレジットの20%未満しか使用されていなければ残高に戻ります。パックが機能せず、サポートが24時間以内に解決できない場合は、全額が残高に戻ります。チャージは残高として保持され、法律で定められていない限り返金されません。最低チャージ額に到達するためだけに追加した金額は、未使用であれば30日以内にリクエストによりUSDTまたはUSDCで返金できます。[返金ポリシー](https://webreaderapi.com/ja/refunds/)には具体的な計算例があります。 ### JavaScriptページは常に2クレジットかかりますか? ブラウザが実際に起動した場合のみです。`render=auto`では、ニュース、ブログ、ドキュメントのほとんどのページはHTMLから1クレジットで読み取られます。ブラウザが起動するのは、そのHTMLに含まれるテキストが少なすぎる場合だけです。`rendered`フィールドでどちらだったかがわかります。 ### どの暗号資産で支払えますか? BTC, USDT, USDC, ETH, SOL, LTC。USDTはTRC-20またはERC-20、USDCはERC-20で利用できます。[暗号資産での支払いページ](https://webreaderapi.com/ja/crypto-payments/)で各手順を説明しています。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # プライバシーポリシー > WebReaderAPIのプライバシーポリシー:ホスト名のみを30日間記録し、完全なURLやページ内容は記録しません。本人確認書類不要、カード不要、口座番号でのログイン。何を、なぜ保持するのかを説明します。 - URL: https://webreaderapi.com/ja/privacy/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) Webリーダーが扱うデータは2種類あります。お客様としてのあなたのデータと、読み取りを依頼されたページです。本ポリシーではこの順に両方を扱います。 **概要 — WebReaderAPIは私や私が読むページについて何を保持しますか?** **WebReaderAPI**は、アカウント番号、任意のメールアドレス、支払いおよびクレジットの記録、そして各ページのホスト名のみを含むリクエストログ(完全なURLや内容は含まない)を30日間保持します。読み取ったページのコピーは保持しません。本人確認書類やカードは求めず、データを販売または共有することもありません。 ## 当社が収集するあなたのデータは何ですか? サービスの運用に必要なものだけです: - **アカウント:** アカウント番号、および追加を希望された場合のメールアドレス。 - **支払い:** チャージ、そのトランザクションID、コインとネットワーク、購入したパック。 - **利用状況:** 各リクエストは、時刻、アカウント、ページのホスト名(完全なURLやその内容は決して記録しません)、ステータス、使用クレジットを含むログ行を残します。これらのログ行は30日後に削除されます。読み取ったページは保存されません。アカウント番号、注文、チャージ、クレジット合計はアカウントの存続中保持され、その後は会計法が求める期間のみ保持されます。記録は法律が当社に義務付ける場合にのみ当局へ提供されます。 - **APIキー:** リクエストを確認するために保存され、いつでも無効化できます。 ## 当社が決して収集しないものは何ですか? 本人確認書類、自撮り写真、会社書類、カード番号は、必要ないため決して収集しません。アカウント番号でログイン。メールは任意。 読み取ったページの完全なアドレス、その内容、返却するMarkdownを保存することは決してありません。回答が当社のサーバーを離れた時点で、ページのテキストは当社側から消去されます。 ## なぜ各ページのホスト名を保持するのですか? 理由は2つあります。利用履歴を表示するため、そして当社のクローラーに関する問題を報告するサイト所有者に対応するためです。`example.com`のようなホスト名で両方に十分なため、ログを書き込む前にすべてのURLをホスト名まで切り詰めています。ログは30日後に削除されます。 ## 当社があなたのために行うリクエストを誰が見ますか? 読み取りを依頼されたウェブサイトには、当社のインフラから、当社のユーザーエージェント`WebReaderAPI/1.0 (+https://webreaderapi.com/bot/)`を伴うリクエストが見えます。あなたのアカウント、キー、身元は見えません。`country`オプションを使用する場合、リクエストは同じユーザーエージェントで、その国のアドレスから当社のインフラを通じて送信されます。 当社のインフラが受け取るのは、ページを取得するために必要なものだけです:URLと、選択したオプションです。 ## Cookieを使用していますか? 公開ページでは広告やトラッキングのCookieを使用しません。クライアントエリアでは、ログイン状態の維持と言語などのインターフェース設定の記憶に必要なストレージを使用します。支払いページにはアドレスと金額が表示されますが、サードパーティのトラッカーは設定しません。 ## データを共有または開示しますか? データを販売または貸し出すことはありません。記録は法的義務がある場合にのみ当局に提供され、法律が許す場合はお知らせします。アカウントおよび支払いの記録はアカウントが開設されている間保持され、その後は会計規則が求める期間のみ保持されます。 ## 自分のデータを確認または削除するにはどうすればよいですか? 利用履歴と支払いはクライアントエリアで確認できます。アカウントを削除するには、クライアントエリアから依頼するか、注文IDを添えてsupport@webreaderapi.comまでご連絡ください。アカウント番号やキーをお尋ねすることはありません。アカウントを削除すると、[利用規約](https://webreaderapi.com/ja/terms/)で説明されているとおり、そのクレジットも削除されます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # 返金ポリシー > WebReaderAPIの返金ポリシー:使用率が20%未満であれば72時間以内にクレジットパックを残高に戻します。機能しないパックは全額クレジット。計算例付き。 - URL: https://webreaderapi.com/ja/refunds/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 返金は残高に戻り、そこに保持され、有効期限はありません。本ページではルール、実際のパックサイズを使った3つの例、そして依頼方法を説明します。 **概要 — WebReaderAPIのクレジットは返金してもらえますか?** はい、2つの場合があります。購入から72時間以内であれば、**WebReaderAPI**クレジットのパックは、20%未満しか使用していなければ残高に戻ります。動作しないパックで、サポートが24時間以内に修正できない場合は、全額がクレジットとして戻ります。トップアップは残高に残ります。返金できるのは、$25の最低額に達するために追加した分のみです。 ## 正確なルールは何ですか? 購入から72時間未満のクレジットパックは、クレジットの20%未満しか使用されていなければ残高に戻ります。パックが機能せず、サポートが24時間以内に解決できない場合は、全額が残高に戻ります。チャージは残高として保持され、法律で定められていない限り返金されません。最低チャージ額に到達するためだけに追加した金額は、未使用であれば30日以内にリクエストによりUSDTまたはUSDCで返金できます。 返金リクエストは担当者が処理し、承認されると金額が残高に反映されます。失敗したリクエストはそもそもクレジットを消費しないため、返金は不要です。これには、robots.txt、サイトのAI設定、またはサイト自体によって拒否されたページが含まれます。 ## 例1:誤って購入したパック $21.75で100,000ページを購入し、テストのために3,000ページを読み、より小さなパックの方が合っていると判断したとします。翌日に申請します。パックの3%しか使用しておらず、20%の上限未満かつ72時間以内なので、$21.75全額が残高に戻ります。そこから$3.75で10,000ページを購入できます。 ## 例2:動作しないパック $14.25で50,000ページを購入し、サポートが24時間以内に修正できない理由で、すべてのリクエストが当社側でエラーを返すとします。使用しようとした割合にかかわらず、パックは全額がクレジットとして戻ります。 ## 例3:最低額のトップアップ $3.75で10,000ページだけが必要でも、最低トップアップ額は$25です。差額は後のパックのために残高に残ります。使用しない場合、支払いから30日以内にUSDTまたはUSDCで差額の返金を申請できます。トップアップのその他の部分は、法律で求められる場合を除き、返金されません。 ## 返金はどうやって申請しますか? クライアントエリアのサポートフォームを使用するか、注文履歴に表示されている注文ID(アカウント番号やAPIキーは絶対に記載しないでください)を添えてsupport@webreaderapi.comまでご連絡ください。サポートは12時間以内に返信します。返金が承認されると、金額が残高に反映されます。 ## 返金が残高に戻るのはなぜですか? 暗号資産での支払いはカード決済のように取り消せず、コインを返送するたびにネットワーク手数料がかかるためです。残高へのクレジットは即時で、費用はかかりません。唯一の例外は、最低額に達するためだけに追加したトップアップ分で、30日以内かつ未使用の場合にステーブルコインで返金されます。それ以外の支払いは、法律で求められる場合を除き、返金されません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebReaderAPIのステータス:APIが動作しているか確認する方法 > WebReaderAPIのWebリーダーAPIが動作しているか確認する方法:無料のクレジットエンドポイント、各エラーコードの意味、インシデントが告知される場所。 - URL: https://webreaderapi.com/ja/status/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) ページが返ってこない場合、原因は通常ウェブサイトにあり、時にはネットワーク、当社であることはまれです。このページでは、クレジットを消費せずに数秒でどれかを判別する方法を説明します。 **概要 — WebReaderAPIが動作しているかどうかを知るには?** APIキーを使って`GET https://webreaderapi.com/api/v1/credits`を呼び出します。これは無料で、正常な応答が返ればAPIとAPIキーが動作していることを意味します。ページが失敗した場合、エラーコードが理由を示し、**WebReaderAPI**ではその分の課金はありません。当社側のインシデントは日付とともに[changelog](https://webreaderapi.com/ja/changelog/)に記録されています。 ## 最速のヘルスチェックは何ですか? クレジットエンドポイントです。ウェブサイトを取得せずに応答するため、当社側(認証、API、アカウント)のみをテストします。 *curl:APIと残りのクレジットを確認する* ```bash curl -s https://webreaderapi.com/api/v1/credits -H "Authorization: Bearer $WEBREADER_API_KEY" ``` ## どのエラーがウェブサイト由来で、どれが当社由来ですか? エラーコードが問題の場所を示します。これらのエラーはいずれもクレジットを消費しません。 | コード | 問題の場所 | 対処方法 | |---|---|---| | `blocked_by_robots` | サイトのrobots.txtが当社のクローラーを拒否 | 何もしない:サイトが拒否している | | `blocked_by_site_policy` | サイトが`ai-input=no`を宣言 | 何もしない:サイトが拒否している | | `target_refused` | サイトが403、429、チャレンジ、またはログインを返した | 後で試すか、サイトにアクセスを依頼する | | `fetch_failed` | DNS、TLS、接続、または404/410のページ | URLを確認し、後で再試行する | | `fetch_timeout` | サイトが時間内に応答しなかった | より長い`timeout`で再試行する | | `concurrency_limit` | アカウントからの同時リクエストが多すぎる | 速度を落とすか、上限の引き上げを依頼する | | `invalid_api_key`、`insufficient_credits` | APIキーまたは残高 | ダッシュボードを確認する | [エラーページ](https://webreaderapi.com/ja/docs/errors/)では、各ケースを再試行ループを含めて詳しく説明しています。 ## ここにリアルタイムの稼働率が表示されないのはなぜですか? まだ公開サンプルで測定しておらず、でっち上げの数値は誤解を招くだけだからです。読み取りの成功率は主に読み取るサイトに依存するため、単一のパーセンテージではほとんど意味がありません。数値を公開する際は、方法、サンプル、日付を併記します。 ## インシデントはどこで告知されますか? [changelog](https://webreaderapi.com/ja/changelog/)で、日付、影響を受けたエンドポイント、実施した対応とともに告知されます。当社側で繰り返しエラー(対象サイトに起因しないコード)が発生する場合は、リクエスト時刻とエラーコードを添えてsupport@webreaderapi.comまでご連絡ください。 ## ステータス:よくある質問 ### クレジットの確認に費用はかかりますか? いいえ。`GET https://webreaderapi.com/api/v1/credits`はクレジットを消費しないため、同時実行の上限内であればヘルスチェックから何度でも呼び出せます。 ### ページが私の環境では失敗するのに、ブラウザでは開けます。なぜですか? 通常、サイトが人とロボットを異なる扱いをするためです。robots.txtで当社のクローラーを拒否したり、自動リクエストにチャレンジページで応答したりすることがあります。当社はその応答を返し、課金はしません。エラーコードと`target_status`でサイトが返した内容を確認できます。 ### 失敗した読み取りに課金されることはありますか? いいえ。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # 利用規約 > WebReaderAPIの利用規約:アカウント、失効しないページクレジット、暗号資産でのトップアップ、robots.txtのルール、返金、責任について、平易な英語で記載しています。 - URL: https://webreaderapi.com/ja/terms/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) この規約はウェブサイト、クライアントエリア、APIに適用されます。各セクションは1つの問いに答えるもので、重要な内容が脚注に隠されていることはありません。 **概要 — WebReaderAPIの利用規約を簡単にまとめると?** **WebReaderAPI** WebページリーダーAPIのプリペイドページクレジットを暗号資産で支払います。最低$25のチャージ後から利用できます。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。すべてのリクエストは対象サイトのrobots.txtに従い、[利用規約](https://webreaderapi.com/ja/acceptable-use/)は本規約の一部です。本サービスはSerpGoat LLCが販売します。 ## 1. 本規約に拘束されるのは誰ですか? あなたと、WebReaderAPIを運営するSerpGoat LLCです。「あなた」とはアカウントの保有者、個人または組織を指します。アカウントを作成し、チャージを支払い、またはAPIを呼び出すことは、本規約および[利用規約](https://webreaderapi.com/ja/acceptable-use/)に同意したことを意味します。 ## 2. 本サービスは何をしますか? WebReaderAPIは、あなたが指定した公開WebページおよびPDFファイルを取得し、その内容をMarkdown、プレーンテキストまたは整形済みHTMLとして、`https://webreaderapi.com/api/v1/read`、`https://webreaderapi.com/api/v1/batch`、`https://webreaderapi.com/api/v1/crawl`を通じて返します。 Webサイトは自らのページの内容や、robotsが読み取ってよいかどうかを決めます。当社は返す内容を管理、修正、保証しません。同じURLでもリクエストごとに異なる結果になることがあります。 ## 3. アカウントとAPIキーはどう機能しますか? アカウント番号でログイン。メールは任意。アカウント番号でサインインするため、安全な場所に保管してください。任意のメールを登録しておくと、番号を復元する手段になります。メール未登録の場合、番号を紛失すると復元できません。 複数のキーを作成し、ダッシュボードからいつでも失効させることができます。あなたのキーのいずれかを使って送信されたすべてのリクエストは、送信者が誰であってもあなたのクレジットを消費するため、キーは非公開に保ち、漏えいしたキーは失効させてください。アカウントは1人または1組織につき1つです。 ## 4. クレジットはどう数えられ、いつ失効しますか? 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。ページを読み取る国を指定すると10クレジットが加算されます。その場合、ページはその国のレジデンシャル接続経由で読み取られるためです。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。 プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。クレジットが失われるのは、あなたがアカウントを削除した場合、または本規約違反により当社がアカウントを閉鎖した場合のみです。当社が本サービスの販売を停止する場合は、少なくとも30日前に通知し、残りのクレジットを使用するか、その価値を別の製品に移せるようにします。 ## 5. 支払いはどう機能しますか? 価格は[料金ページ](https://webreaderapi.com/ja/pricing/)に米ドルで表示されています。BTC, USDT, USDC, ETH, SOL, LTCで残高をチャージし(最低$25)、その残高からクレジットパックを購入します。表示されたネットワーク上で表示された正確な金額を送金し、「送金しました」をクリックしてください。支払いは正確な金額で照合され、ブロックチェーンで確認されると残高に反映されます。 残高は価値を保ち、有効期限はありません。パックの価格が最低チャージ額を下回る場合、その差額分は未使用であれば30日以内にUSDTまたはUSDCで返金を求めることができます。その他のチャージは、法律で求められる場合を除き返金されません。ネットワーク手数料は送金者が負担します。 ## 6. 返金は受けられますか? はい、次の2つの場合に残高へ返金されます。購入から72時間以内にパックの使用率が20%未満の場合、およびパックが機能せずサポートが1日以内に修復できない場合です。[返金ポリシー](https://webreaderapi.com/ja/refunds/)に完全なルールと具体例が記載されています。 ## 7. 読み取るページにはどのようなルールが適用されますか? 当社のクローラーはすべてのリクエストに3つのルールを適用し、これらを無効にすることはできません。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。サイトがrobots.txtでContent-Signal: ai-input=noを宣言している場合、そのページをあなたのために読み取ることはありません。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。 受け取った内容の利用方法については、その所有者の権利を含め、あなたが責任を負います。[利用規約](https://webreaderapi.com/ja/acceptable-use/)に禁止される利用が記載されています。 ## 8. 量や速度に制限はありますか? すべてのアカウントには同時に読み取れるページ数の上限があります。上限はダッシュボードに表示され、サポートで引き上げられます。1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います。バッチジョブあたり最大100 URL。単一のWebサイトを保護するため、例えばその`Crawl-delay`を尊重することにより、そのサイトへのリクエストを遅らせたり一時停止したりする場合があります。 ## 9. いつアカウントを停止できますか? 本規約または利用規約への違反が見つかった場合、支払いが取り消されたり不正であった場合、または法律で求められる場合。法律が許す場合は理由を通知し、停止の前に事実を人が確認します。 ## 10. 何を保証しますか? 当社はサービスを現状のまま提供します。特定のページが読み取れること、サイトが当社のリクエストを受け入れること、サービスが中断なく稼働することを保証しません。失敗したリクエストやサイトに拒否されたページは課金されないため、ページが読み取れない場合のコストが抑えられます。 ## 11. 責任はどうなりますか? 法律が許す範囲で、あらゆる請求に対する当社の総責任は、原因となった事象の前12か月間にあなたが当社に支払った金額に限定されます。逸失利益やデータ損失などの間接的な損失については責任を負いません。本規約のいかなる条項も、法律が制限を許さない責任を制限するものではありません。 ## 12. 本規約はどう変更されますか? すべてのバージョンに日付を付け、変更を[変更履歴](https://webreaderapi.com/ja/changelog/)に記録します。あなたの権利を減らす変更は、変更が公開された後に購入されたクレジットに適用されます。ご質問はsupport@webreaderapi.comまで。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebページをMarkdownに変換するAPI:任意のURLの本文抽出、モデルにそのまま渡せる形で > LLMやAIエージェント向けのWebページをMarkdownに変換するAPI:任意のURLを、タイトル・著者・日付付きのクリーンなMarkdownに、$0.07/1Kページから。KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/url-to-markdown-api/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) URLを渡すと記事がMarkdownで返ります。見出し、段落、リスト、表、リンクは保持され、メニュー、Cookieバナー、広告、フッターは除去されます。ページのタイトル、著者、日付、言語も付きます。 **概要 — WebページをLLM向けにクリーンなMarkdownへ変換するAPIはどれですか?** WebページをMarkdownに変換するAPIは、ページを取得して本文を保持し、Markdownとして返します。**WebReaderAPI**は1回のリクエストで実行します:`GET https://webreaderapi.com/api/v1/read?url=…`は見出し、リスト、表、リンクを備えた記事を、タイトル、著者、日付、語数とともに返し、2026年10月時点で$0.07/1Kページから1ページあたり1クレジットです。robots.txtを尊重します。KYC不要。暗号資産で支払い。 ## URLをMarkdownに変換するAPIの概要 | 項目 | 値 | | --- | --- | | エンドポイント | `GET https://webreaderapi.com/api/v1/read?url=…`(またはJSON本文を使う場合は`POST`) | | 出力 | ページ本文のクリーンなMarkdown(またはプレーンテキスト、整形済みHTML)。タイトル、説明、著者、公開日、言語、単語数付き。リンクと画像はオプションで取得 | | JavaScript | ページに必要な場合はヘッドレスブラウザでJavaScriptをレンダリング(render=auto)、常にレンダリング、または一切レンダリングしない | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | トークン予算 | `max_chars`はモデルが受け取れる長さにMarkdownを切り詰めます | | robots.txt | 当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません | | 料金 | 10,000ページで$3.75、100,000ページで$21.75、5,000,000ページの$0.07/1Kページから | | 支払い | BTC, USDT, USDC, ETH, SOL, LTC、$25のトップアップから。KYC不要 | ## なぜWebページをモデルに渡す前にMarkdownに変換するのですか? Markdownはモデルが必要とする構造を保ち、不要なマークアップを削除します。一般的な記事ページでは、数百語の本文の周りにナビゲーション、スクリプト、トラッキングタグ、Cookie通知、関連記事ウィジェットが付いてきます。生のHTMLとして送ると、支払うトークンのほとんどがマークアップです。 Markdownは見出しを`#`として、リストを`-`として、表をパイプとして、リンクを`[text](url)`として保ちます。モデルはどの文がどのセクションに属するかを把握でき、出典リンクを引用し、見出しに沿ってテキストをチャンクに分割できます。同じテキストをプレーンな文章で送るとこの構造が失われ、HTMLで送るとはるかに多くのトークンがかかります。 ## APIは何を残し、何を削除しますか? デフォルトの`main_content=true`では、APIは読者が求めてきたページの部分を残し、それ以外を削除します。 | 残す | 削除する | |---|---| | タイトルと見出し | サイトのナビゲーションとメニュー | | 段落、引用、リスト | Cookieと同意のバナー | | 表(Markdownの表として) | 広告とプロモーション用ウィジェット | | コードブロック(表示されていれば言語付き) | サイドバーと関連記事リスト | | 本文中のリンク | フッターと法的な定型文 | | 画像(`include_images=true`のときのみ) | 共有ボタンとコメントフォーム | 代わりにページ全体を変換するには`main_content=false`を設定します。たとえば、すべてが重要なホームページや商品一覧などです。Markdownなしのプレーンテキストには`format=text`、メインコンテンツのクリーンなHTMLには`format=html`を設定します。 *curl: 1ページをMarkdownとして取得し、20,000文字に切り詰める* ```bash curl -G "https://webreaderapi.com/api/v1/read" \ -H "Authorization: Bearer $WEBREADER_API_KEY" \ --data-urlencode "url=https://example.com/blog/pour-over-coffee" \ -d format=markdown -d max_chars=20000 ``` *Python: ページを読み、メタデータとMarkdownを出力する* ```python import os import requests resp = requests.get( "https://webreaderapi.com/api/v1/read", headers={"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}, params={"url": "https://example.com/blog/pour-over-coffee", "format": "markdown"}, timeout=90, ) resp.raise_for_status() page = resp.json() print(page["title"], "|", page.get("author"), "|", page.get("published_at")) print(page["word_count"], "words,", page["credits_used"], "credit(s)") print(page["markdown"][:500]) ``` ## JavaScriptで構築されたページはどうなりますか? 多くのページは最初のHTMLにほとんどテキストを含まず、ブラウザ内でコンテンツを構築します。デフォルトの`render=auto`では、APIはまず生のHTMLを読み、テキストが少なすぎる場合はヘッドレスブラウザでページを開いて結果を読み取ります。どちらが行われたかは`rendered`で示されます。 ブラウザが必要だったページは1クレジットではなく2クレジットかかります。あるサイトが常に必要だと分かっている場合は`render=true`を設定し、サーバーが送るものだけが必要な場合は`render=false`を設定すれば、2つ目のクレジットを支払うことはありません。 ## サイトが読み取られたくない場合はどうなりますか? 私たちはサイトの選択を尊重し、料金は発生しません。クローラーは`WebReaderAPI`として自己識別し、読み取りのたびにrobots.txtを確認します。私たちのトークンに対して、またはすべてのロボットに対して許可されていないページは`403 blocked_by_robots`を返します。`Content-Signal: ai-input=no`を宣言しているサイトは`403 blocked_by_site_policy`を返します。 サイトが403ステータス、チャレンジページ、ログインウォールなど別の方法でリクエストを拒否した場合は、サイト自身のステータスとともに`502 target_refused`が返されます。サイトが当社のリクエストを拒否した場合、その回答をそのまま返します。CAPTCHAを解いたり、アカウントにログインしたり、ブロックやペイウォールを回避しようとしたりすることは決してありません。私たちの[crawlerページ](https://webreaderapi.com/ja/bot/)では、正確なUser-Agentとともにこのすべてをサイト所有者向けに説明しています。 ## プロジェクトには何ページ必要ですか? 1ページにつき1クレジット、ブラウザが必要なページは2クレジットとして数えます。一般的な目安は次のとおりです。 - **AIエージェント**が1タスクあたり5ページを読み、1日に100タスクを実行する場合、月に約15,000ページを読みます。50,000ページ($14.25)は3か月以上もちます。 - 各2,000ページのドキュメントサイト3つによる**RAGインデックス**は6,000ページとなり、その後は変更されたページを毎週更新します。 - ニュース記事とブログ記事40万件の**研究コーパス**は500,000ページ($50)に収まります。 クレジットは失効しないため、一度きりのクロール用に購入したパックの残りの価値は、後のジョブのために残ります。 ## URL to Markdown APIの料金はいくらですか? 2026年10月時点で、10,000ページは$3.75、100,000ページは$21.75、1,000,000ページは$74.25です。失敗したページとrobots.txtによって拒否されたページは無料です。[すべてのパック](https://webreaderapi.com/ja/pricing/)をご覧ください。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | ボリューム | 1,000,000ページ | $74.25 | $0.07/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## URL to Markdown API: よくある質問 ### Markdownは表とコードブロックを保持しますか? はい。HTMLの表はMarkdownの表になり、コードブロックはフェンス付きのまま残り、ページが言語を示していればその言語も付きます。結合セルなど非常に複雑な表は、行ごとに平坦化されます。 ### 記事ではなくページ全体を取得できますか? はい。`main_content=false`を設定すると、APIはナビゲーションやフッターを含むページ上のすべてを変換します。これはホームページ、カテゴリページ、商品一覧に適しており、メインコンテンツ検出器では有用な部分が削除されてしまいます。 ### モデルのコンテキストウィンドウ内にページを収めるにはどうすればよいですか? `max_chars`(1,000〜500,000文字)を使用して、Markdownを指定の長さで切り詰めます。`word_count`フィールドは記事全体の長さを示すので、エージェントはさらに読むべきかどうかを判断できます。 ### ログインやペイウォールの背後にあるページを読めますか? いいえ。WebReaderAPIは公開ページのみを読み取ります。アカウントにログインすることはなく、ペイウォールやブロックを回避しようとすることもありません。そのようなページはサイトの拒否を返し、料金は発生しません。 ### キーを取得するのに身分証やカードは必要ですか? いいえ。WebReaderAPIは身分証、自撮り写真、企業書類、カードを求めません。アカウント番号でログイン。メールは任意。BTC, USDT, USDC, ETH, SOL, LTCで$25からチャージできます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # WebリーダーAPIで何を構築できますか? > チームがWebリーダーAPIで構築するもの:AIエージェント向けのフェッチツール、RAGの取り込み、ページ変更の監視、WebサイトからMarkdownへのエクスポート。$0.07/1Kページから。 - URL: https://webreaderapi.com/ja/use-cases/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) クリーンなページテキストで人々が行うことの大半は、4つのジョブに集約されます。エージェントに読む手段を与える、ナレッジベースに供給する、変更のためにページを監視する、サイトのコンテンツをMarkdownに移行する。それぞれにコードとコストを掲載した専用ページがあります。 **概要 — WebリーダーAPIは何に使われますか?** チームはWebリーダーAPIを使って、AIエージェントにフェッチツールを与え、サイトをRAGインデックスに取り込み、公開ページの変更を監視し、自社のWebサイトをMarkdownに変換します。**WebReaderAPI**は1つのAPIキーでこの4つすべてをカバーします。ページは`/read`、リストは`/batch`、サイトは`/crawl`、2026年10月時点で$0.07/1Kページから1ページあたり1クレジットです。KYC不要、暗号資産で支払い。 ## あなたのユースケースはどれですか? - **[AIエージェント](https://webreaderapi.com/ja/use-cases/ai-agents/)** — Claude、Cursor、OpenClaw、n8n、または独自のエージェント向けのread_urlツール。ページごとの長さ上限付き。 - **[RAG取り込み](https://webreaderapi.com/ja/use-cases/rag/)** — ドキュメントやブログを、見出しとソースURLを保持したMarkdownチャンクにクロール。 - **[変更監視](https://webreaderapi.com/ja/use-cases/monitoring/)** — 料金ページ、ポリシー、変更履歴を定期的に読み取り、差分をテキストで取得。 - **[WebサイトをMarkdownに変換](https://webreaderapi.com/ja/use-cases/website-to-markdown/)** — 移行、バックアップ、または独自のアシスタント用に、自社サイトをMarkdownファイルにエクスポート。 - **[PDF](https://webreaderapi.com/ja/pdf-to-markdown-api/)** — リンクからレポート、論文、マニュアルをMarkdownテキストに変換。 - **[llms.txt](https://webreaderapi.com/ja/guides/llms-txt-generator/)** — クロールから自社サイト用のllms.txtファイルを、1ページ1行で作成。 ## 各ユースケースにはどのendpointが必要で、何ページ使いますか? 最初のパックを見積もるための、小規模チームの典型的なボリューム。1ページあたり1クレジット、ページにブラウザが必要な場合は2クレジット。 | ユースケース | エンドポイント | 1か月あたりの典型的なページ数 | | --- | --- | --- | | 1タスクで5ページを読み、1日100タスクを実行するエージェント | `/read` | 約15,000 | | 3つのドキュメントサイトのRAGインデックス、毎週更新 | `/crawl`、次に`/batch` | 構築に6,000、その後は週に数百 | | 競合他社とポリシーの200ページを毎日監視 | `/batch` | 約6,000 | | 2,000ページのサイトを1回エクスポート | `/crawl` | 2,000、1回払い | ## これら4つの作業に共通する問題は何ですか? いずれもページのレイアウトではなく、読める部分を必要としています。エージェントはメニューにトークンを無駄遣いし、インデックスは定型文をランク付けし、変更モニターは広告が切り替わるたびに誤報を出し、移行ではcookieバナーが新しいサイトにコピーされます。本文抽出は、どのケースでも同じ問題を解決します。 また、制約も共通しています。ログインやペイウォールの背後にあるページにはアクセスできず、robotsを拒否するサイトはスキップされ、課金されません。当社はrobots.txtを尊重します。クローラーはWebReaderAPIとして名乗り、自身向けまたはすべてのロボット向けに書かれたルールに従い、サイトが禁止したページは読み取りません。拒否されたページは課金されません。 ## /read、/batch、/crawlのどれを選べばよいですか? その作業をこなせる最小のツールを使ってください。 - **`/read`** は1ページを同期的に返します。次に何を読むかをページごとに判断するエージェントに適しています。 - **`/batch`** は、すでに把握している最大100件のURLをバックグラウンドジョブとして読み取ります。監視リストやリフレッシュに適しています。 - **`/crawl`** は開始URLからサイトマップとrobots.txtに従ってサイト全体を検出・読み取り、最大10,000ページまで対応します。初期構築やエクスポートに適しています。 3つとも `format`、`main_content`、`render`、`max_chars` など同じオプションを受け付け、課金方法も同じです。 ## 最初のプロジェクトの費用はいくらですか? 最初のプロジェクトのほとんどは小さなパック1つに収まります。プロトタイプのエージェント、単一のドキュメントインデックス、数百ページの監視リストなら、月に数千から15,000クレジット程度です。2026年10月時点で、10,000ページ のコストは $3.75、50,000ページ のコストは $14.25 です。 クレジットに有効期限はないため、成長する可能性のあるプロジェクト向けに大きめのパックを買っても、利用が少ない月に追加コストはかかりません。失敗したページとrobots.txtで拒否されたページは無料です。 ## 最初のプロジェクト向けのパック 小さく始めてください。クレジットは期限なしで繰り越されます。1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## ユースケース:よくある質問 ### 複数のプロジェクトで1つのキーを使えますか? はい。またはプロジェクトごとにキーを作成すれば、使用量を別々に確認でき、他のキーに影響を与えずに1つだけ失効させられます。APIキーは複数作成できます(例:エージェントやプロジェクトごとに1つ)。ダッシュボードからいつでも失効できます。 ### JavaScriptレンダリングが必要なユースケースはどれですか? モダンなWebアプリ、シングルページのドキュメントサイト、最初のレスポンス後にコンテンツを読み込むページを読むものです。`render=auto` では、生のHTMLに含まれるテキストが少なすぎる場合にのみAPIがレンダリングします。 ### WebReaderAPIに向かないユースケースはありますか? はい。私人に関する個人データの収集、ログインやペイウォールの背後にあるコンテンツの閲覧、サイトの拒否を回避する必要があるもの全般です。[Acceptable Use Policy](https://webreaderapi.com/ja/acceptable-use/) に規則を記載しています。 ### 始めるのに身分証明書は必要ですか? いいえ。WebReaderAPI は身分証明書もセルフィーも書類も求めません。入金は BTC, USDT, USDC, ETH, SOL, LTC で $25 から始められます。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # AIエージェント向けWeb fetchツール: ページをクリーンなMarkdownとして読み取る > AIエージェント向けのWeb fetchツール: 長さ上限付きで任意の公開ページをMarkdownとして読み取り、MCP、OpenAIツール、LangChain、n8nから$0.07/1Kページで利用。暗号資産で支払い。 - URL: https://webreaderapi.com/ja/use-cases/ai-agents/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 検索はできても読み取れないエージェントは、スニペットから回答します。任意の公開URLを短くクリーンなMarkdownに変換するツールを与えれば、設定した予算の範囲内で、ソースを読み、引用し、出典を示すことができます。 **概要 — AIエージェントにWeb fetchツールを与える最善の方法は何ですか?** WebリーダーAPIを、URLを受け取り、ページのメインコンテンツをMarkdownとして指定の長さで切り詰めて返すツールとしてラップします。**WebReaderAPI**が読み取りを行い、必要に応じてJavaScriptをレンダリングし、robots.txtを尊重し、2026年10月時点で$0.07/1Kページから1ページにつき1クレジットを課金します。すぐに使えるツールコードは、MCP、OpenAI function calling、LangChain、n8n、OpenClawに対応しています。KYC不要、暗号資産で支払い。 ## エージェントツールとしてのWebReaderAPI | 項目 | 値 | | --- | --- | | ツール | `https://webreaderapi.com/api/v1/read`を呼び出す`read_url(url, max_chars)` | | 戻り値 | メインコンテンツのMarkdown、加えてタイトル、著者、日付、語数 | | 長さ上限 | `max_chars`、1ページあたり1,000〜500,000文字 | | JavaScriptページ | ページに必要な場合はヘッドレスブラウザでJavaScriptをレンダリング(render=auto)、常にレンダリング、または一切レンダリングしない | | 拒否 | 明確なエラーとして返され、課金はされない | | 連携 | [MCP](https://webreaderapi.com/ja/docs/mcp/)、[OpenAI](https://webreaderapi.com/ja/docs/openai/)、[LangChainとLlamaIndex](https://webreaderapi.com/ja/docs/langchain/)、[n8n](https://webreaderapi.com/ja/docs/n8n/)、[OpenClaw](https://webreaderapi.com/ja/docs/openclaw/) | | 料金 | 10,000ページで$3.75。クレジットに有効期限はありません | ## なぜエージェントには生のHTMLではなくリーダーが必要なのですか? 生のHTMLは、モデルには不要な要素にコンテキストウィンドウを費やしてしまうからです。ニュース記事やドキュメントページは、ナビゲーション、スクリプト、同意バナー、関連リンクに囲まれた状態で届きます。そのまま渡すと会話の余地を圧迫し、モデルがメニューを引用する原因になります。 リーダーは3つの問題を同時に解決します。本文だけを残し、JavaScriptが実行されるまで空のページをレンダリングし、PDFをテキストに変換します。エージェントは、引用できるタイトルと日付を伴う、コンパクトなMarkdownのブロックを1つ受け取ります。 ## 組み込みのフェッチツールが失敗することがあるのはなぜですか? 主な理由は、サイトが自動化されたトラフィックを拒否するからです。2025年7月1日以降、Cloudflareは新しいドメインに対してデフォルトでAIクローラーをブロックしており、2026年9月15日からは、そのプリセットにより新しいドメインの広告収益型ページで「Agent」トラフィックをブロックします。コーディングエージェントやアシスタントの組み込みツールも、他のクライアントと同様にこうした拒否に遭遇します。 それ以外の失敗は技術的なものです。2026年10月22日に読んだOpenClawのドキュメントによると、その組み込みのweb_fetchはReadabilityで本文抽出を行い、JavaScriptを実行せず、出力を20,000文字に制限しています。ブラウザ上で構築されたページ、長いドキュメント、遅いサーバー、レート制限は、いずれもこうしたツールを失敗させます。ページをレンダリングするリーダーはJavaScriptの問題を解決し、キャッシュと忍耐が残りを解決します。拒否はサイト所有者の判断です。[web fetch 403エラーに関するガイド](https://webreaderapi.com/ja/guides/web-fetch-403-errors/)で各ケースを説明しています。 ## なぜツール名がweb_fetchではなくread_urlなのですか? エージェントがすでに持っているツールとの衝突を避けるためです。Claude CodeとOpenClawはどちらも`web_fetch`という名前の組み込みツールを搭載しています。同じ名前の2つ目のツールがあると、モデルはどちらを呼び出しているのか混乱します。私たちのツールを`read_url`と名付けることで、両方を利用可能に保てます。エージェントは簡単な確認には組み込みのフェッチャーを使い、クリーンなMarkdown、PDF、JavaScriptページが必要なときには`read_url`を使えます。 ドキュメントページのツール定義はすべてこの名前を使っているので、プロンプトを変更せずにフレームワーク間を切り替えられます。 *Python:長さ上限付きのコンパクトなread_urlツール* ```python import os import requests API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} def read_url(url: str, max_chars: int = 12000) -> str: """Return a web page as Markdown for a model, or a short reason it was not read.""" resp = requests.get(API, headers=HEADERS, params={"url": url, "max_chars": max_chars}, timeout=90) data = resp.json() if resp.status_code != 200: err = data.get("error", {}) return "Not read (" + err.get("code", "error") + "): " + err.get("message", "") head = "# " + (data.get("title") or url) + "\nSource: " + data["final_url"] if data.get("published_at"): head += " | Published: " + data["published_at"] return head + "\n\n" + data["markdown"] if __name__ == "__main__": print(read_url("https://example.com/blog/pour-over-coffee", max_chars=2000)[:500]) ``` ## エージェントは何を読むべきかをどう判断すればよいですか? 予算とルールを与えてください。3つの習慣がコストとコンテキストを抑えます: - **読む量を絞り、質を重視する。** 1つの質問につき2〜4件のソースがあれば、引用付きで答えるのに通常十分です。 - **各ページに上限を設ける。** まず`max_chars`を10,000〜15,000文字程度に設定し、`word_count`で答えがさらに下にありそうだと分かったときだけ増やします。 - **拒否を報告する。** ページが読めなかったときは、モデルにその旨を伝えさせ、再試行するのではなく別のソースに移らせます。 上記のツールは拒否を1つの簡潔な文として返すので、モデルはそれをユーザーに説明できます。 ## WebReaderAPIでエージェントを動かすにはいくらかかりますか? 1ページにつき1クレジット、ブラウザが必要なページでは2クレジットです。1日に100件の質問に答え、それぞれ4ページを読むアシスタントは、月におよそ12,000ページを読みます。2026年10月時点で、50,000ページ($14.25)でそれを4か月分まかなえます。 クレジットに有効期限はないので、ある週は忙しく次の週は暇なエージェントでも月次クォータを無駄にしません。失敗したページやrobots.txtが拒否したページは無料です。 ## どのパックがエージェントに適していますか? まず10,000ページでプロトタイプを作り、エージェントが実際のユーザーにサービスを提供する段階で50,000ページまたは100,000ページに移行してください。クレジットに有効期限はありません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## AIエージェント:よくある質問 ### WebReaderAPIをClaude DesktopやCursorに追加できますか? はい、`read_url`を公開する小さなMCPサーバーを通じて追加できます。[MCPページ](https://webreaderapi.com/ja/docs/mcp/)にコードと設定スニペットがあり、APIキーは環境変数に保持します。 ### OpenClawで動作しますか? はい、OpenClawの組み込みweb_fetchと並ぶMCPサーバーとして動作します。[OpenClawページ](https://webreaderapi.com/ja/docs/openclaw/)にOpenClaw自身のドキュメントにあるコマンドを掲載しています。 ### エージェントはAIボットをブロックするページを読めますか? いいえ。robots.txtがページを拒否している場合、APIは`blocked_by_robots`を返します。サイトが拒否した場合は、サイトのステータスとともに`target_refused`を返します。どちらも課金されず、私たちが拒否を回避しようとすることは決してありません。 ### 長いページがコンテキストウィンドウを埋めるのを防ぐには? `max_chars`を設定してください。Markdownはその長さで切り詰められ、`word_count`がフルページの長さをエージェントに伝えるので、必要なときだけ追加を要求できます。 ### カードや身分証明書は必要ですか? いいえ。WebReaderAPIでは身分証明書、自撮り、書類、カードのいずれも求められません。支払いはBTC, USDT, USDC, ETH, SOL, LTCで、最低チャージ額は$25です。 ## ソース 1. [プレスリリース:AIクローラーがデフォルトでブロックされる](https://www.cloudflare.com/press-releases/2025/cloudflare-just-changed-how-ai-crawlers-scrape-the-internet-at-large/) — Cloudflare (2025-07-01) 2. [ブログ:AIクローラーとエージェントの新しいデフォルト設定](https://blog.cloudflare.com/accountable-mixed-use-ai-crawlers/) — Cloudflare (2026-09-15) 3. [Web fetchツール](https://docs.openclaw.ai/tools/web-fetch.md) — OpenClaw (read 2026-10-22) --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # ウェブサイト変更監視:公開ページをクリーンなMarkdownとして差分比較 > 公開ウェブページの変更を監視:料金ページ、ポリシー、変更履歴をスケジュールに従ってMarkdownとして読み取り、テキストを差分比較してアラートを出します。$0.07/1Kページから。 - URL: https://webreaderapi.com/ja/use-cases/monitoring/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 生のHTMLを比較すると、広告やトークンが変わるたびにアラートが上がります。本文をMarkdownとして比較すれば、読者が気づく変化だけが検出されます:新しい価格、言い回しが変わった条項、新しく追加された変更履歴の項目です。 **概要 — ウェブページのコンテンツ変更を監視するには?** 各ページをスケジュールに従って本文のMarkdownとして読み取り、テキストを保存し、前のバージョンと比較します。テキストが変わったときだけアラートを出します。**WebReaderAPI**は1回のバッチジョブで最大100 URLを読み取り、広告やメニューを除去して誤検知を防ぎ、2026年10月時点で$0.07/1Kページから1ページにつき1クレジットで課金します。KYC不要、暗号資産で支払い。 ## WebReaderAPIによる監視 | 項目 | 値 | | --- | --- | | エンドポイント | `POST https://webreaderapi.com/api/v1/batch`、次に`GET https://webreaderapi.com/api/v1/jobs/{job_id}` | | バッチサイズ | バッチジョブあたり最大100 URL | | 比較対象 | 広告、メニュー、バナーを除いた本文のMarkdown | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | ボリュームの例 | 1日に200ページをチェック = 1か月あたり約6,000ページ | | 料金 | 10,000ページで$3.75。クレジットに有効期限はありません | ## 何を監視する価値がありますか? ビジネスに関わる文言が含まれ、予告なく変更されるページ: - サプライヤーや競合他社の**料金ページ**:新しいプランや価格変動を確認できます。 - 依存している**利用規約、プライバシーポリシー、返金ポリシー**:変更された条項をいち早く把握できます。 - 開発の基盤としているツールの**変更履歴やリリースノート**:破壊的変更に素早く対応できます。 - 製品がリンクしている**ドキュメントページ**:誤った案内を素早く修正できます。 - 業界の規制機関や標準化団体からの**公示**。 リストは公開ページに限定してください。個人プロフィールやログインの背後にあるページは対象外です。 ## HTMLではなくMarkdownでdiffするのはなぜですか? HTMLはコンテンツが変わらなくても常に変化するからです。ローテーションする広告、セッショントークン、フッターのタイムスタンプ、A/Bテストのマークアップにより、同じページを2回読み込むだけで差異が生まれます。HTMLのdiffはこうしたノイズをアラートにしてしまい、人はそのアラートを読まなくなります。 メインコンテンツのMarkdownは、比較する前にノイズの大部分を取り除きます。残るのは人が読むテキスト、つまり見出し、段落、リスト、表です。そのテキストのdiffは短く、読みやすく、アラートを出す価値があります。 *Python:ページのリストをチェックして変更点を出力する* ```python import difflib import json import os import pathlib import time import requests API = "https://webreaderapi.com/api/v1" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} STORE = pathlib.Path("snapshots.json") URLS = [ "https://example.com/pricing", "https://example.com/legal/terms", "https://example.com/changelog", ] old = json.loads(STORE.read_text(encoding="utf-8")) if STORE.exists() else {} job = requests.post(API + "/batch", headers=HEADERS, json={"urls": URLS}, timeout=60).json() results, cursor, delay = [], None, 5 while True: params = {"cursor": cursor} if cursor else {} page = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json() results += page.get("results", []) cursor = page.get("next_cursor") if page["status"] == "done" and not cursor: break if not cursor: time.sleep(delay) delay = min(delay * 2, 60) new = dict(old) for item in results: if "markdown" not in item: print("not read:", item["url"], item.get("error", {}).get("code")) continue before = old.get(item["url"], "") if before and before != item["markdown"]: diff = difflib.unified_diff(before.splitlines(), item["markdown"].splitlines(), lineterm="", n=0) print("CHANGED:", item["url"]) print("\n".join(list(diff)[:40])) new[item["url"]] = item["markdown"] STORE.write_text(json.dumps(new, ensure_ascii=False), encoding="utf-8") ``` ## どのくらいの頻度で、どれくらいの礼儀でチェックすべきですか? ページが現実的に変わる頻度でチェックし、それ以上は行わないでください。料金ページや変更履歴には毎日、ポリシーやドキュメントには週次が適しています。1時間ごとに読むページが1日1回の読み取りより多くのことを教えてくれることはほとんどなく、コストは24倍になります。 WebReaderAPIはすべてのページでrobots.txtに従い、クロールジョブではサイトの`Crawl-delay`を尊重します。サイトが許可していないページはスキップされ、課金されないため、厳格なサイトはレポートから外れるだけです。robotsを拒否するページへのアクセスが必要な場合は、サイト所有者に問い合わせてください。 ## 監視のコストはいくらですか? チェック1回につき1ページ1クレジットです。2026年10月時点の価格での例: - **50ページ、毎日:** 1か月あたり約1,500ページ。10,000ページ($3.75)は6か月以上持ちます。 - **200ページ、毎日:** 1か月あたり約6,000ページ。50,000ページ($14.25)は約8か月持ちます。 - **1,000ページ、週次:** 1か月あたり約4,300ページで、前のケースとほぼ同じです。 ブラウザが必要なページは2クレジットを使用します。プレーンHTMLと分かっているページには`render=false`を設定して、クレジットを1に抑えてください。 ## 監視にはどのパックが適していますか? ページ数に1か月あたりのチェック回数を掛け、数か月持つパックを選んでください。クレジットは失効しません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## 変更監視:よくある質問 ### WebReaderAPIはアラートを送信しますか? いいえ。ページを読み取ってMarkdownを返すのみです。スクリプトがバージョンを比較し、メール、チャット、チケットでアラートを送信します。上記のコードは変更された行を出力する出発点です。 ### 日付やカウンターによる誤検知を避けるにはどうすればよいですか? HTMLではなくメインコンテンツのMarkdownを比較し、diffの前に「5分前に更新」など毎回の読み込みで変わる行を除去してください。ローテーションする要素のほとんどはメインコンテンツの抽出で既に取り除かれています。 ### JavaScriptが必要なページも監視できますか? はい。`render=auto`を使うと、JavaScriptなしでは空になるページがブラウザでレンダリングされ、2クレジットかかります。JavaScriptなしで動作するページは1クレジットのままです。 ### ページのリストではなくサイト全体を監視できますか? はい。バッチではなくクロールジョブを実行し、ページごとに比較してください。大規模なサイトでは、まずサイトマップの`lastmod`の日付を比較し、更新されたページだけを再読み取りしてください。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # RAG向けWebページ:サイトをクリーンでチャンク分割可能なMarkdownに変換 > WebページをRAGパイプラインに取り込む:ドキュメントやブログをクロールしてクリーンなMarkdownに変換し、見出しでチャンク分割し、ソースURLを保持します。$0.07/1Kページから、KYC不要、暗号資産で支払い。 - URL: https://webreaderapi.com/ja/use-cases/rag/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 検索はインデックスに入れたものに基づいて機能します。見出し、メタデータ、ソースURLを備えたクリーンなMarkdownは、より良いチャンク、無駄の少ないトークン、ページを引用できる回答をもたらします。 **概要 — WebページをRAGパイプラインに取り込むにはどうすればよいですか?** 各ページをメインコンテンツのMarkdownとして読み取り、見出しに沿って分割し、すべてのチャンクにソースURLとタイトルを付与してから、埋め込みを行い保存します。**WebReaderAPI**が読み取りを担当します:ページごとに1リクエスト、または最大10,000ページのサイト全体に対して1つのクロールジョブで、2026年10月時点で$0.07/1Kページから1ページ1クレジットです。robots.txtを尊重します。KYC不要、暗号資産で支払い。 ## WebReaderAPIによるRAG取り込み | 項目 | 値 | | --- | --- | | サイト全体 | `POST https://webreaderapi.com/api/v1/crawl`:1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います | | URLのリスト | `POST https://webreaderapi.com/api/v1/batch`: バッチジョブあたり最大100 URL | | ページごと | メインコンテンツのMarkdown、タイトル、著者、日付、言語、単語数 | | PDF | 20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです | | 課金 | 1クレジット = ブラウザなしでページを1回読み取り。ページのJavaScriptレンダリングにブラウザが必要な場合は2クレジット。失敗したリクエスト、またはサイトのrobots.txtが拒否したリクエストは課金されません | | 料金 | 50,000ページあたり$14.25、クレジットは失効しません | ## クリーンなMarkdownがより良い検索結果をもたらすのはなぜですか? ボイラープレートで構成されたチャンクは検索精度が低下します。メニュー、Cookieのテキスト、フッターが残ったままページを分割すると、多くのチャンクに同じナビゲーション用の単語が含まれ、無関係な質問に対してもベクトル検索がそれらを返してしまいます。メインコンテンツの抽出は、埋め込み前にそのノイズを取り除きます。 見出しも同じくらい重要です。`## Refund policy`で始まるチャンクはトピックを引き継ぐため、埋め込みと後で読むモデルの両方がその内容を把握できます。プレーンテキストはそのシグナルを失い、生のHTMLはマークアップの下に隠してしまいます。 ## 取り込みパイプラインはどのようなものですか? ベクターストアが何であっても、手順は5つです: 1. **URLを集める。** サイトをクロールするか、すでに持っているリストをバッチで送信します。 2. **Markdownとして読み取る。** 記事やドキュメントには`main_content=true`を使い、一覧ページには`false`を使います。 3. **見出しでチャンク分割する。** `#`、`##`、`###`で分割し、長いセクションは少しのオーバーラップを付けてサイズ上限まで切り詰めます。 4. **メタデータを付ける。** 各チャンクに`url`、`title`、`published_at`と見出しのパスを保存し、回答がソースを引用できるようにします。 5. **更新する。** sitemapの`lastmod`が変わったページを再読み取りし、エラーを返すようになったページのチャンクは削除します。 *Python: ページを読み取り、ソース付きでチャンクに分割する* ```python import os import re import requests API = "https://webreaderapi.com/api/v1/read" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} URLS = [ "https://docs.example.com/getting-started", "https://docs.example.com/billing", ] def chunks_for(url, max_len=2000): page = requests.get(API, headers=HEADERS, params={"url": url}, timeout=90).json() if "markdown" not in page: return [] out = [] for section in re.split(r"\n(?=#{1,3} )", page["markdown"]): section = section.strip() heading = section.splitlines()[0] if section else "" for start in range(0, len(section), max_len): out.append({ "text": section[start:start + max_len], "url": page.get("final_url", url), "title": page.get("title"), "heading": heading, }) return out all_chunks = [c for u in URLS for c in chunks_for(u)] print(len(all_chunks), "chunks ready to embed") ``` ## インデックスの構築と更新にはいくらかかりますか? 構築は1ページにつき1クレジット、ブラウザが必要なページは2クレジットです。更新は再読み取りしたページ分だけかかります。2026年10月時点の価格で3つの例を示します: - **ある製品のヘルプセンター** 800ページ、変更されたページ(約10%)を毎月更新: 初回800クレジット、その後は月約80クレジット。10,000ページ($3.75)で数年分まかなえます。 - **10個のドキュメントサイト** 各2,000ページ、5%を毎週更新: 20,000クレジット、その後は月約4,000クレジット。50,000ページ($14.25)で構築と7か月分の更新をカバーできます。 - **ニュースアーカイブ** 決して変わらない300,000記事: 初回300,000クレジットで、500,000ページ($50)に収まります。 埋め込みとストレージはご自身のプロバイダーで課金され、含まれません。 ## インデックスされたくないサイトをインデックスできますか? WebReaderAPIではできません。robots.txtで当社のクローラーに対して、またはすべてのロボットに対して禁止されているページはスキップされ、課金されません。`Content-Signal: ai-input=no`を宣言しているサイトは読み取られません。ロボットをブロックしているご自身のサイトやパートナーサイトについては、オーナーにrobots.txtで`WebReaderAPI`を許可してもらってください。追加すべき行は[クローラーページ](https://webreaderapi.com/ja/bot/)に記載しています。 これはユーザーにとっても重要です。ソースを引用するRAGアシスタントは、そのソースが読み取られることに同意している場合により有用になります。 ## RAGプロジェクトにはどのパックが合いますか? インデックスを構築するページ数を数え、毎月の更新分を加え、数か月分をカバーするパックを選んでください。クレジットは失効しません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | | スケール | 500,000ページ | $50 | $0.10/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## RAG取り込み: よくある質問 ### チャンクサイズはどのくらいにすればよいですか? まず見出しで分割し、その後500〜1,000トークン程度より長いセクションは少しのオーバーラップを付けて切り詰めます。見出しベースのチャンクは1つにつき1トピックを保つため、通常はページ全体に対する固定サイズのウィンドウよりも検索精度が良くなります。 ### WebReaderAPIは埋め込みを作成したりベクターを保存したりしますか? いいえ。WebReaderAPIはページを読み取り、メタデータ付きのMarkdownを返します。埋め込みは任意のモデルで行い、ご自身のベクターデータベースに保存します。[LangChainとLlamaIndexのページ](https://webreaderapi.com/ja/docs/langchain/)で両方を紹介しています。 ### インデックスを最新に保つにはどうすればよいですか? 変更されたページだけを再読み取りします。ほとんどのsitemapはURLごとに`lastmod`日付を持っているので、最後に読み取った日付と比較し、変更されたURLをバッチで送信します。エラーになったページはインデックスから削除してください。 ### 同じサイトのPDFを含められますか? はい。クロールは同じドメイン上のPDFリンクを、同じrobots.txtチェックで読み取ります。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。 --- # ウェブサイトをMarkdownに変換: クロールして全ページをエクスポート > ウェブサイトをMarkdownファイルに変換: ご自身のサイトをクロールし、各ページをfront matter付きでエクスポートします。移行、バックアップ、ご自身のアシスタント用途に。KYC不要。 - URL: https://webreaderapi.com/ja/use-cases/website-to-markdown/ - 最終更新: 2026-10-22 - 発行者: WebReaderAPI (https://webreaderapi.com) 静的サイトジェネレーター、ドキュメントプラットフォーム、ナレッジベースへの移行は、多くの場合ひとつの疑問から始まります: ページをきれいなMarkdownとして取り出すにはどうすればよいか? クロールなら1ジョブで完了し、タイトル、日付、URLはfront matterに保持されます。 **概要 — ウェブサイト全体をMarkdownに変換するにはどうすればよいですか?** サイトをクロールし、各ページの本文をMarkdownとして読み取り、タイトル、URL、日付をfront matterに持つ`.md`ファイルをページごとに1つ書き出します。**WebReaderAPI**は1ジョブあたり最大10,000ページをクロールし、sitemapとrobots.txtに従い、2026年10月時点で$0.07/1Kページから1ページにつき1クレジットで課金します。以下のPythonスクリプトがファイルを書き出します。KYC不要、暗号資産で支払い。 ## WebReaderAPIによるウェブサイトのエクスポート | 項目 | 値 | | --- | --- | | エンドポイント | `POST https://webreaderapi.com/api/v1/crawl`、結果は`GET https://webreaderapi.com/api/v1/jobs/{job_id}` | | スコープ | 1ジョブにつき1つのWebサイトを、最大10,000ページまでクロール。サイトマップ、robots.txt、Crawl-delayに従います | | ページごと | 本文のMarkdownに加えて、タイトル、description、author、日付、言語 | | ページ全体 | `main_content=false`は必要なときにナビゲーションやフッターも保持します | | ご自身のrobots.txt | エクスポートするページに対して`WebReaderAPI`を許可する必要があります | | 料金 | 10,000ページで$3.75。クレジットに有効期限はありません | ## Markdownエクスポートはいつ役立ちますか? コンテンツを、それをレンダリングするシステムから外に出す必要があるときはいつでも。よくあるケース: - **移行。** CMSから、ページをMarkdownで保存する静的サイトジェネレーターやドキュメントプラットフォームへの移行。 - **バックアップ。** データベースやテーマに依存しない、公開ページの読めるアーカイブ。 - **ご自身のアシスタント。** サイトのテキストをヘルプボットや社内検索に取り込み、各チャンクをそのページに紐付ける。 - **監査。** 全ページをプレーンテキストとして読み、古い記述、壊れた文言、重複コンテンツを見つける。 いずれの場合も必要なのは言葉と構造であり、それを囲むテーマではありません。 *Python: サイトをクロールしてfront matter付きのMarkdownファイルにする* ```python import os import pathlib import time from urllib.parse import urlparse import requests API = "https://webreaderapi.com/api/v1" HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]} SITE = "https://www.example.com/" OUT = pathlib.Path("export") def target_path(url): path = urlparse(url).path.strip("/") or "index" return OUT / (path + ".md") def front_matter(page): fields = {"title": page.get("title", ""), "source": page["final_url"], "date": page.get("published_at") or ""} lines = ["---"] + [key + ": " + repr(value) for key, value in fields.items()] + ["---", ""] return "\n".join(lines) job = requests.post(API + "/crawl", headers=HEADERS, json={"url": SITE, "limit": 2000, "max_depth": 5}, timeout=60).json() cursor, delay, written = None, 5, 0 while True: params = {"cursor": cursor} if cursor else {} batch = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json() for page in batch.get("results", []): if "markdown" not in page: continue dest = target_path(page["final_url"]) dest.parent.mkdir(parents=True, exist_ok=True) dest.write_text(front_matter(page) + page["markdown"] + "\n", encoding="utf-8") written += 1 cursor = batch.get("next_cursor") if batch["status"] == "done" and not cursor: break if not cursor: time.sleep(delay) delay = min(delay * 2, 60) print(written, "files in", OUT) ``` ## フォルダ構造とURLを保つにはどうすればよいですか? スクリプトと同様に、URLパスをファイルパスにミラーリングします: `/guides/setup/`は`export/guides/setup.md`になります。元のURLをfront matterに`source`として保持しておけば、移行後にリダイレクトを設定し、何も失われていないことを確認できます。 Markdown内のリンクは現在のURLを指したままです。移動後はドメインまたはパスプレフィックスを一括で置換し、サンプルページでテストしてください。テーブルやコードブロックはMarkdownのまま残るので、ほとんどの静的ジェネレーターは変更なしでレンダリングします。 ## ご自身のrobots.txtがクローラーをブロックしている場合は? エクスポートの間だけ当社のトークンを許可してください。WebReaderAPIは`WebReaderAPI`またはすべてのロボットに対してrobots.txtが許可するものだけを読み取ります。ご自身のサイトも同様です。`User-agent: WebReaderAPI`と`Allow: /`を含むグループを追加し、クロールを実行した後、必要なら削除してください。 正確な行と、サーバーログに表示されるUser-Agentは[クローラーページ](https://webreaderapi.com/ja/bot/)に記載しています。禁止されたままのページはスキップされ、課金されません。 ## エクスポートにはいくらかかりますか? 1ページにつき1クレジット、テキスト表示にブラウザが必要なページは2クレジットです。サーバー側でレンダリングされる2,000ページのサイトは初回2,000クレジット、同じサイトがJavaScriptアプリの場合は最大4,000クレジットになることがあります。どちらも2026年10月時点で$3.75分の10,000ページに収まります。 50,000ページのサイトは`include_paths`でセクションごとに分割し、複数のジョブが必要で、100,000ページ($21.75)に収まります。エクスポート後に残ったクレジットは、後の更新のためにアカウントに残ります。 ## どのパックが自分のエクスポートをカバーしますか? ページ数を数え、サイトがレンダリングにJavaScriptを必要とする場合はその数を2倍にして、その上のパックを選んでください。クレジットに有効期限はありません。 | プラン | 数量 | 料金 | 単価 | | --- | --- | --- | --- | | テスト | 10,000ページ | $3.75 | $0.38/1Kページ | | スターター | 50,000ページ | $14.25 | $0.28/1Kページ | | 構築 | 100,000ページ | $21.75 | $0.22/1Kページ | すべてのプランに含まれるもの: 本文抽出 · 必要な場合はJavaScriptをレンダリング · 失敗・拒否されたページは課金なし · クレジットの有効期限なし **お支払いの前に** - 最低チャージ額$25。 暗号資産で一度チャージすれば、残高から任意のプランを購入できます。 - 残高に有効期限はなく、いつでもページクレジットの購入に使えます。パックの価格が最低入金額を下回る場合、その最低額に達するためだけに追加した分は、お支払いから30日以内であればご依頼によりUSDTまたはUSDCで返金します(ただし未使用分に限ります)。それ以外の残高は、法令に別段の定めがある場合を除き返金されません. - お支払いがブロックチェーン上で確認され次第、残高に反映されます。 ネットワーク承認の目安時間: BTC 約20分 · USDT TRC-20 約1分 · USDT ERC-20 約5分 · USDC ERC-20 約5分 · ETH 約5分 · SOL 約1分 · LTC 約15分 ## WebサイトをMarkdownに変換:よくある質問 ### メニューやフッターを含むページ全体をエクスポートできますか? はい。クロールオプションで`main_content=false`を設定すると、各ファイルにMarkdownに変換された完全なページが保存されます。新しいテーマが独自のナビゲーションを提供するため、ほとんどの移行ではメインコンテンツのみが好まれます。 ### 画像はダウンロードされますか? いいえ。`include_images=true`では、画像リンクはaltテキストとともにMarkdownに残ります。移行でファイル自体が必要な場合は、ご自身のスクリプトでダウンロードしてください。 ### 所有していないサイトをエクスポートできますか? そのrobots.txtが許可している公開ページのみ、かつその利用規約と法律が認める用途に限ります。移行やバックアップの場合は、ご自身のサイト、または所有者が同意したサイトをエクスポートしてください。 ### 1つのジョブで扱えるサイトの規模はどのくらいですか? 1回のクロールジョブで1ドメイン内、最大10,000ページまでです。より大きなサイトは`include_paths`でセクションごとに分割し、複数のジョブを実行してください。 --- WebReaderAPI: WebReaderAPIはAIエージェント向けのWebリーダーAPIで、あらゆる公開WebページをクリーンなMarkdownに変換します。暗号資産で支払い、本人確認書類のアップロードは不要です。$0.07/1Kページから購入できるプリペイドクレジットに有効期限はなく、robots.txtを尊重します。KYC不要 — 身分証もセルフィーも書類も不要。暗号資産で支払い。