Διαφήμιση

Το κλειδί για τον αυτοματισμό είναι να κάνουμε τα πράγματα γρηγορότερα και ευκολότερα από ό, τι έχετε κάνει ποτέ πριν. Τι χρειάζεται λοιπόν πολύς χρόνος για να κάνετε; Ποιο μέρος του φόρτου εργασίας σας θα ήθελε να αυτοματοποιήσει;

Όσον αφορά την παραγωγικότητα, το Excel είναι το πιο κοινό εργαλείο που χρησιμοποιείται από άτομα για πράγματα όπως η οργάνωση οικονομικών, διαχείριση έργων, και ιεράρχηση των στόχων. Την περασμένη εβδομάδα, περιέγραψα πώς αυτοματοποίηση IE ρυθμίζοντας ομάδες διευθύνσεων URL σε φύλλα Excel και, στη συνέχεια, χρησιμοποιώντας το αντικείμενο IE στα Windows για να αυτοματοποιήσετε την εκκίνηση ομάδων διευθύνσεων URL απευθείας από το Excel.

Μετά από αυτό το άρθρο, πολλοί αναγνώστες ρώτησαν πώς να κάνουν το ίδιο πράγμα στον Firefox ή στο Chrome. Επειδή ούτε ο Firefox ούτε το Chrome έχουν παρόμοιο αντικείμενο που περιλαμβάνεται στα Windows που μπορούν να χρησιμοποιηθούν για αυτοματισμό VBA, η εκτέλεση του ίδιου είδους ενεργειών σε αυτά τα άλλα προγράμματα περιήγησης απαιτεί ένα επιπλέον βήμα. Αυτό το βήμα είναι η εγκατάσταση του

instagram viewer
Σελήνιο VBA - ένα περιτύλιγμα COM των Windows για το Selenium.

Σας επιτρέπει να πραγματοποιείτε κλήσεις από οποιαδήποτε εφαρμογή που υποστηρίζει VBA για να ανοίξετε ένα πρόγραμμα περιήγησης - όχι μόνο IE - και να ελέγχετε αυτήν τη συνεδρία του προγράμματος περιήγησης. Είναι ένα ισχυρό εργαλείο αυτοματισμού που χρησιμοποιείται τόσο συχνά που πολλοί δημοφιλείς προμηθευτές προγραμμάτων περιήγησης ενσωματώνουν το Selenium ως εγγενές μέρος του προγράμματος περιήγησής τους. Η χρήση του στις εφαρμογές αυτοματισμού είναι βέβαιο ότι θα υποστηρίζεται για τα επόμενα χρόνια.

Αυτοματοποίηση Firefox και Chrome με σελήνιο

Προτού ξεκινήσετε με αυτό το έργο, θα πρέπει να κάνετε λήψη και εγκατάσταση του περιτυλίγματος Selenium VBA. Στη συνέχεια, όπως ανέφερα στο άρθρο αυτοματοποίηση IE, για να γράψετε οποιοδήποτε VBA στο Excel, πρέπει να μπείτε στη λειτουργία σχεδίασης και να προβάλετε τον κωδικό. Εάν δεν το έχετε κάνει ποτέ πριν, απλά πρέπει να μεταβείτε στο στοιχείο μενού "Προγραμματιστής" και να κάνετε κλικ στη Λειτουργία σχεδίασης. Κάντε κλικ στο κουμπί "Εισαγωγή", κάντε κλικ στο κουμπί ActiveX και τραβήξτε το στο φύλλο σας κάπου. Μόλις το κάνετε αυτό, κάντε κλικ στο κουμπί και στη συνέχεια κάντε κλικ στο "Προβολή κώδικα".

σελήνιο

Στο παράθυρο του προγράμματος επεξεργασίας κώδικα, κάτω αριστερά, βεβαιωθείτε ότι έχετε αλλάξει τόσο το "Όνομα" όσο και το "Λεζάντα" για να αντικατοπτρίσετε ποιο είναι το κουμπί. Σε αυτήν την περίπτωση, το κουμπί θα είναι να ανοίξει η λίστα των διευθύνσεων URL που έχετε καταχωρίσει στο υπολογιστικό φύλλο. Στην περίπτωσή μου, απλώς το ονόμασα cmdLoadURLs, και έκανα τη λεζάντα "Φόρτωση διευθύνσεων URL" (αυτό εμφανίζεται στο κουμπί).

