
Inventus هو عنكبوت مصمم لإيجاد النطاقات الفرعية لنطاق معين عن طريق الزحف إليه وإلى أي نطاقات فرعية يكتشفها.
Inventus هو عنكبوت (spider) مصمم لإيجاد النطاقات الفرعية (subdomains) لنطاق معين عن طريق الزحف عليه وعلى أي نطاقات فرعية يكتشفها. إنه عنكبوت Scrapy، مما يعني أنه قابل للتعديل والتوسعة بسهولة حسب احتياجاتك.
يتطلب Inventus تثبيت Scrapy قبل تشغيله. أولاً، قم باستنساخ المستودع والدخول إليه.
$ git clone https://github.com/nmalcolm/Inventus
$ cd Inventus
الآن قم بتثبيت التبعيات المطلوبة باستخدام pip.
$ pip install -r requirements.txt
بافتراض نجاح التثبيت، يجب أن يكون Inventus جاهزاً للاستخدام.
الاستخدام الأساسي لـ Inventus هو كما يلي:
$ cd Inventus
$ scrapy crawl inventus -a domain=facebook.com
يخبر هذا Scrapy أي عنكبوت يجب استخدامه (في هذه الحالة "inventus")، ويمرر النطاق إلى العنكبوت. سيتم إرسال أي نطاقات فرعية يتم العثور عليها إلى STDOUT.
المعامل المخصص الآخر هو subdomain_limit. يحدد هذا حدًا أقصى لعدد النطاقات الفرعية التي سيتم اكتشافها قبل الإنهاء. القيمة الافتراضية هي 10000، لكنها ليست حدًا صارمًا.
$ scrapy crawl inventus -a domain=facebook.com -a subdomain_limit=100
يمكن تصدير البيانات بعدة طرق. أسهل طريقة هي توجيه STDOUT إلى ملف.
$ scrapy crawl inventus -a domain=facebook.com > facebook.txt
يحتوي Scrapy على ميزة مدمجة تسمح لك بتصدير العناصر إلى صيغ مختلفة، بما في ذلك CSV و JSON و XML. حاليًا سيتم تصدير النطاقات الفرعية فقط، لكن هذا قد يتغير في المستقبل.
$ scrapy crawl inventus -a domain=facebook.com -t csv -o Facebook.csv
يمكن تعديل كيفية تصرف Inventus. بشكل افتراضي، يتجاهل Inventus ملف robots.txt، وله مهلة زمنية قدرها 30 ثانية، ويخزن بيانات الزحف مؤقتًا لمدة 24 ساعة، وعمق زحف يبلغ 5، ويستخدم إضافة AutoThrottle الخاصة بـ Scrapy. يمكن تغيير كل هذه الإعدادات وغيرها عن طريق تحرير ملف inventus_spider/settings.py. إعدادات Scrapy موثقة جيدًا أيضًا.
لا تتردد في فتح مشكلة (issue) جديدة لأي مما سبق. تم بناء Inventus في بضع ساعات فقط ومن المحتمل أن يحتوي على أخطاء. يمكنك أيضًا التواصل معي على تويتر.
صدر بموجب رخصة MIT. انظر ملف LICENSE.