विज्ञापन

स्वचालन की कुंजी चीजों को पहले की तुलना में अधिक तेज़ और आसान बना रही है। तो क्या करने में आपको लंबा समय लगता है? आपके कार्यभार का कौन सा भाग स्वचालित करना चाहते हैं?

जब उत्पादकता की बात आती है, तो एक्सेल सबसे आम उपकरण है जो लोगों द्वारा वित्त के आयोजन जैसी चीजों के लिए उपयोग किया जाता है, परियोजनाओं का प्रबंधन, तथा लक्ष्यों को प्राथमिकता देना. पिछले हफ्ते, मैंने बताया कि कैसे स्वचालित IE Excel पत्रक में URL के समूह सेट करके, और फिर Windows में IE ऑब्जेक्ट का उपयोग करके URL के समूह को सीधे Excel के अंदर से लॉन्च करने के लिए स्वचालित करें।

उस लेख के बाद, कई पाठकों ने पूछा कि फ़ायरफ़ॉक्स या क्रोम में एक ही काम कैसे करें। चूंकि न तो फ़ायरफ़ॉक्स और न ही क्रोम में विंडोज के साथ एक समान ऑब्जेक्ट शामिल है जो VBA स्वचालन के लिए उपयोग किया जा सकता है, उन अन्य ब्राउज़रों पर एक ही तरह के कार्यों को करने के लिए एक अतिरिक्त कदम की आवश्यकता होती है। उस चरण की स्थापना है सेलेनियम VBA - सेलेनियम के लिए एक विंडोज COM आवरण।

यह आपको किसी भी एप्लिकेशन से कॉल करने की अनुमति देता है जो ब्राउज़र खोलने के लिए VBA का समर्थन करता है - न कि केवल IE - और उस ब्राउज़र सत्र को नियंत्रित करता है। यह एक शक्तिशाली स्वचालन उपकरण है जो आमतौर पर उपयोग किया जाता है कि कई लोकप्रिय ब्राउज़र विक्रेता सेलेनियम को अपने ब्राउज़र के मूल भाग के रूप में शामिल कर रहे हैं। अपने स्वचालन अनुप्रयोगों में इसका उपयोग आने वाले वर्षों के लिए समर्थित होना निश्चित है।

सेलेनियम के साथ स्वचालित फ़ायरफ़ॉक्स और क्रोम

इससे पहले कि आप इस परियोजना के साथ आरंभ करें, आपको सेलेनियम VBA रैपर को डाउनलोड और इंस्टॉल करना होगा। फिर, जैसा कि मैंने लेख में चर्चा की है स्वचालित IEएक्सेल में कोई VBA लिखने के लिए, आपको डिज़ाइन मोड में आने और कोड को देखने की आवश्यकता है। यदि आपने ऐसा पहले कभी नहीं किया है, तो आपको बस "डेवलपर" मेनू आइटम में जाने की आवश्यकता है, और डिज़ाइन मोड पर क्लिक करें। "सम्मिलित करें" बटन पर क्लिक करें, ActiveX बटन पर क्लिक करें और इसे अपनी शीट पर कहीं खींचें। एक बार जब आप ऐसा कर लेते हैं, तो बटन पर क्लिक करें और फिर "व्यू कोड" पर क्लिक करें।

selenium1

कोड संपादक विंडो में, बाईं ओर, "नाम" और "कैप्शन" दोनों को बदलना सुनिश्चित करें कि बटन क्या है। इस स्थिति में, बटन उन URL की सूची को खोलना होगा जिन्हें आपने स्प्रेडशीट में सूचीबद्ध किया है। मेरे मामले में, मैंने इसे केवल cmdLoadURL कहा, और कैप्शन "लोड यूआरएल" (यह वही है जो बटन पर दिखाई देता है) बनाया।

selenium1b

अगला, आपको टूल मेनू पर क्लिक करके सेलेनियम आवरण को सक्षम करने की आवश्यकता है, फिर "संदर्भ" पर क्लिक करें, और फिर "सेलेनियमवॉपर टाइप लाइब्रेरी" नामक संदर्भ में ब्राउज़ करें। उस संदर्भ बॉक्स को जांचें और फिर ठीक पर क्लिक करें।

selenium2

अब आप सेलेनियम आवरण का उपयोग करके ब्राउज़र स्वचालन कोड लिखना शुरू करने के लिए तैयार हैं!

सेलेनियम आवरण की कार्यक्षमता

सेलेनियम VBA आवरण आपको इस एक लेख में आपको दिखाने में सक्षम होने की तुलना में बहुत अधिक कार्यक्षमता प्रदान करता है। आप सेलेनियम ऑब्जेक्ट को "न्यू सेलेनियमवैपेर" के रूप में परिभाषित करके सिर्फ वेबड्राइवर से परे कितना उपलब्ध है देख सकते हैं। जब आप अवधि टाइप करते हैं, तो यह आपके द्वारा नियंत्रित की जाने वाली सभी प्रकार की वस्तुओं को ब्राउज़ कर सकता है, जैसे कि ब्राउज़र की छवियां, पीडीएफ फाइलें, कीबोर्ड कुंजियां, आदि।

selenium3

यह उदाहरण कोड WebDriver का उपयोग करेगा। एक बार जब आप अपने कोड में सेलेनियम वेबड्राइवर ऑब्जेक्ट का उपयोग करते हैं और अवधि टाइप करते हैं, तो यह उन विधियों और गुणों की एक लंबी सूची को छोड़ देगा जिनका उपयोग आप अपने वेब ब्राउज़र को स्वचालित करने के लिए कर सकते हैं।

