概要
コマンドラインから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がページアドレスをエンコードしてくれるので、アドレス自体に含まれる?、&、=を気にする必要があります。
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を出力してコードとメッセージを確認してください。
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でフィルタリングしたり、バッチジョブに渡したりできます。
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 -uJavaScriptページやPDFを読む方法を教えてください。
JavaScriptでコンテンツを構築するページには-d render=trueを追加します。その場合、2クレジットかかります。PDFには特別なものは必要ありません。URLを送信すると、テキストがmarkdownで返されます。20 MB・100ページまでのPDFファイルをMarkdownに変換します。10ページ単位の開始ブロックごとに1クレジットです。
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になるまで待機し、各ページのタイトルまたはエラーコードを出力します。長時間のジョブの場合は、バッチとクロールのページに示されているようにnext_cursorに従ってください。
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を返します。プリペイドクレジットに有効期限はありません。未使用のページは使うまでアカウントに残ります。
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でクエリを構築してページアドレスをエンコードし、ヘッダーテーブルでキーを渡します。
$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が拒否したリクエストは課金されません。