افتح ملف EML في أي عميل بريد واتخذ لقطة شاشة
-
13-09-2019 - |
سؤال
أدفع الكثير من الاختبارات التي تنشئ رسائل البريد الإلكتروني. قمت بتخزين كل رسالة في ملف EML منفصل. (يمكنني تغيير ملحق الملف إذا لزم الأمر.)
أرغب في فتح كل ملف في أي عميل بريد وأخذ لقطة شاشة، لذلك يمكنني فحص رسائل البريد الإلكتروني في وقت لاحق.
هذه الفكرة هي أنه يمكنني استخدام تطبيق مشاهدة الصور للنظر في العديد من لقطات الشاشة في نفس الوقت، لذلك يمكنني مقارنتها بصريا (بعد تشغيل كل اختبار).
يمكنني الوصول إلى أجهزة Windows و Mac و Linux. أفضل ما إذا كان الحل في روبي، ولكن هذا غير مطلوب.
أنا أبحث على الويب وهذا الموقع، ولكن لا حظ حتى الآن. سأقوم بنشر الحل في الإجابة إذا وجدت ذلك.
المحلول
يبدو أنك لا يمكن أتمتة Outlook Express. وبعد يقبل فقط newsonly
و mailonly
خيارات عند بدء تشغيل سطر الأوامر.
Thunderbird يقبل اسم الملف عند بدء تشغيل سطر الأوامر:
C:\>"C:\Program Files\Mozilla Thunderbird\thunderbird.exe" mail.eml
كان ذلك كل ما احتاجه لفتح بريد إلكتروني في عميل بريد.
Snapit.exe. يأخذ الشاشة لقطة وتوفرها لملف.
وهنا هو البرنامج النصي لأخذ لقطة الشاشة لملفات EML متعددة.
file_names.each do |file_name|
`start /d "#{thunderbird_folder}" thunderbird.exe #{file_name}`
# if the script does not wait for a second, screen shot will be taken before
# thunderbird opens
sleep 1
`snapit.exe`
end
نصائح أخرى
جرب استخدام السيلينيوم لاتخاذ لقطات
لم أحاول ذلك أبدا، ولكن هناك طرق لاتخاذ لقطات وطرق استخدام روبي
من توثيق :
capture_screenshot(filename)
Captures a PNG screenshot to the specified file.
‘filename’ is the absolute path to the file to be written, e.g. "c:\blah\screenshot.png"
يمكنك أيضا إلقاء نظرة على لوحة لمحة لهذه المهام.
تحتاج إلى إيجاد طريقة لأتمتة إجراء "فتح البريد الإلكتروني / أخذ لقطة شاشة" باستخدام هذا.