🚀 لقد رفعت CloudSek جولة B1 من السلسلة B1 بقيمة 19 مليون دولار - تعزيز مستقبل الأمن السيبراني التنبؤي
اقرأ المزيد
قم بحماية مؤسستك من التهديدات الخارجية مثل تسرب البيانات وتهديدات العلامة التجارية والتهديدات الناشئة عن الويب المظلم والمزيد. حدد موعدًا لعرض تجريبي اليوم!
Schedule a Demo
لنفترض أن محركات البحث، مثل Google، لم تكن موجودة أبدًا! كيف يمكنك العثور على ما تحتاج إليه عبر 4.2 مليار صفحة ويب؟ برامج زحف الويب هي برامج مكتوبة لتصفح الإنترنت وجمع المعلومات وفهرسة وتحليل البيانات المجمعة لتسهيل عمليات البحث السريعة. وبالتالي، تعد برامج الزحف حلاً ذكيًا لمجموعات البيانات الضخمة وحافزًا للتقدم الكبير في مجال الأمن السيبراني.
في هذه المقالة، سنتعلم:
يشير الزحف إلى عملية كشط/استخراج البيانات من مواقع الويب/الإنترنت باستخدام برامج زحف الويب. على سبيل المثال، تستخدم Google روبوتات العنكبوت (برامج الزحف) لقراءة محتوى المليارات من صفحات الويب والمشاركات. بعد ذلك، يقوم بجمع البيانات من هذه المواقع وترتيبها في فهرس بحث Google.
تقوم المؤسسات بالزحف إلى البيانات وكشطها من صفحات الويب لأسباب مختلفة قد تفيدها أو تفيد عملائها. في ما يلي بعض تطبيقات الزحف الأقل شهرة:
قد يحتوي مقطع فيديو واحد على YouTube على العديد من عناوين URL القابلة للتنزيل، استنادًا إلى: المحتوى والدقة ومعدل البت والنطاق والواقع الافتراضي/ثلاثي الأبعاد. في ما يلي نموذج لرمز API و CLI للحصول على عناوين URL القابلة للتنزيل على YouTube جنبًا إلى جنب مع علامات Itags الخاصة بهم:
يوتيوب
|
|---- app.py
|---- cli.py
`---- core.py
سيحتوي المشروع على ثلاثة ملفات:
app.py: لواجهة api، باستخدام إطار صغير للقارورة
cli.py: لواجهة سطر الأوامر، باستخدام argparse وحدة
core.py: يحتوي على جميع الوظائف الأساسية (الشائعة) التي تعمل كوظيفة مساعدة لـ app.py و cli.py.
# youtube/app.py
قارورة استيراد
من استيراد القارورة jsonify، الطلب
جوهر الاستيراد
التطبيق = Flask.flask (__name__)
app.config ["التصحيح"] = صحيح
@app .route ('/'، الطرق = ['GET'])
def get_download_urls ():
إذا لم يكن «عنوان url» موجودًا في request.args:
إرجاع «خطأ: لم يتم توفير حقل عنوان url. يرجى تحديد عنوان URL الخاص بـ youtube.»
عنوان url = request.args ['url']
عناوين url = core.get_download_urls (عنوان url)
إرجاع jsonify (عناوين URL)
تشغيل التطبيق ()
رمز واجهة flask للحصول على عناوين URL القابلة للتنزيل من خلال API.
عنوان URL للطلب - localhost:<port>/? عنوان URL = https://www.youtube.com/watch?v=FIVPlraNgXs
# youtube/cli.py
استيراد arparse
جوهر الاستيراد
my_parser = argparse.argumentParser (الوصف = «احصل على فيديو يوتيوب قابل للتنزيل من عنوان url»)
my_parser.add_argument ('-u'، '--url'، metavar=»، required=true، help= 'youtube url')
args = my_parser.parse_args ()
عناوين url = core.get_download_url (args.url)
طباعة (f'got {len (urls)} عناوين url\n')
بالنسبة للفهرس، يتم تعداد عنوان url (عناوين url، start=1):
طباعة (f' {index}. {url}\n')
مقتطف الشفرة للحصول على عناوين URL قابلة للتنزيل من خلال واجهة سطر الأوامر (باستخدام argparse لتحليل الأوامر مثل الحجج)
واجهة سطر الأوامر - بيثون cli.py -u 'https://www.youtube.com/watch?v=aWPYw7iVBg0'
# youtube/core.py
استيراد جسون
إعادة الاستيراد
طلبات الاستيراد
def get_download_urls (عنوان url):
html = requests.get (عنوان url) .text
RE = re.compile (r'ytplayer [.] التكوين\ s*=\ s* (\ {.*? \})؛ ')
conf = json.loads (إعادة البحث (html) .group (1))
player_response = json.loads (conf ['args'] ['player_response'])
البيانات = استجابة اللاعب ['تدفق البيانات']
إرجاع [{'itag': frmt ['itag']، 'url': frmt ['url']} لـ frmt في البيانات ['AdaptiveFormts']]
هذه هي الوظيفة الأساسية (المشتركة) لكل من واجهة API وواجهة CLI.
سيؤدي تنفيذ هذه الأوامر إلى:
نتيجة العينة
[{
«العلامة»: 251،
«عنوان URL»: 'https://r2---sn-gwpa-h55k.googlevideo.com/videoplayback?expire=1585225812&ei=9Et8Xs6XNoHK4-EPjfyIiA8&ip=157.46.68.124&id=o-AGeDi3DVtAbmT5GiuGsDU7-NPLk23fOXNnY16gGQcHWu&itag=251&source=youtube&requiressl=yes&mh=Av&mm=31%2C26&mn=sn-gwpa-h55k%2Csn-cvh76ned&ms=au%2Conr&mv=m&mvi=1&pl=18&initcwndbps=112500&vprv=1&mime=audio%2Fwebm&gir=yes&clen=14933951&dur=986.761&lmt=1576518368612802&mt=1585204109&fvip=2&keepalive=yes&fexp=23882514&c=WEB&txp=5531432&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig = ADKHGMWRAIGK 4l4vhalwmpvpecmdkhnb2u8um6eyhfz16kggzjfzxzjm9ejvk7 أوقية jfqx7ywbqa3crvkuu86 vCIMV-A & lsparams=MH%2cm%2cm%2cmv%2cmv%2c2cmv%2cv %2cmv%2cv %2cmv%2c2cmv%2cv%2cv %2cmv%2cv%2c2cmv%2cv%2cv%2c2cmv%2cv%2c2cmv%2cv%2cسينيتكWNDBPS&lsig=ABSNJPQWRAIGKBHJYTJV73-C7EMWBVKB-X8_RNB7_XAPZVPFW7wgCMCIHQJ405fq3kR-e_5fv8gmuni0rrlg8T85SLGTQ17w'
}]
ما هي تقنية iTag؟
يمنحنا iTag مزيدًا من التفاصيل حول الفيديو مثل نوع محتوى الفيديو والدقة ومعدل البت والنطاق و VR/3D. يمكن العثور على قائمة شاملة برمز تنسيق YouTube iTags هنا.
تقوم منصة مراقبة المخاطر الرقمية الخاصة بـ CloudSek، xviGil، بالبحث في الإنترنت عبر الويب السطحي والويب المظلم والويب العميق، لاكتشاف التهديدات تلقائيًا وتنبيه العملاء. بعد تكوين قائمة الكلمات الرئيسية المقترحة من قبل العملاء، تقوم CloudSek Crawlers بما يلي:
اكتشف كيف تحمي خدمات الإزالة الشاملة من CloudSek علامتك التجارية من التهديدات عبر الإنترنت.
كيف تستغل الجهات الفاعلة في مجال التهديد Android Webview
الاستفادة من STIX و TAXII لتحسين استخبارات التهديدات السيبرانية (الجزء 1)
Take action now
CloudSEK Platform is a no-code platform that powers our products with predictive threat analytic capabilities.
Digital Risk Protection platform which gives Initial Attack Vector Protection for employees and customers.
Software and Supply chain Monitoring providing Initial Attack Vector Protection for Software Supply Chain risks.
Creates a blueprint of an organization's external attack surface including the core infrastructure and the software components.
Instant Security Score for any Android Mobile App on your phone. Search for any app to get an instant risk score.