كيف أنشأت Python Bot لتسجيل الدخول تلقائيًا إلى بوابة مقيدة

برنامج تعليمي للبايثون خطوة بخطوة لبناء روبوت لتسجيل الدخول

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

تخيل أننا انضممنا إلى جامعة أو مؤسسة جديدة توفر لنا الإنترنت عبر شبكة Wi-Fi. قد تنفذ المنظمة صفحة تسجيل دخول شائعة جدًا للمصادقة على مستخدميها تسمى بوابة مقيدة (تُعرف أيضًا باسم Walled Garden ).

يتم استخدام البوابة المقيدة لعدد من الأسباب.

  • يتم استخدامها من قبل الجامعات والمؤسسات لتقييد عدد الأجهزة المتصلة بشبكة Wi-Fi من حساب / شخص واحد.
  • يتم تنفيذها لتوفير الوصول إلى الخدمات التي تتطلب المصادقة أو الدفع أو غيرها من أوراق الاعتماد الصالحة التي يوافق كل من مقدم الخدمة والمستخدم على الالتزام بها.

هناك عدد من الأسباب والفوائد لاستخدام بوابة مقيدة ، ولكن هذا ليس موضوع هذا المنشور.

نفذت شركتي بوابة مقيدة يحتاج المستخدمون إلى تسجيل الدخول إليها حتى يتمكنوا من الوصول إلى الإنترنت. مباشرة بعد الاتصال بالشبكة اللاسلكية ، استخدم المستعرض الخاص بي لفتح صفحة البوابة المقيدة وكنت بحاجة إلى إدخال اسم المستخدم وكلمة المرور الخاصة بي وبعد ذلك تمكنت من الوصول إلى الإنترنت. ولكن كانت هناك مشكلة.

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

  • التحكم في عدد المحطات الطرفية لكل مستخدم
  • تحكم في استهلاك النطاق الترددي و / أو سرعة التنزيل لكل جلسة
  • تقييد نوع حركة المرور المسموح بها وحتى تحديد مدة مهلة الجلسة

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

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

ماذا لو تمكنت ، بعد تسجيل الخروج ، من تسجيل الدخول إلى البوابة المقيدة بنقرة زر / أيقونة على نظامي؟

يجب أن تكون قابلة للتنفيذ! لا حاجة لإدخال اسم مستخدم ثم كلمة مرور يجب أن تتكون في معظم الحالات من 8 أحرف ويجب أن تحتوي على حرف كبير واحد على الأقل بلاه بلاه بلاه. دعونا نرى كيف يمكننا القيام بذلك.

التنفيذ

حتى لو كنت مبتدئًا في البرمجة ، فمن السهل جدًا. لقد قمت بترميز هذا في لغة برمجة بايثون. يمكن تنزيل Python من هنا ، كما أننا نطلب السيلينيوم الذي يمكن تنزيله هنا. يمكنك أيضا pip install selenium(مستحسن).

الآن دعونا نلقي نظرة على الكود.

بعد استيراد المكتبات الضرورية ، نحتاج إلى تحديد المتغيرات التالية داخل الكود.

اسمحوا لي أن أشرح هذا الآن ،

  • رابط موقع الويب ليس سوى رابط صفحة تسجيل الدخول أو رابط البوابة المقيدة الذي يمكن للمستخدم المصادقة عليه
  • ش sername و كلمة السر هو ما قمت بإدخال لتسجيل الدخول
  • element_for_username و element_for_password و element_for_submit هي أسماء العنصر في كود HTML لصفحة تسجيل الدخول

دعني أوضح لك كيف تجد هؤلاء.

كما في الشكل أعلاه ،

  • افتح Inspect Element وفقًا لمتصفحك.
  • بحث عن عنصر HTML ونسخ اسم العلامة الإدخال (في المثال أعلاه لها اسم_المستخدم ).
  • تفعل الشيء نفسه للوقوف على عنصر HTML ل كلمة المرور و تقديم زر كذلك.
  • ستكون هذه السلاسل هي قيمة element_for_username ، element_for_password ، element_for_submit.

تم إنجاز معظم العمل!

ملاحظة: أنا أعمل على نظام macOS لذا سأقوم بتنفيذ الروبوت في Safari. بالنسبة إلى Chrome والآخرين ، استخدم Chrome عبر chromedriver.

انسخ هذا الرمز مع باقي الكود واحفظه كملف Python (ملف .py). قم بتشغيل الملف باستخدام python script.py. سترى المتصفح يفتح تلقائيًا صفحة تسجيل الدخول ويدخل التفاصيل ويقدمها. ليس عليك حتى كتابة اسم المستخدم وكلمة المرور بعد الآن. أليس هذا رائعًا؟

ملاحظة: الكود الكامل متاح على GitHub.

استخدام Automator في macOS لإنشاء تطبيق (اختياري)

في macOS ، يمكنك إنشاء تطبيق يمكنه متابعة مجموعة محددة من مهام سير العمل لأي مهمة تتم بشكل متكرر.

سأشرح في هذا القسم كيفية تحويل نص Python النصي أعلاه إلى تطبيق آلي. سيمكن هذا المستخدم من تسجيل الدخول إلى البوابة المقيدة والنقر ببساطة على ملف تطبيق الأتمتة.

الآن دعونا نلقي نظرة على خطوات تنفيذ هذا:

الخطوة 1: افتح Automator . إنشاء خدمة جديدة أو ملف & g جديد > S ervice

الخطوة 2: أضف إجراء " Run Shell Script " ، واضبط Shell: to / bin / bash و Pass input: to as arguments .

الخطوة 3: قم الآن بإضافة كود bash على النحو التالي. احفظ الملف على سطح المكتب.

الخطوة 4: انقر فوق الملف و Voilà!

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