A szelén besorolható az automatizálási eszköz közé, amely megkönnyíti az információk lekaparását a HTML weboldalakról a webes kaparás elvégzéséhez a google chrome használatával.
Ebben az oktatóanyagban megtudhatja:
Mi az adatkaparás szelén alkalmazásával?
Hogyan készítsük el az Excel makrót, mielőtt az adatgyűjtést elvégeznénk a szelén használatával?
Hogyan nyitható meg a Google Chrome a VBA segítségével?
Hogyan nyitható meg weboldal a Google Chrome-ban a VBA használatával?
Hogyan lehet információkat kaparni a weboldalról a VBA használatával?
Hogyan készítsük el az Excel makrót, mielőtt az adatgyűjtést elvégeznénk a szelén használatával?
Bizonyos előfeltételeket kell teljesíteni az excel makrófájlon, mielőtt belevágnánk az excel adatainak lekérdezésébe.
Ezek az előfeltételek a következők:
1. lépés: Nyisson meg egy Excel-alapú makrót, és nyissa meg az excel fejlesztői opcióját.
2. lépés: Válassza a Visual Basic lehetőséget a Fejlesztői szalag alatt.
3. lépés: Helyezzen be egy új modult.
4. lépés: Inicializálja az új alprogramot, és nevezze el teszt2 néven.
2. teszt ()Vége al
A modul eredményei a következők: -
5. lépés: Nyissa meg a referencia opciót az eszköz fül alatt, és hivatkozjon a Selenium típusú könyvtárra. A következő könyvtárakra kell hivatkozni a modulra, mivel ez segíti a google chrome megnyitását és megkönnyíti a makró szkriptek fejlesztését.
Most az Excel fájl készen áll az Internet Explorer használatára. A következő lépések egy makroszkript beépítése lenne, amely megkönnyítené az adatok HTML-be való lekaparását.
Hogyan nyitható meg a Google Chrome a VBA segítségével?
Itt van a lépés a Google Chrome VBA használatával történő megnyitásához
1. lépés: Nyújtsa be és inicializálja a változókat az alprogramban az alábbiak szerint
2. teszt ()Dim driver mint új webdriverTompítsa a rowc, cc, C oszlopot egész számként
2. lépés: A Google Chrome megnyitásához a szelén és a VBA használatával írja be: driver.start "chrome", és nyomja meg az F5 billentyűt .
A következő lenne a kód.
2. teszt ()Dim driver mint új webdriverTompítsa a rowc, cc, C oszlopot egész számkéntDriver.start "Chrome"Application.Wait Now + Timevalue ("00:00:20")Vége al
A modul a következőket eredményezné: -
Hogyan nyitható meg weboldal a Google Chrome-ban a VBA használatával?
Miután hozzáférhet a google chrome-hoz a VBA használatával, a következő lépés az lenne, ha beépítené egy weboldal VBA használatát. Ezt megkönnyíti a get függvény, ahol az URL-nek dupla idézőjelként kell átadnia az attribútumot.
Kövesse a következő lépéseket a megjelenítéskor
A modul a következőképpen néz ki: -
Nyomja meg az F5 billentyűt a makró végrehajtásához.
A következő weboldal megjelenik a google chrome-ban
2. teszt ()Dim driver mint új webdriverTompítsa a rowc, cc, C oszlopot egész számkéntDriver.start "Chrome"Driver.get "http://demo.guru99.com/test/web-table-element.php"Application.Wait Now + Timevalue ("00:00:20")Vége al
Most az excel makró készen áll a kaparási feladatok végrehajtására. A következő lépés megmutatja, hogyan lehet kinyerni az információt a szelén és a VBA alkalmazásával.
Hogyan lehet információkat kaparni a weboldalról a VBA használatával?
Tegyük fel, hogy a napi kereskedő naponta szeretne hozzáférni a weboldal adataihoz. Minden alkalommal, amikor a kereskedő megnyomja a gombra való kattintást, automatikusan be kell húznia a piaci adatokat az excelbe.
A fenti weboldalról szükség lenne egy elem megvizsgálására és az adatok felépítésének megfigyelésére. A Control + Shift + I billentyűkombinációval érheti el az alábbi HTML forráskódot
Társaság
csoport
Előzárás (Rs)
Jelenlegi ára (Rs)
% változás
A forráskód a következő lenne: -
Mint látható, hogy az adatok egyetlen HTML táblaként vannak felépítve. Ezért ahhoz, hogy teljes adatokat lehessen kinyerni a HTML-táblából, meg kell tervezni egy makrót, amely a HTML-tábla fejléc-információit és a táblához társított megfelelő adatokat húzza ki. Végezze el a következő feladatokat a megjelenítés szerint: -
1. lépés: Formázzon egy for ciklust, amely gyűjteményként fut át a HTML fejléc információin. A szelén illesztőprogramnak meg kell találnia a HTML tábla fejléc információit. Ehhez a FindElementByClass () és a FindElementByTag () metódust alkalmazzuk a feladat megjelenítéséhez
A VBA modul a következőképpen néz ki: -
2. teszt ()Dim illesztőprogram, mint új WebDriverTompítsa a rowc, cc, C oszlopot egész számkéntrowc = 2Application.ScreenUpdating = Hamisdriver.Start "chrome" indításadriver.Get "http://demo.guru99.com/test/web-table-element.php"Minden egyes meghajtóhoz.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Minden egyes t-ben TalálatokByTag ("th")Sheet2.Cells (1, cc). Érték = t.Textcc = cc + 1Következő tKövetkező th
2. lépés) Ezután a szelén-meghajtó a fenti adatok alapján hasonló megközelítéssel keresse meg a táblázat adatait. A következő kódot kell megírnia: -
2. teszt ()Dim illesztőprogram, mint új WebDriverTompítsa a rowc, cc, C oszlopot egész számkéntrowc = 2Application.ScreenUpdating = Hamisdriver.Start "chrome" indításadriver.Get "http://demo.guru99.com/test/web-table-element.php"Minden egyes meghajtóhoz.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Minden egyes t-ben TalálatokByTag ("th")Sheet2.Cells (1, cc). Érték = t.Textcc = cc + 1Következő tKövetkező thMinden tr In meghajtóhoz.FindElementByClass ("dataTable"). FindElementByTag ("tbody"). FindElementsByTag ("tr")oszlopC = 1Minden td esetén a tr.FindElementsByTag ("td")Sheet2.Cells (rowc, C oszlop). Érték = td.TextoszlopC = oszlopC + 1Következő tdrowc = rowc + 1Következő trApplication.Wait Now + TimeValue ("00:00:20")End Sub
A vba modul a következőképpen néz ki: -
Az excel inicializálható az excel lap Range attribútumával vagy az excel cell cellák attribútumával. A VBA szkript bonyolultságának csökkentése érdekében a gyűjtési adatokat a munkafüzetben található 2. lap excel cellák attribútumához inicializáljuk. Ezenkívül a text attribútum segít abban, hogy a szöveges információk a HTML címkék alá kerüljenek.
2. teszt ()Dim illesztőprogram, mint új WebDriverTompítsa a rowc, cc, C oszlopot egész számkéntrowc = 2Application.ScreenUpdating = Hamisdriver.Start "chrome" indításadriver.Get "http://demo.guru99.com/test/web-table-element.php"Minden egyes meghajtóhoz.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Minden egyes t-ben TalálatokByTag ("th")Sheet2.Cells (1, cc). Érték = t.Textcc = cc + 1Következő tKövetkező thMinden tr In meghajtóhoz.FindElementByClass ("dataTable"). FindElementByTag ("tbody"). FindElementsByTag ("tr")oszlopC = 1Minden td esetén a tr.FindElementsByTag ("td")Sheet2.Cells (rowc, C oszlop). Érték = td.TextoszlopC = oszlopC + 1Következő tdrowc = rowc + 1Következő trApplication.Wait Now + TimeValue ("00:00:20")End Sub
A vba modul a következőképpen néz ki: -
3. lépés: Miután elkészült a makró szkript, adja át és rendelje hozzá az alprogramot az Excel gombhoz, és lépjen ki a VBA modulból. Jelölje meg a gombot frissítésként vagy bármilyen megfelelő névként, amelyet inicializálni lehetne. Ebben a példában a gombot inicializáljuk frissítésként.
4. lépés: Nyomja meg a Frissítés gombot az alább említett kimenet megszerzéséhez
5. lépés: Hasonlítsa össze az excel eredményeit a google chrome eredményeivel
Összegzés:
A szelén besorolható az automatizálási eszköz közé, amely megkönnyíti az információk lekaparását a HTML weboldalakról a webes kaparás elvégzéséhez a google chrome használatával.
Az interneten történő kaparást gondosan kell végrehajtani.
Rendszerint a weboldal feltételeivel ellentétes az információk kikészítése.
Ha a kaparás szelénen keresztül történik, akkor több böngésző támogatást kínál.
Más szavakkal, a lehúzó hasonló feladatokat tud végrehajtani, mint a Firefox, az Internet Explorer böngészése.