Kako automatizirati Firefox ili Chrome s Excelom VBA i selenijem

  • Peter Holmes
  • 0
  • 3346
  • 355
Oglas

Ključ automatizacije čini stvari brže i jednostavnije nego što ste ikada prije radili. Pa što ti treba dugo vremena za raditi? Koji biste dio svog posla željeli automatizirati?

Što se tiče produktivnosti, Excel je najčešći alat koji ljudi koriste za stvari poput organiziranja financija, upravljanja projektima 10 Snažnih predložaka za upravljanje projektima u Excelu za praćenje 10 Snažnih predložaka za upravljanje projektima u Excelu za praćenje Besplatni predlošci za upravljanje projektima su najbolji. Nabavite ove ključne predloške proračunskih tablica Microsoft Excel za praćenje bilo kojeg projekta. i odredite prioritete pomoću Excel i Google zadataka za stvaranje najboljeg alata za upravljanje ciljevima ikada Koristite Excel i Google zadatke za stvaranje najboljeg alata za upravljanje ciljevima ikada, počeo sam shvaćati da radim vrlo naporno, ali ako me netko pita Da li smatram ili ne radim na većoj svrsi, morao bih reći da to zapravo ne znam ... Prošli tjedan sam opisao kako automatizirati IE pomoću VBA za automatizaciju sesija Internet Explorer-a iz proračunske tablice programa Excel pomoću VBA za automatizaciju sesija preglednika Internet Explorer iz proračunske tablice Excela. Njegova integracija u Windows omogućuje kontrolu Internet Explorera na brojne iznenađujuće načine pomoću Visual Basic za Skripta aplikacija (VBA) iz bilo koje aplikacije koja je podržava, kao što su Word, Outlook ili Excel. postavljanjem skupina URL-ova u Excel listovima, a zatim pomoću IE objekta u sustavu Windows za automatizaciju pokretanja skupina URL-ova izravno iz programa Excel.

Slijedom tog članka, mnogi su se čitatelji pitali kako to učiniti u Firefoxu ili Chromeu. Budući da ni Firefox ni Chrome nemaju sličan objekt uključen u sustav Windows koji se može koristiti za VBA automatizaciju, izvođenje iste vrste akcija na ostalim preglednicima zahtijeva dodatni korak. Taj je korak instalacija Selenium VBA - Windows COM omota za Selenium.

Omogućuje vam pozive iz bilo koje aplikacije koja podržava VBA kako biste otvorili preglednik - ne samo IE - i kontrolirali sesiju preglednika. To je moćan alat za automatizaciju koji se toliko često koristi da mnogi popularni dobavljači preglednika uključuju Selenium kao izvorni dio svog preglednika. Koristite ga u vašim automatizacijskim programima sigurno će podržavati i godine koje dolaze.

Automatizirajte Firefox i Chrome sa Selenilom

Prije nego što započnete s ovim projektom, morat ćete preuzeti i instalirati omot Selenium VBA. Zatim, baš kao što sam govorio u članku o automatizaciji IE Korištenje VBA za automatizaciju Internet Explorer sesija iz Excelove proračunske tablice pomoću VBA za automatizaciju sesija preglednika Internet Explorer iz proračunske tablice Excel Njegova integracija u Windows omogućuje kontrolu Internet Explorera na brojne iznenađujuće načine pomoću Skripta Visual Basic za aplikacije (VBA) iz bilo koje aplikacije koja je podržava, kao što su Word, Outlook ili Excel. , da biste napisali bilo koji VBA u Excelu, morate prijeći u način dizajna i pogledati kôd. Ako to nikad niste učinili, jednostavno morate krenuti u taj “razvijač” stavku izbornika i kliknite na način dizajna. Klikni na “Umetnuti” pritisnite gumb ActiveX i negdje ga nacrtajte na svoj list. Nakon što to učinite, kliknite na gumb, a zatim kliknite na “Pogledaj kod”.

U prozoru za uređivanje koda, u donjem lijevom kutu, obavezno promijenite oba “Ime” i the “Naslov” da odražava ono za što se koristi gumb. U tom slučaju gumb će se otvoriti popis URL-ova koji ste naveli u proračunskoj tablici. U mom slučaju, upravo sam je nazvao cmdLoadURLs i napisao naslov “Učitajte URL-ove” (to se prikazuje na gumbu).

Zatim trebate omogućiti Selenium Wrapper klikom na izbornik Alati, a zatim kliknite na “Reference”, a zatim idite do pozvane reference “Biblioteka vrsta SeleniumWrapper”. Označite taj referentni okvir, a zatim kliknite U redu.

