سؤال

أنا متصل بموقع ويب، وأقوم بتسجيل الدخول.

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

لقد ألقيت نظرة سريعة على الصفحات ورأيت أن هناك بعض رموز JavaScript وHTML ولكن لم أتمكن من فهمها لأنها لا تبدو مثل رمز الصفحة العادي.ما هي تلك الصفحات ل؟كيف يمكنهم إعادة التوجيه إلى صفحات أخرى؟ماذا علي أن أفعل لتمرير هذه؟

هل كانت مفيدة؟

المحلول

إذا كنت بحاجة إلى التعامل مع الصفحات مع جافا سكريبت، حاول WATIR أو <وأ href = "HTTP: // مستندات. seleniumhq.org/ "يختلط =" noreferrer "> السيلينيوم - تلك يقود متصفح الويب الحقيقي، وبالتالي يمكن التعامل مع أي جافا سكريبت. WATIR كلاسيكي يتطلب إما IE أو فايرفوكس بملحق بعض تركيبها، وسترى في صفحة وميض على الشاشة كما أنه يعمل.

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

نصائح أخرى

في الوقت الحاضر، لا تتعامل Mechanize مع JavaScript.هناك حديث عن الاندماج في نهاية المطاف جونسونإمكانيات Mechanize، ولكن حتى يحدث ذلك، لديك خياران:

  1. اكتشف جافا سكريبت جيدًا بما يكفي لفهم كيفية اجتياز تلك الصفحات.
  2. أتمتة المتصفح الفعلي يفعل فهم جافا سكريبت باستخدام واتير.
<اقتباس فقرة>   

ما هي تلك الصفحات ل؟ كيف يمكن إعادة توجيه إلى صفحات أخرى. ماذا علي أن أفعل لتمرير هذه؟

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

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top