selenium4

उपलब्ध सब कुछ सीखने में कुछ समय लग सकता है, लेकिन Google कुछ अच्छे उदाहरणों को चालू कर सकता है, जो उपलब्ध नमूनों के पीछे हैं Google कोड पृष्ठ. दुर्भाग्य से, जहां तक ​​मुझे पता है, सेलेनियम का उपयोग करने के लिए वहां कोई सीधा मार्गदर्शक नहीं है, लेकिन मैं किसी भी पाठक का आभारी रहूंगा जो किसी भी संसाधन प्रदान कर सकता है!

आपका VBA सेलेनियम कोड लिखना

इस उदाहरण में, IE लेख की तरह, मैंने उन URL की सूची बनाई है जिन्हें मैं फ़ायरफ़ॉक्स में स्वचालित रूप से खोलना चाहता हूं। फिर मैंने इस लेख के पहले भाग में वर्णित बटन बनाया।

selenium5

बटन के पीछे का कोड सीधा है, लेकिन मैं समझाता हूं कि प्रत्येक अनुभाग क्या करता है। सबसे पहले, आपको फ़ायरफ़ॉक्स एप्लिकेशन लॉन्च करने की आवश्यकता है। "सेलेनियम.स्टार्ट" विधि ऐसा करेगी। SetTimeout और setImplicitWait विधियाँ महत्वपूर्ण नहीं हैं, लेकिन यदि ब्राउज़र किसी कारण से प्रतिक्रिया नहीं करता है, तो आपके एप्लिकेशन को हमेशा के लिए लॉक होने से रोक सकता है।

न्यू सेलेनियमवॉपर के रूप में मंद सेलेनियम। WebDriver। वस्तु के रूप में मंद एफएफ। इंटेगर के रूप में मंद introwPosition। नई सेलेनियमवॉपर के रूप में डिम कीज़। सेलेनियम। "फ़ायरफ़ॉक्स" शुरू करें, " https://www.google.com" सेलेनियम.सेटटाइमआउट ("120000") selenium.setImplicitWait (5000) intRowPosition = 2। सेलेनियम। Open Sheet1.Range ("A" & intRowPosition)

अंतिम दो पंक्तियों को पढ़ने के लिए एक्सेल डेटा की पंक्ति निर्धारित की जाती है (पंक्ति दो, जहां पहला URL संग्रहीत होता है स्प्रेडशीट), और फिर उस स्प्रेडशीट से URL पढ़ने के लिए "selenium.open" विधि करता है, और इसे खोलें फ़ायरफ़ॉक्स।

selenium7

कोड का अगला भाग पंक्ति सूचक को बढ़ाता है और सूची में अगला URL पढ़ता है। यदि सेल रिक्त नहीं है, तो वह फ़ायरफ़ॉक्स में एक नया टैब लॉन्च करने के लिए SendKeys विधि का उपयोग करता है, उस विक्रय से अगला URL पढ़ता है, और उस नए टैब में URL खोलता है।

intRowPosition = intRowPosition + 1 जबकि Sheet1.Range ("A" & intRowPosition) <> vbNullString सेलेनियम। SendKeys कुंजी। नियंत्रण और "टी" सेलेनियम। Open1 को खोलें। निकला ("A" और intRowPosition) intRowPosition = intRowPosition + 1। IE सेट करें = कुछ भी नहीं

जब तक सभी URL अपने स्वयं के टैब में नहीं खुल जाते, तब तक स्क्रिप्ट आपकी पूरी सूची में दिखाई देगी। यहाँ लूप के बाद ब्राउज़र दूसरी बार गया और एक नए टैब में MUO खोला गया।

selenium8

यदि आप क्रोम के लिए इस कोड का उपयोग करना चाहते हैं, तो आपको बस "सेलेनियम" लाइन को बदलना होगा। इसके बजाय "क्रोम" को "क्रोम" से शुरू करें।

अब अपनी खुद की स्क्रिप्ट बनाएँ

जैसा कि मैंने ऊपर उल्लेख किया है, सेलेनियम आवरण की शक्ति सीखने का सबसे अच्छा तरीका "सेलेनियम" टाइप करना है आपके कोड में, अवधि को मारो और उपलब्ध संपत्तियों की बहुत लंबी सूची को ब्राउज़ करें तरीकों। उदाहरण के लिए, आप फ़ायरफ़ॉक्स या क्रोम में वर्तमान में खुले टैब का URL प्राप्त करने के लिए .URL संपत्ति का उपयोग कर सकते हैं।

selenium9

जैसा कि आप देख सकते हैं, कई और चीजें हैं जो आप इस लेख के दायरे से परे जा सकते हैं। लेकिन प्रयोग करें और कुछ मज़ा करें। शुक्र है, अधिकांश फ़ंक्शन पॉप-अप मदद पाठ है जो आपको दिखाता है कि प्रत्येक फ़ंक्शन क्या पैरामीटर की अपेक्षा करता है। यह एक महान सौदा मदद कर सकता है जब यह समझ में आता है कि इसका उपयोग कैसे करें।

आपके लिए अगली स्क्रिप्टिंग परियोजना, कैसी होगी VBA के साथ अपना खुद का सरल ऐप बनाना आप वीबीए के साथ अपना खुद का सरल ऐप कैसे बना सकते हैंसमस्याओं को हल करने के लिए अपने खुद के VBA आवेदन करने का तरीका जानना चाहते हैं? अपने VBA सॉफ़्टवेयर बनाने के लिए इन युक्तियों का उपयोग करें। अधिक पढ़ें ?

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