σελήνιο1b

Στη συνέχεια, πρέπει να ενεργοποιήσετε το Selenium Wrapper κάνοντας κλικ στο μενού Εργαλεία, στη συνέχεια κάντε κλικ στο "Αναφορές" και, στη συνέχεια, περιηγηθείτε προς τα κάτω στην αναφορά που ονομάζεται "SeleniumWrapper Type Library". Επιλέξτε αυτό το πλαίσιο αναφοράς και, στη συνέχεια, κάντε κλικ στο OK.

σελήνιο2

Τώρα είστε έτοιμοι να αρχίσετε να γράφετε κώδικα αυτοματοποίησης του προγράμματος περιήγησης χρησιμοποιώντας το Selenium Wrapper!

Λειτουργικότητα του περιτυλίγματος σεληνίου

Το Selenium VBA Wrapper σας προσφέρει πολύ περισσότερη λειτουργικότητα από ό, τι θα μπορέσω να σας δείξω σε αυτό το άρθρο. Μπορείτε να δείτε πόσα είναι διαθέσιμα πέρα ​​από το WebDriver, ορίζοντας το αντικείμενο Selenium ως "New SeleniumWrapper". Όταν πληκτρολογείτε την τελεία, θα πέσει όλα τα στοιχεία των τύπων αντικειμένων που μπορείτε να ελέγξετε, όπως εικόνες προγράμματος περιήγησης, αρχεία PDF, πλήκτρα πληκτρολογίου και πολλά άλλα.

σελήνιο3

Αυτό το παράδειγμα κώδικα θα χρησιμοποιεί το WebDriver. Μόλις χρησιμοποιήσετε το αντικείμενο Selenium WebDriver στον κώδικά σας και πληκτρολογήσετε την τελεία, θα εμφανιστεί μια πολύ μεγάλη λίστα μεθόδων και ιδιοτήτων που μπορείτε να χρησιμοποιήσετε για να αυτοματοποιήσετε το πρόγραμμα περιήγησης ιστού.

σελήνιο4

Μπορεί να χρειαστεί λίγος χρόνος για να μάθετε όλα όσα είναι διαθέσιμα, αλλά η Google μπορεί να εμφανίσει μερικά καλά παραδείγματα, πίσω από τα διαθέσιμα δείγματα στο Σελίδα κώδικα Google. Δυστυχώς, από όσο γνωρίζω, δεν υπάρχει απλός οδηγός εκεί έξω για τη χρήση του Selenium, αλλά θα ήμουν ευγνώμων για τους αναγνώστες που θα μπορούσαν να παράσχουν πόρους!

Σύνταξη του κωδικού σας σεληνίου VBA

Σε αυτό το παράδειγμα, όπως στο άρθρο IE, έχω δημιουργήσει μια λίστα διευθύνσεων URL που θέλω να ανοίξω αυτόματα στον Firefox. Στη συνέχεια δημιούργησα το κουμπί όπως περιγράφεται στο πρώτο μέρος αυτού του άρθρου.

σελήνιο5

Ο κωδικός πίσω από το κουμπί είναι απλός, αλλά θα εξηγήσω τι κάνει κάθε ενότητα. Πρώτα απ 'όλα, πρέπει να ξεκινήσετε την εφαρμογή Firefox. Η μέθοδος "selenium.start" θα το κάνει. Οι μέθοδοι setTimeout και setImplicitWait δεν είναι κρίσιμες, αλλά μπορούν να αποτρέψουν το κλείδωμα της εφαρμογής σας για πάντα, εάν το πρόγραμμα περιήγησης δεν ανταποκρίνεται για κάποιο λόγο.

Dim selenium As New SeleniumWrapper. Πρόγραμμα οδήγησης Web. Dim FF ως αντικείμενο. Dim intRowPosition ως ακέραιος. Dim πλήκτρα ως νέο σελήνιοWrapper.keys σελήνιο. Ξεκινήστε το "firefox", " https://www.google.com" selenium.setTimeout ("120000") selenium.setImplicitWait (5000) intRowPosition = 2. σελήνιο. Άνοιγμα φύλλου 1. Εύρος ("A" & intRowPosition)

