Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
webscreenshot — نص برمجي بسيط لالتقاط لقطات شاشة لقائمة من المواقع الإلكترونية | Kitploit
أدوات/GitHubGitHub/maaaaz/webscreenshot
الاستطلاعجمع المعلوماتأمن الويب
GitHubmaaaaz/webscreenshot

webscreenshot

نص برمجي بسيط لالتقاط لقطات شاشة لقائمة من المواقع الإلكترونية

عرض المستودع
692168منذ 10 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

webscreenshot

الوصف

نص برمجي بسيط لأخذ لقطات شاشة لقائمة من المواقع، يعتمد على نص url-to-image الخاص بـ PhantomJS.

الميزات

  • دمج ميزة 'lazy-rendering' من url-to-image للموارد AJAX
  • يعمل بكامل وظائفه على أنظمة Windows و Linux
  • دعم تعريف الكوكيز ورؤوس HTTP المخصصة لمحرك العرض PhantomJS
  • المعالجة المتعددة (Multiprocessing) وإنهاء العمليات غير المستجيبة بعد مهلة زمنية يحددها المستخدم
  • قبول عدة صيغ كمدخل للهدف
  • تخصيص حجم لقطة الشاشة (العرض، الارتفاع)، الصيغة والجودة
  • ربط الخيارات المفيدة لـ PhantomJS مثل تجاهل أخطاء SSL، تعريف البروكسي ومصادقته، والمصادقة الأساسية HTTP
  • دعم عدة محركات عرض:
    • PhantomJS، وهو الإصدار القديم والمهجور ولكنه لا يزال ينتج أفضل النتائج
    • Chromium و Chrome و Edge Chromium، والتي ستحل محل PhantomJS لكن لديها بعض القيود حالياً: أخذ لقطة شاشة لموقع HTTPS ليس لديه شهادة صالحة، مثلاً شهادة ذاتية التوقيع، سينتج لقطة شاشة فارغة. السبب هو أن خيار --ignore-certificate-errors لا يعمل ولن يعمل مرة أخرى: الحل هو استخدام webdriver مناسب، ولكن حتى الآن webscreenshot لا يهدف لدعم هذه الطريقة المعقدة نسبياً والتي تتطلب أدوات طرف ثالث.
    • Firefox يمكن استخدامه أيضاً كمحرك عرض ولكن لديه قيود خطيرة (لذا لا تستخدمه في الوقت الحالي):
      • استحالة أخذ لقطات شاشة متعددة في نفس الوقت: لا توجد نسخ متعددة من عملية firefox
      • لا يوجد وضع التصفح الخاص (incognito)، استخدام webscreenshot سيؤدي إلى تلويث سجل التصفح
  • تضمين رابط URL في لقطة الشاشة (يتطلب ImageMagick)

الاستخدام

ضع أهدافك في ملف نصي وقم بتمريره مع الخيار -i، أو كوسيطة موضعية إذا كان لديك رابط واحد فقط. ستكون لقطات الشاشة متاحة، بشكل افتراضي، في الدليل الحالي ./screenshots/. صيغ الإدخال المقبولة هي التالية:

root@kitploit:~
http(s)://domain_or_ip:port(/resource)
domain_or_ip:port(/resource)
domain_or_ip(/resource)

الخيارات

root@kitploit:~
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            show this help message and exit

Main parameters:
  URL                   Single URL target given as a positional argument
  -i, --input-file INPUT_FILE
                        <INPUT_FILE> text file containing the target list. Ex: list.txt
  -o, --output-directory OUTPUT_DIRECTORY
                        <OUTPUT_DIRECTORY> (optional): screenshots output directory (default './screenshots/')
  -w, --workers WORKERS
                        <WORKERS> (optional): number of parallel execution workers (default 4)
  -v, --verbosity       <VERBOSITY> (optional): verbosity level, repeat it to increase the level { -v INFO, -vv DEBUG } (default
                        verbosity ERROR)
  --no-error-file       <NO_ERROR_FILE> (optional): do not write a file with the list of URL of failed screenshots (default false)
  -z, --single-output-file SINGLE_OUTPUT_FILE
                        <SINGLE_OUTPUT_FILE> (optional): name of a file which will be the single output of all inputs. Ex. test.png

Input processing parameters:
  -p, --port PORT       <PORT> (optional): use the specified port for each target in the input list. Ex: -p 80
  -s, --ssl             <SSL> (optional): enforce SSL/TLS for every connection
  -m, --multiprotocol   <MULTIPROTOCOL> (optional): perform screenshots over HTTP and HTTPS for each target

