Hirdetés

Az automatizálás kulcsa az, hogy gyorsabban és könnyebben csinálj dolgokat, mint valaha. Szóval miért tart sokáig? A munkaterhelés melyik részét szeretné automatizálni?

A termelékenység szempontjából az Excel a leggyakoribb eszköz, amelyet az emberek használnak például pénzügyek megszervezésére, projektek irányításaés a célok prioritása. A múlt héten leírtam, hogyan kell automatizálja az IE-t azáltal, hogy létrehozza az URL-csoportokat az Excel lapokban, majd az IE objektumot használja a Windows rendszerben az URL-csoportok indításának automatizálásához közvetlenül az Excel belsejéből.

Ezt a cikket követően sok olvasó megkérdezte, hogyan lehet ugyanezt tenni a Firefox vagy a Chrome böngészőben. Mivel sem a Firefox, sem a Chrome nem tartalmaz hasonló objektumot a Windowshoz, amely felhasználható a VBA automatizálására, az ugyanazon műveletek végrehajtása ezen a többi böngészőnél extra lépést igényel. Ez a lépés a Szelén VBA - a Windows COM burkolója a szelénhez.

Ez lehetővé teszi a VBA-t támogató bármely alkalmazás hívásainak végrehajtását egy böngésző - nem csak az IE - megnyitásához és a böngésző-munkamenet vezérléséhez. Ez egy nagy teljesítményű automatizálási eszköz, amelyet annyira gyakran használnak, hogy sok népszerű böngésző-gyártó beépíti a szelént böngészőjének natív részévé. Az automatizálási alkalmazásokban való felhasználása minden bizonnyal az elkövetkező években támogatott lesz.

A Firefox és a Chrome automatizálása a szelénnel

Mielőtt elkezdené a projektet, le kell töltenie és telepítenie kell a Selén VBA csomagolást. Aztán, ahogy arról a az IE automatizálása, bármilyen VBA írásához Excelben, tervezési módba kell lépnie, és meg kell néznie a kódot. Ha még soha nem csinálta ezt, akkor csak be kell lépnie a „Fejlesztő” menüpontba, és kattintson a Tervezési mód elemre. Kattintson az „Beszúrás” gombra, kattintson az ActiveX gombra, és húzza rá valahol a lapjára. Miután ezt megtette, kattintson a gombra, majd a „Kód megtekintése” elemre.

selenium1

A kódszerkesztő ablak bal alsó sarkában feltétlenül változtassa meg a „Név” és a „Felirat” elemet, hogy tükrözze, hogy mi a gomb. Ebben az esetben a gomb megnyílik az URL-ek listája, amelyet a táblázatban felsorolt. Az én esetemben csak cmdLoadURL-nek hívtam, és a feliratot „URL-ek betöltése” -re tettem (ez jelenik meg a gombbal).

selenium1b

Ezután engedélyeznie kell a Selén Wrapper alkalmazást az Eszközök menüre kattintva, majd a „Referenciák” elemre, majd keresse meg a „SeleniumWrapper Type Library” hivatkozást. Jelölje be ezt a referenciamezőt, majd kattintson az OK gombra.

selenium2

Most már készen áll arra, hogy elindítsa a böngésző automatizálási kódját a Selén Wrapper segítségével!

A szeléncsomagoló működése

A Sellen VBA Wrapper sokkal több funkcionalitást nyújt Önnek, mint amit ebben a cikkben tudok mutatni. Megállapíthatja, hogy mennyi elérhető a WebDriver-en túl, ha a Selén objektumot „Új SeleniumWrapper” -ként határozza meg. Amikor beírja az időszakot, az leejti az ellenőrizhető objektumtípusok összes elemét, például a böngésző képeit, a PDF fájlokat, a billentyűzetet és a többi.

selenium3

Ez a példakód a WebDriver használatát fogja használni. Miután felhasználta a Selenium WebDriver objektumot a kódjába, és beírja a periódust, az egy nagyon hosszú listát sorol le azokról a módszerekről és tulajdonságokról, amelyeket felhasználhat a böngésző automatizálásához.

selenium4

