Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
webscreenshot — ウェブサイトのリストをスクリーンショットするシンプルなスクリプト | Kitploit
ツール/GitHubGitHub/maaaaz/webscreenshot
偵察情報収集ウェブセキュリティ
GitHubmaaaaz/webscreenshot

webscreenshot

ウェブサイトのリストをスクリーンショットするシンプルなスクリプト

リポジトリを見る
692168181年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

webscreenshot

説明

ウェブサイトのリストをスクリーンショットするシンプルなスクリプトです。url-to-image PhantomJS スクリプトをベースにしています。

特徴

  • AJAX リソースのための url-to-image の「レイジーレンダリング」を統合
  • Windows および Linux システムで完全に機能
  • PhantomJS レンダラー向け Cookie およびカスタム HTTP ヘッダー定義のサポート
  • マルチプロセッシングと、ユーザー定義可能なタイムアウト後の応答しないプロセスの強制終了
  • 入力ターゲットとして複数の形式を受け入れ
  • スクリーンショットサイズ(幅、高さ)、形式、品質のカスタマイズ
  • PhantomJS の有用なオプション(SSL エラー無視、プロキシ定義とプロキシ認証、HTTP Basic 認証など)のマッピング
  • 複数のレンダラーをサポート:
    • PhantomJS - レガシーで放棄されましたが、依然として最良の結果を生み出します
    • Chromium、Chrome、Edge Chromium - PhantomJS を置き換えるものですが、現在いくつかの制限があります。例えば、有効な証明書がない HTTPS ウェブサイト(自己署名証明書など)のスクリーンショットは空の画像になります。
      理由は--ignore-certificate-errors オプションが機能せず、今後も機能しなくなるためです。解決策は適切なwebdriverを使用することですが、現在 webscreenshot はこの_かなり複雑な_方法(サードパーティツールが必要)をサポートすることを目的としていません。
    • Firefox もレンダラーとして使用できますが、深刻な制限があります(現時点では使用しないでください):
      • 複数のスクリーンショットを同時に実行できない: Firefox プロセスのマルチインスタンス不可
      • シークレットモードなし、webscreenshot を使用するとブラウジング履歴が汚染されます
  • スクリーンショットに URL を埋め込み(ImageMagick が必要)

使い方

ターゲットをテキストファイルに記述し、-i オプションで指定するか、単一の URL の場合は位置引数として渡します。
デフォルトでは、スクリーンショットは現在の ./screenshots/ ディレクトリに保存されます。
受け入れられる入力形式は次のとおりです:

http(s)://domain_or_ip:port(/resource)
domain_or_ip:port(/resource)
domain_or_ip(/resource)

オプション

webscreenshot.py version 2.96

usage: webscreenshot [-h] [-i INPUT_FILE] [-o OUTPUT_DIRECTORY] [-w WORKERS] [-v] [--no-error-file] [-z SINGLE_OUTPUT_FILE] [-p PORT]
                     [-s] [-m] [-r {phantomjs,chrome,chromium,edge,firefox}] [--renderer-binary RENDERER_BINARY] [--no-xserver]
                     [--window-size WINDOW_SIZE] [-f {pdf,png,jpg,jpeg,bmp,ppm}] [-q [0-100]] [--ajax-max-timeouts AJAX_MAX_TIMEOUTS]
                     [--crop CROP] [--custom-js CUSTOM_JS] [-l] [--label-size LABEL_SIZE] [--label-bg-color LABEL_BG_COLOR]
                     [--imagemagick-binary IMAGEMAGICK_BINARY] [-c COOKIE] [-a HEADER] [-u HTTP_USERNAME] [-b HTTP_PASSWORD]
                     [-P PROXY] [-A PROXY_AUTH] [-T PROXY_TYPE] [-t TIMEOUT]
                     [URL]

options:
  -h, --help            このヘルプメッセージを表示して終了

メインパラメータ:
  URL                   位置引数として指定する単一のターゲット URL
  -i, --input-file INPUT_FILE
                        <INPUT_FILE> ターゲットリストを含むテキストファイル。例: list.txt
  -o, --output-directory OUTPUT_DIRECTORY
                        <OUTPUT_DIRECTORY> (オプション): スクリーンショットの出力ディレクトリ (デフォルト './screenshots/')
  -w, --workers WORKERS
                        <WORKERS> (オプション): 並列実行ワーカー数 (デフォルト 4)
  -v, --verbosity       <VERBOSITY> (オプション): 詳細度レベル、繰り返すとレベルが上がります { -v INFO, -vv DEBUG } (デフォルトの詳細度 ERROR)
  --no-error-file       <NO_ERROR_FILE> (オプション): スクリーンショット失敗 URL のリストをファイルに書き込まない (デフォルト false)
  -z, --single-output-file SINGLE_OUTPUT_FILE
                        <SINGLE_OUTPUT_FILE> (オプション): すべての入力の単一出力ファイル名。例: test.png

入力処理パラメータ:
  -p, --port PORT       <PORT> (オプション): 入力リスト内の各ターゲットに指定されたポートを使用。例: -p 80
  -s, --ssl             <SSL> (オプション): すべての接続に SSL/TLS を強制
  -m, --multiprotocol   <MULTIPROTOCOL> (オプション): 各ターゲットに対して HTTP と HTTPS の両方でスクリーンショットを実行