Screenshot renderer parameters:
  -r, --renderer {phantomjs,chrome,chromium,edge,firefox}
                        <RENDERER> (optional): renderer to use among 'phantomjs' (legacy but best results), 'chrome', 'chromium',
                        'edge', 'firefox' (version > 57) (default 'phantomjs')
  --renderer-binary RENDERER_BINARY
                        <RENDERER_BINARY> (optional): path to the renderer executable if it cannot be found in $PATH
  --no-xserver          <NO_X_SERVER> (optional): if you are running without an X server, will use xvfb-run to execute the renderer
                        (by default, trying to detect if DISPLAY environment variable exists

Screenshot image parameters:
  --window-size WINDOW_SIZE
                        <WINDOW_SIZE> (optional): width and height of the screen capture (default '1200,800')
  -f, --format {pdf,png,jpg,jpeg,bmp,ppm}
                        <FORMAT> (optional, phantomjs only): specify an output image file format, "pdf", "png", "jpg", "jpeg", "bmp"
                        or "ppm" (default 'png')
  -q, --quality [0-100]
                        <QUALITY> (optional, phantomjs only): specify the output image quality, an integer between 0 and 100 (default
                        75)
  --ajax-max-timeouts AJAX_MAX_TIMEOUTS
                        <AJAX_MAX_TIMEOUTS> (optional, phantomjs only): per AJAX request, and max URL timeout in milliseconds
                        (default '1400,1800')
  --crop CROP           <CROP> (optional, phantomjs only): rectangle <t,l,w,h> to crop the screen capture to (default to WINDOW_SIZE:
                        '0,0,w,h'), only numbers, w(idth) and h(eight). Ex. "10,20,w,h"
  --custom-js CUSTOM_JS
                        <CUSTOM_JS> (optional, phantomjs only): path of a file containing JavaScript code to be executed before
                        taking the screenshot. Ex: js.txt

Screenshot label parameters:
  -l, --label           <LABEL> (optional): for each screenshot, create another one displaying inside the target URL (requires
                        imagemagick)
  --label-size LABEL_SIZE
                        <LABEL_SIZE> (optional): font size for the label (default 60)
  --label-bg-color LABEL_BG_COLOR
                        <LABEL_BACKGROUND_COLOR> (optional): label imagemagick background color (default NavajoWhite)
  --imagemagick-binary IMAGEMAGICK_BINARY
                        <LABEL_BINARY> (optional): path to the imagemagick binary (magick or convert) if it cannot be found in $PATH

HTTP parameters:
  -c, --cookie COOKIE   <COOKIE_STRING> (optional): cookie string to add. Ex: -c "JSESSIONID=1234; YOLO=SWAG"
  -a, --header HEADER   <HEADER> (optional): custom or additional header. Repeat this option for every header. Ex: -a "Host:
                        localhost" -a "Foo: bar"
  -u, --http-username HTTP_USERNAME
                        <HTTP_USERNAME> (optional): specify a username for HTTP Basic Authentication.
  -b, --http-password HTTP_PASSWORD
                        <HTTP_PASSWORD> (optional): specify a password for HTTP Basic Authentication.

Connection parameters:
  -P, --proxy PROXY     <PROXY> (optional): specify a proxy. Ex: -P http://proxy.company.com:8080
  -A, --proxy-auth PROXY_AUTH
                        <PROXY_AUTH> (optional): provides authentication information for the proxy. Ex: -A user:password
  -T, --proxy-type PROXY_TYPE
                        <PROXY_TYPE> (optional): specifies the proxy type, "http" (default), "none" (disable completely), or
                        "socks5". Ex: -T socks
  -t, --timeout TIMEOUT
                        <TIMEOUT> (optional): renderer execution timeout in seconds (default 30 sec)

أمثلة

root@kitploit:~
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)


تنفيذ افتراضي برابط واحد
-----------------------------------
$ 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)


النتائج
-------
$ ls -l screenshots/
total 187
-rwxrwxrwx 1 root root 53805 May 19 16:04 http_216.58.213.131_80.png
-rwxrwxrwx 1 root root 53805 May 19 16:05 http_google.fr_80.png
-rwxrwxrwx 1 root root 53805 May 19 16:04 https_216.58.213.131_443.png
-rwxrwxrwx 1 root root 27864 May 19 16:04 https_duckduckgo.com_443_robots.txt.png

الخيارات المدعومة حسب محركات العرض

الخيارات غير المدرجة أدناه مدعومة من قبل جميع محركات العرض الحالية

المتطلبات

  • مترجم Python بالإصدار 2.7 أو 3.X
  • النص البرمجي webscreenshot بلغة Python:
    • أسهل طريقة لإعداده: pip install webscreenshot ثم استخدام $ webscreenshot مباشرة
    • أو استنساخ المستودع باستخدام git وتشغيل pip install -r requirements.txt ثم استخدام python webscreenshot.py
  • أداة PhantomJS بالإصدار 2 على الأقل: اتبع دليل التثبيت وراجع الأسئلة الشائعة إذا لزم الأمر
  • Chrome أو Chromium أو Firefox > 57 إذا كنت ترغب في استخدام أحد محركات العرض هذه
  • xvfb إذا كنت تريد تشغيل webscreenshot على نظام تشغيل بدون واجهة رسومية: استخدم خيار --no-xserver في webscreenshot لتسهيل الأمر
  • ملف ثنائي ImageMagick (magick أو convert) إذا كنت ترغب في تضمين URL في لقطات الشاشة باستخدام خيار --label: اتبع