Οι τελευταίες γραμμές ορίζουν τη σειρά των δεδομένων του Excel για ανάγνωση (δεύτερη γραμμή, όπου η πρώτη διεύθυνση URL είναι αποθηκευμένη στο υπολογιστικό φύλλο) και, στη συνέχεια, εκτελεί τη μέθοδο "selenium.open" για να διαβάσει τη διεύθυνση URL από αυτό το υπολογιστικό φύλλο και να την ανοίξει σε Firefox.

σελήνιο7

Η επόμενη ενότητα κώδικα αυξάνει τον δείκτη γραμμής και διαβάζει την επόμενη διεύθυνση URL στη λίστα. Εάν το κελί δεν είναι κενό, τότε χρησιμοποιεί τη μέθοδο SendKeys για να ξεκινήσει μια νέα καρτέλα στον Firefox, διαβάζει την επόμενη διεύθυνση URL από αυτήν την πώληση και ανοίγει τη διεύθυνση URL σε αυτήν τη νέα καρτέλα.

intRowPosition = intRowPosition + 1 While Sheet1.Range ("A" & intRowPosition) <> vbNullString σελήνιο. Κλειδιά SendKeys. Ελέγχου & σεληνίου "t". Ανοίξτε το Sheet1.Range ("A" & intRowPosition) intRowPosition = intRowPosition + 1. Wend Set IE = Τίποτα

Το σενάριο θα περάσει σε ολόκληρη τη λίστα σας έως ότου ανοίξουν όλες οι διευθύνσεις URL στις δικές τους καρτέλες. Εδώ είναι το πρόγραμμα περιήγησης μετά το δεύτερο βρόχο και άνοιξε το MUO σε μια νέα καρτέλα.

σελήνιο8

Εάν θέλετε να χρησιμοποιήσετε αυτόν τον κωδικό για το Chrome, το μόνο που χρειάζεται να κάνετε είναι να αλλάξετε τη γραμμή "σελήνιο. Ξεκινήστε το "firefox" "στο" chrome ".

Τώρα δημιουργήστε το δικό σας σενάριο

Όπως ανέφερα παραπάνω, ο καλύτερος τρόπος για να μάθετε τη δύναμη του Selenium Wrapper είναι να πληκτρολογήσετε "selenium" στον κωδικό σας, πατήστε την τελεία και απλώς περιηγηθείτε στην πολύ μεγάλη λίστα των διαθέσιμων ιδιοτήτων και μεθόδων. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε την ιδιότητα .URL για να λάβετε τη διεύθυνση URL της τρέχουσας ανοιχτής καρτέλας στον Firefox ή το Chrome.

σελήνιο

Όπως μπορείτε να δείτε, υπάρχουν πολλά περισσότερα πράγματα που μπορείτε να κάνετε που υπερβαίνουν το πεδίο εφαρμογής αυτού του άρθρου. Αλλά πειραματιστείτε και διασκεδάστε. Ευτυχώς, οι περισσότερες από τις λειτουργίες θα εμφανίσουν κείμενο βοήθειας που σας δείχνει ποιες παραμέτρους αναμένει κάθε συνάρτηση. Αυτό μπορεί να βοηθήσει πολύ όταν πρόκειται να καταλάβω πώς να το χρησιμοποιήσετε.

Για το επόμενο έργο δέσμης ενεργειών, τι γίνεται δημιουργώντας τη δική σας απλή εφαρμογή με το VBA Πώς μπορείτε να φτιάξετε τη δική σας απλή εφαρμογή με το VBAΘέλετε να μάθετε πώς να φτιάξετε τη δική σας εφαρμογή VBA για την επίλυση προβλημάτων; Χρησιμοποιήστε αυτές τις συμβουλές για να δημιουργήσετε το δικό σας λογισμικό VBA. Διαβάστε περισσότερα ?

Ο Ryan έχει πτυχίο BSc στην Ηλεκτρολογία. Έχει εργαστεί 13 χρόνια στον τομέα της αυτοματοποίησης, 5 χρόνια στον τομέα της πληροφορικής και τώρα είναι μηχανικός εφαρμογών. Ένας πρώην διευθυντής διαχείρισης του MakeUseOf, μίλησε σε εθνικά συνέδρια για την οπτικοποίηση δεδομένων και παρουσιάστηκε στην εθνική τηλεόραση και το ραδιόφωνο.