Razuire Web cu VBA

ce este razuirea datelor?

razuirea datelor este tehnica care ajută la extragerea informațiilor dorite dintr-o pagină web HTML într-un fișier local prezent în mașina dvs. locală. În mod normal, un fișier local ar putea corespunde unui fișier excel, fișier word sau pentru a spune orice aplicație Microsoft office. Ajută la canalizarea informațiilor critice de pe pagina web.

razuirea datelor devine simplă atunci când lucrați zilnic la un proiect bazat pe cercetare, iar un astfel de proiect depinde pur și simplu de internet și de site-ul web. Pentru a ilustra în continuare acest subiect, să luăm exemplul unui comerciant de zi care rulează o macrocomandă excel pentru extragerea informațiilor de piață de pe un site web de finanțare într-o foaie excel folosind VBA.

în acest tutorial, veți învăța:

  • ce este razuirea datelor?
  • cum să pregătiți Excel Macro înainte de a efectua razuirea datelor utilizând Internet explorer?
  • cum se deschide Internet Explorer folosind Excel VBA?
  • cum se deschide site-ul web în Internet explorer folosind VBA?
  • cum să razi informații de pe site-ul folosind VBA?

cum să pregătiți Excel Macro înainte de a efectua razuirea datelor utilizând Internet explorer?

există anumite condiții prealabile care trebuie efectuate pe fișierul macro excel înainte de a intra în procesul de razuire a datelor în excel.

aceste cerințe preliminare sunt după cum urmează: –

Pasul 1) Deschideți o macrocomandă bazată pe Excel și accesați opțiunea dezvoltator din excel.

Pasul 2) Selectați opțiunea Visual Basic sub panglica dezvoltatorului.

Pasul 3) Introduceți un nou modul.

Pasul 4) inițializați o nouă subrutină

Sub test()End sub

modulul ar rezulta după cum urmează: –

Pasul 5) accesați opțiunea de referință din fila instrument și referința Microsoft HTML Object Library și Microsoft internet control.

următoarele fișiere trebuie să fie referite la modul, deoarece ajută la deschiderea Internet explorer și facilitează dezvoltarea scripturilor macro.

acum, fișierul Excel este gata să interacționeze cu Internet explorer. Următorul pas ar fi încorporarea scripturilor macro care ar facilita razuirea datelor în HTML.

cum se deschide Internet Explorer folosind Excel VBA?

Pasul 1) inițializați variabila din subrutine așa cum se afișează mai jos

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

Pasul 2) pentru a deschide internet explorer folosind VBA, scrieți adică. vizibil = adevărat și apăsați F5.

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

modulul ar arăta după cum urmează: –

cum se deschide site-ul web în Internet explorer folosind VBA?

aici, sunt pași pentru a deschide site-ul în Internet exploatator folosind VBA

Pasul 1) Odată ce sunt capabili de a accesa Internet explorer folosind Excel VBA, următorul pas ar încorpora accesarea unui site web folosind VBA. Acest lucru facilitat de naviga atribut, în care URL-ul trebuie să treacă ca ghilimele duble în atributul. Urmați pașii următori așa cum este afișat.

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

Pasul 2) – apăsați F5 pentru a executa macrocomanda. Următoarea pagină web va fi deschisă așa cum este afișată

acum, macro-ul excel este gata în ceea ce privește efectuarea funcțiilor de răzuire. Următorul pas ar afișa modul în care informațiile pot fi extrase din Internet explorer folosind VBA.

cum să razi informații de pe site-ul folosind VBA?

să presupunem că traderul de zi dorește să acceseze zilnic datele de pe site. De fiecare dată când comerciantul zi Apasă faceți clic pe butonul, acesta ar trebui să trage automat datele de piață în excel.

de pe site-ul de mai sus, ar fi necesar să inspectați un element și să observați modul în care sunt structurate datele.

Pasul 1) Accesați codul sursă de mai jos HTML apăsând control + Shift + i

<table class="datatable"><thead><tr><th>Company</th><th>Group</th><th>Pre Close (Rs)</th><th>Current Price (Rs)</th><th>% Change</th></tr>

codul sursă ar fi după cum urmează: –

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

după cum se poate observa că datele sunt structurate ca un singur tabel HTML. Prin urmare, pentru a extrage date întregi din tabelul html, ar fi nevoie de proiectarea macro-ului care colectează datele sub forma unei colecții.

colecția va fi apoi lipită în excel. Pentru a obține, rezultatele dorite efectuați pașii menționați mai jos – –

Pasul 2) inițializați documentul Html în subrutină

modulul VBA ar arăta după cum urmează – –

Pasul 3) inițializați elementul de colecție prezent în documentul HTML

modulul VBA ar arăta după cum urmează: –

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")

Pasul 4) inițializați celulele foii excel cu ajutorul buclei imbricate așa cum se arată

modulul VBA ar arăta după cum urmează: –

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")

excel poate fi inițializat folosind atributul range al foii excel sau prin atributul cells al foii excel. Pentru a reduce complexitatea scriptului VBA, datele de colectare sunt inițializate în atributul excel cells din foaia 1 prezentă în registrul de lucru.

odată ce scriptul macro este gata, treceți și atribuiți subrutina la butonul excel și ieșiți din modulul VBA. Etichetați butonul ca reîmprospătare sau orice nume adecvat care ar putea fi inițializat la acesta. Pentru acest exemplu, butonul este inițializat ca o reîmprospătare.

Pasul 5) Apăsați butonul refresh pentru a obține ieșirea menționată mai jos

Pasul 6) Comparați rezultatele în excel cu rezultatele internet explorer

rezumat:

  • razuirea datelor permite utilizatorului să extragă doar informațiile pe care le dorește utilizatorul.
  • răzuirea poate fi efectuată utilizând internet explorer.
  • procesul de razuire este mai lent în cazul internet explorer; cu toate acestea, oferă utilizatorului rezultatele dorite.
  • răzuirea trebuie efectuată cu atenție și precauție absolută, deoarece poate dăuna și prăbuși sistemul utilizat pentru răzuire.

Leave a Reply

Adresa ta de email nu va fi publicată.