سجل التغييرات

  • الإصدار 2.96/2.97 - 19/10/2025: إسقاط دعم Python v2
  • الإصدار 2.95 - 18/10/2025: إصلاح خطأ في phantomjs عند عدم العثور على إعدادات OpenSSL
  • الإصدار 2.94 - 23/08/2020: إضافة خيارات custom-js وملف الإخراج الواحد
  • الإصدار 2.93 - 16/08/2020: إضافة دعم Python 3.8 و Microsoft Edge Chromium؛ إخراج ملف للقطات الشاشة الفاشلة؛ حد لطول اسم الملف للروابط الطويلة
  • الإصدار 2.92 - 21/06/2020: الكشف التلقائي لخيار no_xserver
  • الإصدار 2.91 - 08/05/2020: إصلاح وضع Multiprotocol
  • الإصدار 2.9 - 26/01/2020: عدة إصلاحات
  • الإصدار 2.8 - 11/01/2020: عدة إصلاحات، إضافة خيارات مهلات ajax + القص + حجم التسمية + خط التسمية، تغيير القيم الافتراضية لـ ajaxTimeout و maxTimeout
  • الإصدار 2.7 - 04/01/2020: إضافة خيار تضمين URL في لقطة الشاشة
  • الإصدار 2.6 - 27/12/2019: عدة إصلاحات
  • الإصدار 2.5 - 22/09/2019: إضافة خيارات جودة الصورة والصيغة، تحديث useragent لـ PhantomJS، دعم نطاقات المستوى الأعلى الحديثة
  • الإصدار 2.4 - 30/05/2019: عدة إصلاحات لدعم Windows
  • الإصدار 2.3 - 19/05/2019: توافق مع Python 3، إضافة محرك عرض Firefox، إضافة خيار no-xserver
  • الإصدار 2.2 - 13/08/2018: دعم محركي عرض Chrome و Chromium ودعم الرابط الواحد
  • الإصدار 2.1 - 14/01/2018: إضافة خيار Multiprotocol وتغليف PyPI
  • الإصدار 2.0 - 08/03/2017: إضافة خيار نوع البروكسي
  • الإصدار 1.9 - 10/01/2017: استخدام جميع تشفيرات SSL/TLS
  • الإصدار 1.8 - 05/07/2015: تعريف مجموعات الخيارات
  • الإصدار 1.7 - 28/06/2015: دعم المصادقة الأساسية HTTP + تغيير خيار مستوى التسجيل إلى verbosity
  • الإصدار 1.6 - 23/04/2015: إصلاح الخلفية الشفافة
  • الإصدار 1.5 - 11/01/2015: دعم الكوكيز ورؤوس HTTP المخصصة
  • الإصدار 1.4 - 12/10/2014: دمج نص url-to-image الخاص بـ PhantomJS + إصلاح بعض الأخطاء
  • الإصدار 1.3 - 05/08/2014: دعم Windows + إصلاح بعض الأخطاء
  • الإصدار 1.2 - 27/04/2014: إصلاح بعض الأخطاء
  • الإصدار 1.1 - 21/04/2014: تغيير النص لاستخدام PhantomJS بدلاً من wkhtml الثنائي المعطل
  • الإصدار 1.0 - 12/01/2014: الالتزام الأول

حقوق النشر والترخيص

webscreenshot هو برنامج مجاني: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة GNU العامة كما نشرتها مؤسسة البرمجيات الحرة، إما الإصدار 3 من الرخصة أو (حسب اختيارك) أي إصدار لاحق.

يتم توزيع webscreenshot على أمل أن يكون مفيداً، ولكن دون أي ضمان؛ حتى دون الضمان الضمني للقابلية للتسويق أو الملاءمة لغرض معين.

راجع رخصة GNU العامة لمزيد من التفاصيل.

يجب أن تكون قد تلقيت نسخة من رخصة GNU العامة إلى جانب webscreenshot. إذا لم يكن الأمر كذلك، فراجع http://www.gnu.org/licenses/.

الاتصال

  • Thomas Debize < tdebize at mail d0t com >
تنزيل الأداة
فئة الخيارالخيارمحرك عرض PhantomJSمحرك عرض Chromium / Chrome / Edge Chromiumمحرك عرض Firefox
معاملات لقطة الشاشة
الصيغة (-f)نعملالا
الجودة (-q)نعملالا
مهلات AJAX والطلب (--ajax-max-timeouts)نعملالا
القص (--crop)نعملالا
جافا سكريبت مخصص (--custom-js)نعملالا
معاملات HTTP
الكوكيز (-c)نعملالا
الرأس (-a)نعملالا
اسم المستخدم (-u)نعملالا
كلمة المرور (-b)نعملالا
معاملات الاتصال
البروكسي (-P)نعمنعملا
مصادقة البروكسي (-A)نعملالا
نوع البروكسي (-T)نعمنعملا
القدرة على التقاط موقع HTTPS بشهادة غير موقعة من مرجع عامنعملالا
دليل التثبيت
  • راجع الأسئلة الشائعة قبل الإبلاغ عن المشكلات