بحث
ما هو Headless Chrome؟ تصفح بلا واجهة لأتمتة المهام
البرمجة #HeadlessChrome #برمجة

ما هو Headless Chrome؟ تصفح بلا واجهة لأتمتة المهام

تاريخ النشر: آخر تحديث: 47 مشاهدة 0 تعليق 3 دقائق قراءة
47 مشاهدة
0 إعجاب
0 تعليق
موثوق 95%

يمكن لمتصفح جوجل كروم أن يقوم بما هو أكثر بكثير من مجرد عرض مواقع الويب وتشغيل الإضافات. توجد نسخة خاصة من كروم قادرة على أتمتة المهام المملة وتوفير ساعات طويلة من العمل الشاق، وهي ما يُعرف بمتصفح "Headless Chrome".

تصفح بلا واجهة رسومية

عندما تقوم بتشغيل أي متصفح، فإن أول ما تراه هو نافذة تعرض محتوى الويب، وهو ما نسميه واجهة المستخدم الرسومية (GUI). لكن، هناك مهام مفيدة يمكنك القيام بها في المتصفح دون الحاجة لهذه الواجهة. المتصفح الذي يعمل بدون جانبه المرئي يُسمى متصفحاً "بلا رأس" (Headless Browser).

للتحكم في متصفح لا يحتوي على واجهة رسومية، كل ما تحتاجه هو لوحة مفاتيح ووحدة تحكم سطر الأوامر (Command-line console). يمكنك تنفيذ أوامر متصفح مختلفة وإنجاز مهام مفيدة. إذا كان لديك جوجل كروم العادي مثبتاً، فلن تحتاج حتى إلى تنزيل أي شيء آخر؛ يمكنك ببساطة فتح الطرفية (Terminal) وتشغيل كروم في وضع Headless.

ما يجعل المتصفح بلا واجهة مميزاً هو استخدامه للموارد. نظراً لأن كروم في هذا الوضع لا يضطر إلى رسم واجهة مستخدم أو محتوى ويب، فإنه يعمل بشكل أسرع بكثير.

قوة استخراج البيانات (Web Scraping)

يستخدم معظم الناس هذه التقنية لاستخراج البيانات من الويب. تخيل أنك طُلب منك أرشفة موقع "Doom Wiki"، أو مجرد الصور الموجودة عليه. يدوياً، سيتعين عليك فتح كل صفحة وحفظ الصور أو الصفحة بأكملها كملف HTML. يحتوي الموقع على حوالي 20,000 صفحة، مما يعني تكرار هذه الخطوات آلاف المرات، وقد يستغرق الأمر أكثر من شهر.

أما باستخدام متصفح مثل Headless Chrome، يمكن أتمتة العملية بأكملها وإتمامها في أقل من 10 دقائق. تسمى هذه العملية "Web Scraping" لأنك تقوم "بكشط" البيانات من موقع ويب وحفظها للاستخدام دون اتصال بالإنترنت.

خيارات الأتمتة والزحف للمواقع

لا توجد ميزة واحدة مدمجة في جوجل كروم يمكنها تلقائياً "الزحف" وحفظ جميع الصفحات على موقع ويب. للقيام بذلك فعلياً، لديك خياران:

  • استخدام النصوص البرمجية: يمكنك استخدام Linux أو نظام Windows الفرعي للينكس (WSL) لكتابة وتشغيل نص برمجي (Bash script) يزور كل صفحة ويب تلقائياً ويحفظها.
  • مكتبات الأتمتة المخصصة: يمكنك استخدام مكتبة أتمتة مواقع مخصصة مثل Playwright أو Selenium. على سبيل المثال، يمكن كتابة نص برمجي بلغة Python باستخدام Playwright (الذي يستخدم Headless Chrome) لأتمتة استخراج البيانات.

المواقع الحديثة لا تحمل كل محتواها دفعة واحدة. فكر في إنستغرام أو يوتيوب وكيف يحملون المحتوى ديناميكياً بناءً على تفضيلاتك. عادة ما يتعين عليك التفاعل مع الموقع، مثل النقر على زر "تحميل المزيد". النص البرمجي البسيط يقوم بعمل جيد في استخراج الصفحات الثابتة المعتمدة على النصوص، لكن المكتبات المخصصة أفضل للمواقع الديناميكية.

أتمتة المهام اليومية والمراقبة

استخراج صفحات الويب تلقائياً هو واحد من العديد من الأشياء التي يمكنك أتمتتها باستخدام Headless Chrome. يمكن تشغيل نصوص برمجية لسحب آلاف قوائم الوظائف ذات الصلة من منصات مثل Indeed أو LinkedIn، أو تتبع مقارنة الأسعار بين منافسين مختلفين وفق جدول زمني محدد.

كما يمكن تجميع المقالات الإخبارية في قاعدة بيانات محلية من مصادر مختلفة، أو متابعة وسوم محددة على تويتر (Twitter) أو مجتمعات Reddit بدلاً من مسح مواقع كاملة. وتصل القدرات إلى تنفيذ إجراءات تلقائية مثل الملء التلقائي للاستبيانات، أو مراقبة التحديثات مثل التخفيضات وأسعار التذاكر وإرسال تنبيهات فورية لك.

أدوات للمطورين والأرشفة

يمكن للمطورين حفظ صفحات ويب متعددة في نفس الوقت دون فتح متصفح، وحتى تحويل الصفحات إلى ملفات PDF عبر سطر الأوامر. ومن الجدير بالذكر أن "أرشيف الإنترنت" (Internet Archive) وآلة "Wayback Machine" يستخدمان نصوصاً برمجية مماثلة لأرشفة الإصدارات القديمة من المواقع باستخدام متصفحات Headless.

بالإضافة إلى ذلك، يستخدم المطورون هذه التقنية لاختبار أداء المواقع. إذا استغرق الموقع وقتاً طويلاً للتحميل، فقد يغادره الزوار، كما أن جوجل يخفض تصنيف المواقع البطيئة. لذا، تساعد الأتمتة المطورين في اختبار آلاف الصفحات بدقة وسرعة لا يمكن تحقيقها بالطرق التقليدية.

التعليقات 0

سجل دخولك لإضافة تعليق

لا توجد تعليقات بعد. كن أول من يعلق!