A rendelkezésre álló mindent megtanulhat egy ideig, de a Google a (z) oldalon található minták mögött néhány jó példát mutathat fel Google Code oldal. Sajnos, amennyire tudom, nincs egyértelmű útmutató a szelén használatához, ám hálás lennék minden olvasónak, aki bármilyen forrást megadhatna!

VBA szelén kódjának írása

Ebben a példában, akárcsak az IE cikkben, felállítottam azon URL-ek listáját, amelyeket automatikusan meg akarok nyitni a Firefoxban. Ezután elkészítettem a gombot a cikk első részében leírtak szerint.

selenium5

A gomb mögött található kód egyértelmű, de meg fogom magyarázni, hogy az egyes szakaszok mit tesznek. Először el kell indítania a Firefox alkalmazást. A „szelén.start” módszer ezt fogja megtenni. A setTimeout és a setImplicitWait módszerek nem kritikusak, de megakadályozzák az alkalmazás végleges zárolását, ha a böngésző valamilyen okból nem válaszol.

Halvány szelén mint új szeléncsomagoló. WebDriver. Dim FF mint objektum. Dim intRowPosition egész számként. A tompított gombok, mint az Új SeleniumWrapper.szelek a szelént. Indítsa el a "firefox", " https://www.google.com" selenium.setTimeout ("120000") selenium.setImplicitWait (5000) intRowPosition = 2. szelén. Open Sheet1.Range ("A" és intRowPosition)

Az utolsó pár sor beállítja az Excel adatsorának olvashatóságát (a második sor, ahol az első URL a táblázatkezelő), majd elvégzi a „selenium.open” metódust, hogy elolvassa az URL-t a táblázatból, és megnyissa azt a Firefox.

selenium7

A következő kódrész növeli a sor mutatót, és beolvassa a lista következő URL-jét. Ha a cella nem üres, akkor a SendKeys módszer használatával elindít egy új lapot a Firefoxban, beolvassa az eladott termék következő URL-jét, és megnyitja az URL-t az új lapon.

intRowPosition = intRowPosition + 1, míg a Sheet1.Range ("A" és intRowPosition) <> vbNullString szelén. SendKeys kulcsok. Kontroll és "t" szelén. Nyissa meg a1.lapot.Range ("A" és intRowPosition) intRowPosition = intRowPosition + 1. Wend Set IE = Semmi

A szkript végigfut a teljes listán, amíg az összes URL meg nem nyitva van a saját lapján. Itt van a böngésző, miután a hurok másodszor átment, és új lapon nyitotta meg a MUO-t.

selenium8

Ha ezt a kódot szeretné használni a Chrome-hoz, akkor csak annyit kell tennie, hogy megváltoztatja a „szelén. Indítsa el a „firefox” ”kifejezést„ króm ”-ra.

Most hozza létre saját szkriptjét

Mint fentebb említettem, a szeléncsomagoló erejének megtanulásának legjobb módja a „szelén” beírása. a kódodban nyomja meg az időszakot, és keresse meg az elérhető tulajdonságok nagyon hosszú listáját és mód. Például a .URL tulajdonság használatával megszerezheti a jelenleg nyitott lap URL-jét a Firefoxban vagy a Chrome-ban.

selenium9

Mint láthatja, még sok más dolgot megtehet, amelyek túlmutatnak a cikk hatályán. De kísérletezz és érezd jól magad. Szerencsére a legtöbb funkció megjelenik a felbukkanó súgószövegben, amely megmutatja, hogy az egyes funkciók milyen paramétereket várnak el. Ez sokat segíthet, ha kitaláljuk, hogyan kell használni.

A következő szkriptprojekt számára, mi a helyzet saját egyszerű alkalmazás létrehozása a VBA segítségével Hogyan készítheti el saját egyszerű alkalmazását a VBA segítségévelSzeretné tudni, hogyan készítheti el saját VBA alkalmazását a problémák megoldására? Ezeket a tippeket használhatja saját VBA szoftverének elkészítéséhez. Olvass tovább ?

Ryan BSc villamosmérnöki diplomával rendelkezik. 13 évet dolgozott az automatizálás területén, 5 évet az informatika területén, és most Apps Engineer. A MakeUseOf volt vezérigazgatója, az adatmegjelenítéssel foglalkozó nemzeti konferenciákon beszélt, és szerepelt a nemzeti televízióban és rádióban.