Seleeni voidaan luokitella automaatiotyökaluksi, joka helpottaa tietojen kaapimista HTML-verkkosivuilta web-kaavinnan suorittamiseen google chromea käyttämällä.
Tässä opetusohjelmassa opit:
Mitä tietojen kaavinta on seleenillä?
Kuinka valmistella Excel-makro ennen tietojen kaavintaa Seleniumilla?
Kuinka avata Google Chrome VBA: n avulla?
Kuinka avata verkkosivusto Google Chromessa VBA: n avulla?
Kuinka kaapata tietoja verkkosivustolta VBA: n avulla?
Kuinka valmistella Excel-makro ennen tietojen kaavintaa Seleniumilla?
On olemassa tiettyjä edellytyksiä, jotka on suoritettava Excel-makrotiedostolle, ennen kuin pääset tietojen kaavintaprosessiin Excelissä.
Nämä edellytykset ovat seuraavat: -
Vaihe 1) Avaa Excel-pohjainen makro ja käytä Excelin kehittäjävaihtoehtoa.
Vaihe 2) Valitse Visual Basic -vaihtoehto Kehittäjä-valintanauhasta.
Vaihe 3) Aseta uusi moduuli.
Vaihe 4) Alusta uusi alirutiini ja nimeä se testiksi2.
Alatesti 2 ()Lopeta ala
Seuraavat olisivat moduulin tulokset: -
Vaihe 5) Käytä viittausvaihtoehtoa työkalu-välilehdessä ja viittaa Selenium-tyyppiseen kirjastoon. Seuraaviin kirjastoihin on viitattava moduuliin, koska se auttaa avaamaan google chromen ja helpottaa makrokoodausten kehittämistä.
Nyt Excel-tiedosto on valmis olemaan vuorovaikutuksessa Internet Explorerin kanssa. Seuraavat vaiheet olisi sisällyttää makrokomentosarja, joka helpottaisi tietojen kaapimista HTML-muodossa.
Kuinka avata Google Chrome VBA: n avulla?
Tässä on vaihe Google Chromen avaamiseksi VBA: n avulla
Vaihe 1) Ilmoita ja alusta muuttujat alirutiinissa alla olevan kuvan mukaisesti
Vaihe 2) Avaa google chrome seleenillä ja VBA: lla kirjoittamalla driver.start "chrome" ja painamalla F5 .
Seuraava olisi koodi.
Alatesti 2 ()Hämärä ohjain uutena verkkoajurinaHimmennä rivit, cc, sarake C kokonaislukunaDriver.start "Chrome"Application.Wait Now + Timevalue ("00:00:20")Lopeta ala
Moduuli johtaisi seuraavasti: -
Kuinka avata verkkosivusto Google Chromessa VBA: n avulla?
Kun pääset Google Chromeen VBA: n avulla, seuraava askel olisi sisällyttää verkkosivuston käyttö VBA: n avulla. Tämän helpottaa get-toiminto, jossa URL-osoitteen on välitettävä kaksoislainausmerkkeinä attribuutissa.
Noudata seuraavia ohjeita näytöllä
Moduuli näyttää seuraavalta: -
Suorita makro painamalla F5.
Seuraava verkkosivu avautuu google chromessa, kuten näytetään
Alatesti 2 ()Hämärä ohjain uutena verkkoajurinaHimmennä rivit, cc, sarake C kokonaislukunaDriver.start "Chrome"Driver.get "http://demo.guru99.com/test/web-table-element.php"Application.Wait Now + Timevalue ("00:00:20")Lopeta ala
Nyt excel-makro on valmis kaavintatehtävien suorittamiseen. Seuraavassa vaiheessa näytetään, kuinka tiedot voidaan saada käyttämällä seleeniä ja VBA: ta.
Kuinka kaapata tietoja verkkosivustolta VBA: n avulla?
Oletetaan, että päiväkauppias haluaa käyttää verkkosivuston tietoja päivittäin. Joka kerta, kun elinkeinonharjoittaja painaa napsautuspainiketta, sen pitäisi vetää markkinatiedot automaattisesti Exceliin.
Yllä olevalta verkkosivustolta olisi tarpeen tarkastaa elementti ja tarkkailla tietojen rakennetta. Pääset alla olevaan HTML-lähdekoodiin painamalla Ctrl + Vaihto + I
Yritys
Ryhmä
Esisulku (Rs)
Nykyinen hinta (Rs)
% muutos
Lähdekoodi olisi seuraava: -
Kuten voidaan nähdä, että data on strukturoitu yhtenä HTML-taulukkona. Siksi kokonaisen datan vetämiseksi HTML-taulukosta se vaatii makron suunnittelua, joka vetää HTML-taulukon otsikkotiedot ja vastaavat taulukoon liittyvät tiedot. Suorita seuraavat tehtävät näytöllä: -
Vaihe 1) Määritä for for -silmukka, joka kulkee HTML-otsikkotietojen läpi kokoelmana. Seleeniohjaimen on löydettävä HTML-taulukon otsikkotiedot. Tätä varten käytämme FindElementByClass () - ja FindElementByTag () -menetelmiä tehtävän suorittamiseen näytetyllä tavalla
VBA-moduuli näyttäisi seuraavalta: -
Alatesti 2 ()Hämärä ohjain uutena WebDriverinaHimmennä rowc, cc, sarake C kokonaislukunarivi = 2Application.ScreenUpdating = Vääräohjain. Käynnistä "kromi"driver.Get "http://demo.guru99.com/test/web-table-element.php"Jokaiselle ohjaimelle.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Jokaista t: tä varten Etsi etsinnätByTag ("th")Sheet2.Cells (1, cc) .Arvo = t.Textcc = cc + 1Seuraava tSeuraava th
Vaihe 2) Seuraavaksi seleeni-ohjain etsii taulukon tiedot samanlaisella lähestymistavalla, kuten edellä mainittiin. Sinun on kirjoitettava seuraava koodi: -
Alatesti 2 ()Hämärä ohjain uutena WebDriverinaHimmennä rowc, cc, sarake C kokonaislukunarivi = 2Application.ScreenUpdating = Vääräohjain. Käynnistä "kromi"driver.Get "http://demo.guru99.com/test/web-table-element.php"Jokaiselle ohjaimelle.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Jokaista t: tä varten Etsi etsinnätByTag ("th")Sheet2.Cells (1, cc) .Arvo = t.Textcc = cc + 1Seuraava tSeuraava thJokaiselle tr In -ohjaimelle.FindElementByClass ("dataTable"). FindElementByTag ("tbody"). FindElementsByTag ("tr")sarake C = 1Kullekin td: lle.Tr.FindElementsByTag ("td")Sheet2.Cells (rowc, column C) .Arvo = td.Textsarake C = sarake C + 1Seuraava tdrowc = rowc + 1Seuraava trApplication.Wait Now + TimeValue ("00:00:20")End Sub
VBA-moduuli näyttäisi seuraavalta: -
Excel voidaan alustaa Excel-taulukon Range-määritteen tai Excel-taulukon solujen attribuutin avulla. VBA-komentosarjan monimutkaisuuden vähentämiseksi kokoelmatiedot alustetaan työkirjassa olevan taulukon 2 Excel-solujen määritteeseen. Lisäksi teksti-attribuutti auttaa saamaan tekstitiedot HTML-tunnisteen alle.
Alatesti 2 ()Hämärä ohjain uutena WebDriverinaHimmennä rowc, cc, sarake C kokonaislukunarivi = 2Application.ScreenUpdating = Vääräohjain. Käynnistä "kromi"driver.Get "http://demo.guru99.com/test/web-table-element.php"Jokaiselle ohjaimelle.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Jokaista t: tä varten Etsi etsinnätByTag ("th")Sheet2.Cells (1, cc) .Arvo = t.Textcc = cc + 1Seuraava tSeuraava thJokaiselle tr In -ohjaimelle.FindElementByClass ("dataTable"). FindElementByTag ("tbody"). FindElementsByTag ("tr")sarake C = 1Kullekin td: lle.Tr.FindElementsByTag ("td")Sheet2.Cells (rowc, column C) .Arvo = td.Textsarake C = sarake C + 1Seuraava tdrowc = rowc + 1Seuraava trApplication.Wait Now + TimeValue ("00:00:20")End Sub
VBA-moduuli näyttäisi seuraavalta: -
Vaihe 3) Kun makrokomentosarja on valmis, välitä ja määritä aliohjelma Excel-painikkeeksi ja poistu VBA-moduulista. Merkitse painike päivityksenä tai sopivana nimenä, joka siihen voidaan alustaa. Tässä esimerkissä painike alustetaan päivityksenä.
Vaihe 4) Paina päivityspainiketta saadaksesi alla mainitun tuloksen
Vaihe 5) Vertaa Excelin tuloksia Google Chromen tuloksiin
Yhteenveto:
Seleeni voidaan luokitella automaatiotyökaluksi, joka helpottaa tietojen kaapimista HTML-verkkosivuilta web-kaavinnan suorittamiseen google chromea käyttämällä.
Internetin kaavinta tulee suorittaa huolellisesti.
Tietojen poistaminen on yleensä verkkosivuston ehtojen vastaista.
Kun kaavinta tapahtuu seleenin kautta, se tarjoaa useita selaintukia.
Toisin sanoen kaavin voi suorittaa samanlaisia tehtäviä kaapimalla myös Firefoxin, Internet Explorerin kautta.