Webes kaparás a VBA segítségével

Tartalomjegyzék:

Anonim

Mi az adatkaparás?

Az adatgyűjtés az a technika, amely elősegíti a kívánt információk kinyerését egy HTML weboldalról a helyi gépen található helyi fájlba. Normális esetben egy helyi fájl megfelelhet egy Excel fájlnak, word fájlnak vagy bármely Microsoft Office alkalmazásnak. Segít a kritikus információk csatornázásában a weboldalról.

Az adatgyűjtés egyszerűvé válik, ha egy kutatáson alapuló projekten dolgoznak napi rendszerességgel, és egy ilyen projekt pusztán az internet és a webhely függvénye. A téma további szemléltetése érdekében vegyünk példát egy olyan napos kereskedőre, aki egy excel makrót vezet, hogy a VBA segítségével a pénzügyi információkat egy pénzügyi webhelyről egy excel lapra húzza.

Ebben az oktatóanyagban megtudhatja:

  • Mi az adatkaparás?
  • Hogyan készítsük el az Excel makrót, mielőtt végrehajtanánk az adatgyűjtést az Internet Explorer használatával?
  • Hogyan nyitható meg az Internet Explorer az Excel VBA használatával?
  • Hogyan nyitható meg a Webhely az Internet Explorerben 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 végrehajtanánk az adatgyűjtést az Internet Explorer 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áljon egy új alprogramot

Sub test()End sub

A modul a következőket eredményezné: -

5. lépés: Nyissa meg a referencia opciót az eszköz fül alatt, és hivatkozjon a Microsoft HTML Object Library és a Microsoft Internet vezérlésére.

A következő fájlokra kell hivatkozni a modulra, mivel ez segíti az Internet Explorer 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és makroszkriptek beépítése lenne, amelyek megkönnyítik az adatok HTML-be való lekaparását.

Hogyan nyitható meg az Internet Explorer az Excel VBA használatával?

1. lépés: Inicializálja a változót az alprogramokban az alábbiak szerint

Sub test()Dim ie As New InternetExplorerDim doc As New HTMLDocument

2. lépés: Az Internet Explorer VBA használatával történő megnyitásához írja be az ie visible = true parancsot, és nyomja meg az F5 billentyűt .

Sub test()Dim ie As New InternetExplorerDim doc As New HTMLDocumentIe.visible=true

A modul a következőképpen néz ki: -

Hogyan nyitható meg a Webhely az Internet Explorerben a VBA használatával?

Itt találhatók a Webhely megnyitása az Internet exploer programban VBA használatával

1. lépés: Miután hozzáférhet az Internet Explorerhez az Excel VBA használatával, a következő lépés magában foglalja a weboldal VBA használatát. Ezt elősegíti a Navigálás attribútum, ahol az URL-nek kettős idézőjelként kell átadnia az attribútumot. Kövesse a következő lépéseket a megjelenítéskor.

Sub test()Dim, ie As New InternetExplorerDim doc As New HTMLDocumentDim ecoll As Objectie.Visible = Trueie.navigate"http://demo.guru99.com/test/web-table-element.php"DoDoEventsLoop Until ie.readyState = READYSTATE_COMPLETE

2. lépés) - Nyomja meg az F5 billentyűt a makró végrehajtásához. A következő weboldal megjelenésként nyílik meg

Most az excel makró készen áll a kaparási funkciók végrehajtására. A következő lépés megmutatja, hogyan lehet kinyerni az információkat az Internet Explorerből a VBA használatá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.

1. lépés : A Control + Shift + I billentyűkombinációval nyissa meg az alábbi HTML forráskódot

A forráskód a következő lenne: -

Sub test()Dim ie As New InternetExplorerDim doc As New HTMLDocumentDim ecoll As Objectie.Visible = Trueie.navigate "http://demo.guru99.com/test/web-table-element.php"DoDoEventsLoop Until ie.readyState = READYSTATE_COMPLETESet doc = ie.document

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, olyan makrót kell megtervezni, amely az adatokat gyűjtemény formájában gyűjti össze.

A gyűjteményt ezután beillesztenék az excelbe. A kívánt eredmények eléréséhez hajtsa végre az alábbi lépéseket:

2. lépés: Inicializálja a Html dokumentumot az alprogramban

A VBA modul a következőképpen néz ki: -

3. lépés: Inicializálja a HTML dokumentumban található gyűjtemény elemet

A VBA modul a következőképpen néz ki: -

Sub test()Dim ie As New InternetExplorerDim doc As New HTMLDocumentDim ecoll As Objectie.Visible = Trueie.navigate "http://demo.guru99.com/test/web-table-element.php"DoDoEventsLoop Until ie.readyState = READYSTATE_COMPLETESet doc = ie.documentSet ecoll = doc.getElementsByTagName("table")

4. lépés: Inicializálja az excel lap cellákat beágyazott hurok segítségével az ábra szerint

A VBA modul a következőképpen néz ki: -

Sub test()Dim ie As New InternetExplorerDim doc As New HTMLDocumentDim ecoll As Objectie.Visible = Trueie.navigate "http://demo.guru99.com/test/web-table-element.php"DoDoEventsLoop Until ie.readyState = READYSTATE_COMPLETESet doc = ie.documentSet ecoll = doc.getElementsByTagName("table")

Az excel inicializálható az excel lap tartomány attribútumával vagy az excel lap 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ó 1. lap excel cellák attribútumához inicializáljuk.

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.

5. lépés: Nyomja meg a Frissítés gombot az alább említett kimenet megszerzéséhez

6. lépés: Hasonlítsa össze az Excel eredményeit az Internet Explorer eredményeivel

Összegzés:

  • Az adatgyűjtés lehetővé teszi a felhasználó számára, hogy csak azokat az információkat kaparja ki, amelyeket a felhasználó szeretne.
  • A kaparás az Internet Explorer segítségével végezhető el.
  • Az Internet Explorer esetében a kaparás folyamata lassabb; ugyanakkor a kívánt eredményt eljuttatja a felhasználóhoz.
  • A kaparást teljes körültekintéssel és körültekintéssel kell végrehajtani, mivel ez károsíthatja és összeomolhatja a kaparáshoz használt rendszert.
CompanyGroupPre Close (Rs)Current Price (Rs)% Change