2010-03-01 10 views
11

के साथ स्वचालित विंडोज जीयूआई ऑपरेशंस मैं एक पाइथन स्क्रिप्ट बनाना चाहता हूं जो विंडोज एक्सपी में वीपीएन सर्वर स्थापित करने की प्रक्रिया को स्वचालित करता है, लेकिन एकमात्र तरीका मुझे पता है कि इसे कैसे करना है विंडोज जीयूआई संवाद का उपयोग करना। मैं सिस्टम के लिए क्या कर रहा हूं और पाइथन स्क्रिप्ट को स्वचालित करने के लिए डिज़ाइन कर रहा हूं, यह जानने के बारे में मैं कैसे जाउंगा?पाइथन

उत्तर

1

प्रश्न में संवाद के लिए कीस्ट्रोक भेजने के लिए SendKeys का उपयोग कर सकते हैं, और a few extra tricks यदि आपको माउस क्रियाओं की भी आवश्यकता है।

या, आप सभी सिस्टम बनाया के रूप में आप मैन्युअल रूप से संवाद के माध्यम से जाने वाली कॉल पर नजर रखने के StraceNT इस्तेमाल कर सकते हैं, और या तो अजगर win32 extensions या ctypes साथ अजगर में उन्हें पुन: पेश।

+0

मुझे लगता है कि strace मैं क्या जरूरत है, लेकिन मैं अपने रूप में सब कुछ एक्सप्लोरर में होता है काम करने जा नहीं लगता कि है। सही कॉल को अलग करने के लिए बहुत कुछ चल रहा है। कोई सलाह? – tehr

+0

प्रेषक साइट इस समय नीचे है और यह उल्लेखनीय है कि ऑटोमा एक वाणिज्यिक पैकेज है - व्यक्तिगत उपयोग के लिए $ 99। –

1

पता लगाएं कि आप आदेशों का उपयोग करना चाहते हैं (कमांड लाइन पर) और इसके बजाय इन आदेशों को स्क्रिप्ट करें।

+0

यह सबसे अच्छा विचार जैसा प्रतीत होता है लेकिन मुझे नहीं पता कि कमांडलाइन के माध्यम से इसे कैसे किया जाए। कोई विचार जहां मुझे दिखना शुरू करना चाहिए? – tehr

+0

@tehr, मैं आपके द्वारा उपयोग किए जा रहे टूल से परिचित नहीं हूं, लेकिन मुझे लगता है कि एमएसडीएन – hasen

+0

पर कहीं भी इस बात के बारे में कुछ है, माइक्रोसॉफ्ट हमेशा कमांड लाइन के माध्यम से चीजों को पूरा करने के तरीके नहीं कर सकता है। सबसे अच्छा आप (आमतौर पर) उम्मीद कर सकते हैं कि एपीआई फ़ंक्शन जिन्हें आपको कॉल करने की आवश्यकता है, को PowerShell या VBScript से बुलाया जा सकता है। कुछ कार्य हैं, हालांकि जीयूआई में सरल, प्रोग्रामिंग काम करने की काफी भारी मात्रा है (एकाधिक ऑब्जेक्ट सृजन/कॉन्फ़िगरेशन इत्यादि)। संक्षेप में: ऐसे समय होते हैं जब (यहां तक ​​कि क्रुद्ध) जीयूआई स्वचालन आपको जो चाहिए उसे पूरा करने का एकमात्र व्यवहार्य माध्यम है। – mojo

2

SIKULI पर एक नज़र डालें - विंडोज़ में कम से कम सही संचालन की कुछ रिपोर्टें हैं, लेकिन यह एक साधारण स्क्रिप्ट को चलाने और चलाने के लिए वास्तव में आसान है।

+0

वह पायथन के साथ कैसे काम करता है? –

+0

ऐसा लगता है कि यह अजगर के साथ काम करता है। लेकिन ज्योथन का उपयोग करता है। वास्तव में अच्छा लग रहा है। इसमें एक आईडीई भी है, जहां आप छवियों को बहुत अधिक टाइप और पेस्ट कर सकते हैं https://www.youtube.com/watch?v=WGEX0dz_f_w&t=23s। लड़का कुछ वास्तव में जटिल चीजें करता है और ओएस के साथ-साथ एप्लिकेशन के लिए इसके एग्नोसाइटिक की तरह लगता है .. –

+0

@Swanson, sikuli pywinauto या pyautogui या autopy से दूसरे की तुलना कैसे करता है? –

13

आप जीयूआई स्वचालन के लिए pywinauto का भी उपयोग कर सकते हैं।

संपादित करें: स्क्रिप्ट बनाने के लिए अब GUI लगता है, swapy

4

आप Automa उपयोग करने का प्रयास कर सकते हैं - यह एक Windows स्वचालन उपकरण है जो एक अजगर पुस्तकालय के रूप में इस्तेमाल किया जा सकता है:

from automa.api import * 

और फिर आप शुरू की तरह आदेशों का उपयोग कर सकते हैं (..), क्लिक करें (..) और दर्ज करें (..) जो यूआई पर काम करता है। आप टूल को अपने कंसोल विंडो से स्टैंडअलोन एप्लिकेशन के रूप में भी उपयोग कर सकते हैं। यदि कोई जीयूआई तत्व का नाम स्पष्ट नहीं है, तो Automa get_name_under_mouse() नामक एक फ़ंक्शन प्रदान करता है - आप इसका नाम जानने के लिए अपने माउस को किसी भी GUI तत्व पर होवर कर सकते हैं।

प्रकटीकरण: मैं Automa के विकास

+1

कृपया ध्यान दें कि ऑटोमा मुफ्त नहीं है, और वेब से डाउनलोड किया गया संस्करण एक समय सीमित परीक्षण है। यदि आप इसके लिए लाइसेंस का भुगतान नहीं करना चाहते हैं तो ऑटोमा का उपयोग करके कुछ भी न बनाएं। –

0

PyAutoGUI PyPI से पिप के साथ स्थापित किया जा सकता में शामिल कर रहा हूँ। यह क्रॉस प्लेटफ़ॉर्म है और माउस & कीबोर्ड को नियंत्रित कर सकता है। इसमें पाइविनाटो की विशेषताएं हैं और कुछ और शीर्ष पर हैं। यह विंडोज या जीयूआई नियंत्रण की पहचान नहीं कर सकता है, लेकिन इसमें विशेष स्क्रीनशॉट पर क्लिक करने के लिए मूल स्क्रीनशॉट & छवि पहचान सुविधाएं हैं। और यह अच्छी तरह से प्रलेखित और रखरखाव है।

pip install pyautogui