كيفية تحميل مرفق على صفحة ويب عندما يتم إخفاء رمز HTML FileInput؟

StackOverflow https://stackoverflow.com/questions/19840369

سؤال

أحاول تحميل ملف كمرفق بريد إلكتروني من خلال نموذج قائم على الويب باستخدام Watir-Webdriver. المشكلة التي أركض فيها هي أن رمز HTML الفعلي المرتبط بقطعة FileInput مخفية على الصفحة وبالتالي لا يمكن التفاعل مع استخدام:

@browser.file_field(:id => "fileInput").set "#{filepath}"

رمز HTML صفحة:

<!--Real Input field, but hidden-->
<input id="fileInput" type="file" value="" name="attachment"></input>
<input id="fileButton" type="button" name="attachment" value="Choose Files"
onclick="document.getElementById('fileInput').click();"></input>

الآن ، كل ما يقال ، أنا قادر على النقر فوق الزر "اختيار الملفات" على الصفحة التي تفتح نافذة تحميل الملف. لذلك إذا لم أتمكن من التفاعل على الإطلاق مع عنصر HTML المخفي ، فكيف يمكنني استخدام Ruby لتحديد الملف الذي أريد تحميله باستخدام نافذة المنبثقة؟ Win32ole؟

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

المحلول

حلولان محتملان يتبادران إلى الذهن

واحد ، استخدم أداة أتمتة مستوى نظام التشغيل مثل Autoit ، أو rautomationللتفاعل مع التحكم في تحديد ملف مستوى النظام

ثانياً ، تشاور مع مطوري الصفحة وتنفيذ JavaScript لتعيين القيم المناسبة كما لو كانت أداة تحديد الملف قد تم استخدامها.

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