Sada ste spremni za početak pisanja koda za automatizaciju preglednika pomoću Selenium Wrapper!

Funkcionalnost selenskog omotača

Selenium VBA omot vam daje puno više funkcionalnosti nego što ću vam moći pokazati u ovom jednom članku. Možete vidjeti koliko je dostupno osim webDrivera definirajući objekt Selenium kao “Novi SeleniumWrapper”. Kada upišete razdoblje, padati će svi elementi vrsta objekata kojima možete upravljati, poput slika preglednika, PDF datoteka, tipkovnica na tipkovnici i više.

U ovom primjeru koda koristit će se WebDriver. Jednom kada u kôd koristite objekt Selenium WebDriver i upišete razdoblje, s njega će se pojaviti vrlo dugačak popis metoda i svojstava koje možete koristiti za automatizaciju web preglednika..

Može potrajati neko vrijeme dok naučite sve što je dostupno, ali Google može naći dobre primjere, iza uzoraka dostupnih na stranici Google Code. Nažalost, koliko ja znam, ne postoji jednostavan vodič za upotrebu Selenium-a, ali bio bih zahvalan svim čitateljima koji mogu pružiti bilo kakve resurse!

Pisanje vašeg VBA koda selena

U ovom primjeru, kao i u članku IE, stvorio sam popis URL-ova koje želim automatski otvoriti u Firefoxu. Tada sam stvorio gumb kako je opisano u prvom dijelu ovog članka.

Kôd iza gumba je jednostavan, ali objasnit ću što svaki odjeljak radi. Prvo, trebate pokrenuti Firefox aplikaciju. “selenium.start” metoda će to učiniti. Metode setTimeout i setImplicitWait nisu kritične, ali mogu spriječiti da se vaša aplikacija zauvijek zaključa ako preglednik ne reagira iz nekog razloga..

Dim selenium Kao novi SeleniumWrapper.WebDriver Dim FF kao objekt Dim intRowPosition As Integer Dim tipke Kao novi SeleniumWrapper.keys selenium.Start "firefox", "http://www.google.com" selenium.setTimeout ("120000") selen. setImplicitWait (5000) intRowPosition = 2 selena. Otvori listu1.Range ("A" i intRowPosition)

Posljednjih par redaka postavlja redak Excelovih podataka za čitanje (drugi redak, gdje je prvi URL pohranjen u proračunskoj tablici), a zatim izvodi “selenium.open” metoda za čitanje URL-a iz te proračunske tablice i otvaranje u Firefoxu.

Sljedeći odjeljak povećava pokazivač retka i čita sljedeći URL na popisu. Ako ćelija nije prazna, tada pomoću metode SendKeys pokreće novu karticu u Firefoxu, čita sljedeći URL iz te prodaje i otvara URL u toj novoj kartici.

intRowPosition = intRowPosition + 1 Dok Sheet1.Range ("A" & intRowPosition) vbNullString selenium.SendKeys ključevi. Kontrola i "t" selenium.Open Sheet1.Range ("A" & intRowPosition) intRowPosition = ItRowPosition = ItRowPosition = ItRowPosition =

Skripta će se kretati kroz cijeli popis dok svi URL-ovi ne budu otvoreni na vlastitim karticama. Evo preglednika nakon što je petlja prošla drugi put i otvorila MUO na novoj kartici.

Ako želite koristiti ovaj kôd za Chrome, sve što trebate je promijeniti liniju “selenium.Start “krijesnica”” do “krom” umjesto.

Sada stvorite vlastitu skriptu

Kao što sam gore spomenuo, najbolji način da naučite snagu Selenium Wrapper je upisati “selen” u kôdu pritisnite tipku i samo pregledajte dugačak popis dostupnih svojstava i metoda. Na primjer, pomoću svojstva .URL možete dobiti URL trenutno otvorene kartice u Firefoxu ili Chromeu.

Kao što vidite, možete učiniti mnogo više stvari koje nadilaze okvire ovog članka. Ali eksperimentirajte i zabavite se. Srećom, većina funkcija pojavit će se tekst pomoći koji vam pokazuje koje parametre svaka funkcija očekuje. To može uvelike pomoći kada se osmisli kako ga koristiti.

Koristite li VBA za automatizaciju računala? Jeste li ikad automatizirali sesije preglednika iz VBA? Podijelite vlastite savjete i iskustva s njima u odjeljku s komentarima u nastavku!




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.