スクリーンショットレンダラーパラメータ:
  -r, --renderer {phantomjs,chrome,chromium,edge,firefox}
                        <RENDERER> (オプション): 使用するレンダラー。'phantomjs' (レガシーだが最良の結果), 'chrome', 'chromium',
                        'edge', 'firefox' (バージョン > 57) から選択 (デフォルト 'phantomjs')
  --renderer-binary RENDERER_BINARY
                        <RENDERER_BINARY> (オプション): $PATH に見つからない場合のレンダラー実行可能ファイルへのパス
  --no-xserver          <NO_X_SERVER> (オプション): X サーバーなしで実行する場合、xvfb-run を使用してレンダラーを実行します
                        (デフォルトでは DISPLAY 環境変数の有無を検出しようとします)

スクリーンショット画像パラメータ:
  --window-size WINDOW_SIZE
                        <WINDOW_SIZE> (オプション): 画面キャプチャの幅と高さ (デフォルト '1200,800')
  -f, --format {pdf,png,jpg,jpeg,bmp,ppm}
                        <FORMAT> (オプション, phantomjs のみ): 出力画像ファイル形式。"pdf", "png", "jpg", "jpeg", "bmp"
                        または "ppm" (デフォルト 'png')
  -q, --quality [0-100]
                        <QUALITY> (オプション, phantomjs のみ): 出力画像の品質。0 から 100 の整数 (デフォルト 75)
  --ajax-max-timeouts AJAX_MAX_TIMEOUTS
                        <AJAX_MAX_TIMEOUTS> (オプション, phantomjs のみ): AJAX リクエストあたり、および URL 最大タイムアウト (ミリ秒) (デフォルト '1400,1800')
  --crop CROP           <CROP> (オプション, phantomjs のみ): 画面キャプチャを切り抜く矩形 <t,l,w,h> (デフォルトは WINDOW_SIZE: '0,0,w,h')、数値のみ、w(idth) と h(eight)。例: "10,20,w,h"
  --custom-js CUSTOM_JS
                        <CUSTOM_JS> (オプション, phantomjs のみ): スクリーンショット撮影前に実行する JavaScript コードを含むファイルのパス。例: js.txt

スクリーンショットラベルパラメータ:
  -l, --label           <LABEL> (オプション): 各スクリーンショットについて、ターゲット URL を表示した別の画像を作成 (imagemagick が必要)
  --label-size LABEL_SIZE
                        <LABEL_SIZE> (オプション): ラベルのフォントサイズ (デフォルト 60)
  --label-bg-color LABEL_BG_COLOR
                        <LABEL_BACKGROUND_COLOR> (オプション): ラベルの imagemagick 背景色 (デフォルト NavajoWhite)
  --imagemagick-binary IMAGEMAGICK_BINARY
                        <LABEL_BINARY> (オプション): $PATH に見つからない場合の imagemagick 実行可能ファイル (magick または convert) へのパス

HTTP パラメータ:
  -c, --cookie COOKIE   <COOKIE_STRING> (オプション): 追加する Cookie 文字列。例: -c "JSESSIONID=1234; YOLO=SWAG"
  -a, --header HEADER   <HEADER> (オプション): カスタムまたは追加ヘッダー。ヘッダーごとにこのオプションを繰り返します。例: -a "Host: localhost" -a "Foo: bar"
  -u, --http-username HTTP_USERNAME
                        <HTTP_USERNAME> (オプション): HTTP Basic 認証のユーザー名を指定。
  -b, --http-password HTTP_PASSWORD
                        <HTTP_PASSWORD> (オプション): HTTP Basic 認証のパスワードを指定。

接続パラメータ:
  -P, --proxy PROXY     <PROXY> (オプション): プロキシを指定。例: -P http://proxy.company.com:8080
  -A, --proxy-auth PROXY_AUTH
                        <PROXY_AUTH> (オプション): プロキシの認証情報を提供。例: -A user:password
  -T, --proxy-type PROXY_TYPE
                        <PROXY_TYPE> (オプション): プロキシタイプを指定。"http" (デフォルト), "none" (完全に無効), または
                        "socks5"。例: -T socks
  -t, --timeout TIMEOUT
                        <TIMEOUT> (オプション): レンダラー実行のタイムアウト(秒)(デフォルト 30 秒)

例

list.txt
--------
http://google.fr
https://216.58.213.131
216.58.213.131
https://duckduckgo.com/robots.txt


リストを使用したデフォルト実行
-----------------------------
$ python webscreenshot.py -i list.txt
webscreenshot.py version 2.3

[+] 4 URLs to be screenshot
[+] 4 actual URLs screenshot
[+] 0 error(s)


単一 URL を使用したデフォルト実行
-----------------------------------
$ python webscreenshot.py -v google.fr
webscreenshot.py version 2.3

[INFO][General] 'google.fr' has been formatted as 'http://google.fr:80' with supplied overriding options
[+] 1 URLs to be screenshot
[INFO][http://google.fr:80] Screenshot OK

[+] 1 actual URLs screenshot
[+] 0 error(s)


詳細度レベルを上げた実行
-----------------------------------
$ python webscreenshot.py -i list.txt -v
webscreenshot.py version 2.3

[INFO][General] 'http://google.fr' has been formatted as 'http://google.fr:80' with supplied overriding options
[INFO][General] 'https://216.58.213.131' has been formatted as 'https://216.58.213.131:443' with supplied overriding options
[INFO][General] '216.58.213.131' has been formatted as 'http://216.58.213.131:80' with supplied overriding options
[INFO][General] 'https://duckduckgo.com/robots.txt' has been formatted as 'https://duckduckgo.com:443/robots.txt' with supplied overriding options
[+] 4 URLs to be screenshot
[INFO][https://duckduckgo.com:443/robots.txt] Screenshot OK

[INFO][http://216.58.213.131:80] Screenshot OK

[INFO][https://216.58.213.131:443] Screenshot OK

[INFO][http://google.fr:80] Screenshot OK

[+] 4 actual URLs screenshot
[+] 0 error(s)
ツールをダウンロード