ولادة روبوت زحف الويب - PromptCloud

نشرت: 2019-02-27
عرض جدول المحتويات
المرحلة الأولى: فهم كيفية تفاعل الموقع مع المستخدمين من البشر
المرحلة 2. التعرف على كيفية تصرف الموقع مع الروبوت
المرحلة 3. بناء الروبوت
المرحلة 4. اختبار الروبوت
المرحلة 5. استخراج نقاط البيانات ومعالجة البيانات

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

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

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

المرحلة الأولى: فهم كيفية تفاعل الموقع مع المستخدمين من البشر

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

المرحلة 2. التعرف على كيفية تصرف الموقع مع الروبوت

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

  • يحد الموقع من التنقل العادي بعد ، لنقل 20 صفحة
  • يقوم الطلب بإرجاع رمز الحالة 301
  • يطرح الموقع اختبار captcha ردًا على ذلك
  • يقوم الخادم بإرجاع رمز الحالة 403 - وهذا يعني أن الموقع يرفض خدمة طلبنا على الرغم من فهمه له
  • وصول مقيد من منطقة جغرافية معينة (هذا هو المكان الذي يظهر فيه الوكلاء في الصورة)

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

لدينا أيضًا طبقة آلية تُستخدم بعد ذلك لتحديد أفضل طريقة لبناء الروبوت للزحف إلى موقع ويب معين. يقوم باختبار إجهاد معتدل على الموقع لاكتشاف نقاط التحول الخاصة به ثم إرجاع بعض المعلومات المهمة التي تدخل في صنع روبوت الزاحف مثل Sleep و Proxy / No proxy و Captcha وعدد الطلبات المتوازية الممكنة والمزيد.

المرحلة 3. بناء الروبوت

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

المرحلة 4. اختبار الروبوت

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

المرحلة 5. استخراج نقاط البيانات ومعالجة البيانات

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

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

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