Screenshot API
スクリーンショットAPIの概要、仕組み、プログラムからの撮影にどのような場面で使うかを解説します。
スクリーンショットAPIは、HTTPリクエストでURLと撮影のオプションを受け取り、自社のサーバー上のブラウザでページを読み込んで、画像またはPDFとして結果を返すWebサービスです。アプリケーションは、ブラウザを自分でインストールまたは実行せずに、コードからスクリーンショットを要求できます。
多くのサービスは、APIキーでリクエストを認証し、撮影の回数に応じて課金します。機能、上限、料金はプロバイダーごとに異なり、時間とともに変わるため、各プロバイダーのドキュメントで比較してください。
スクリーンショットAPIの仕組み
- クライアントは、URLと、ビューポートの幅と高さ、ビューポートまたはフルページの範囲、デバイススケールファクター、形式、遅延、待機条件などのオプションを含むリクエストを送信します。
- サービスは、多くの場合PlaywrightまたはPuppeteerで操作されるヘッドレスブラウザでURLを開きます。
- ページの読み込みを待ち、クッキーバナーや広告を非表示にするなどのオプションを適用してから撮影します。
- 画像を直接返すか、保存してリンクを返します。
スクリーンショットAPIの用途
- 要求に応じて生成される、リンクのプレビューやSNSのカード画像。
- ディレクトリやCMSツールで、ユーザーが投稿したURLのサムネイル。
- 記録のための、ページのアーカイブコピー。
- 時間をかけてページを比較する、定期的なチェック。
ホスト型とセルフホスト型
ホスト型のAPIは、ブラウザの保守、スケーリング、更新を不要にします。その代わりに、URLと画像は第三者を経由します。また、ページはプロバイダーのネットワークと地域から読み込まれるため、ログイン、VPN、地域制限の背後にあるコンテンツは変わることがあります。PlaywrightまたはPuppeteerを使ったセルフホスト型では、データを自社のインフラに残せますが、ブラウザ、キュー、再試行を運用する必要があります。
スクリーンショットAPIでよくある間違い
- セッションのデータを渡さず、ログインが必要なページを撮影する。
- 待機条件を設定せず、読み込みが途中のページが返される。
- 非公開または社内のURLを、第三者のサービスに送信する。
- 大量の処理で、レート制限とタイムアウトを無視する。
同じスクリーンショットを繰り返し撮りますか?
Temposhotの Website Capture は、入力したURLを、お使いのMac上で管理されたローカルブラウザで読み込み、ファイルをローカルに保存します。HTTPサービスとしてではなく、アプリから実行されます。詳しくは Webサイトのスクリーンショット自動化 をご覧ください。
よくある質問
スクリーンショットAPIを使うにはコードを書く必要がありますか?
はい。少なくとも、スクリプトまたは自動化ツールからのリクエストは必要です。
スクリーンショットAPIでログインの背後にあるページを撮影できますか?
そのためのクッキーやヘッダーを受け付けるサービスもあります。プロバイダーのドキュメントとサイトの利用規約を確認してください。
出典
関連リソース
- Website Captureのクイックスタート: URLのリストをローカルで撮影します。
- Website Captureのオプション: 待機条件とクッキーバナーの扱い。
- 実行と結果: 再試行と部分的なセッション。
同じスクリーンショットを何度も撮っていますか?
Temposhot は、画面、ウィンドウ、または範囲をタイマーに従って連続で撮影し、その一式を PDF、画像、ZIP、または MP4 で書き出します。無料のブラウザツールは、1 枚の画像の処理に対応しています。
関連リソース
関連用語
- Headless Browserヘッドレスブラウザの概要、自動スクリーンショットでの使われ方、よくある落とし穴を解説します。
- PlaywrightPlaywrightの概要、クロスブラウザでのスクリーンショットの撮影方法、自動化におけるPuppeteerとの比較を解説します。
- PuppeteerPuppeteerの概要、スクリーンショットの撮影方法、ブラウザの自動化におけるPlaywrightとの比較を解説します。
- Website MonitoringスクリーンショットによるWebサイトの監視の意味、定期的な撮影で見た目の変化を追跡する方法、よくある間違いを解説します。
- Batch Screenshotバッチスクリーンショットの概要、単一のキャプチャとの違い、チームでの使い方を解説します。