Web Scraping med VBA

Hva Er Data Skraping?

data skraping er teknikken som hjelper i utvinning av ønsket informasjon FRA EN HTML-webside til en lokal fil til stede i din lokale maskin. Normalt kan en lokal fil tilsvare en excel-fil, word-fil, eller å si Noe Microsoft office-program. Det hjelper i kanalisering kritisk informasjon fra nettsiden.

dataskrapingen blir enkel når man daglig arbeider med et forskningsbasert prosjekt, og et slikt prosjekt er rent avhengig av internett og nettside. For å illustrere emnet ytterligere, la oss ta eksemplet på en dagshandler som kjører en excel-makro for å trekke markedsinformasjon fra et finansnettsted til et excel-ark ved HJELP av VBA.

i denne opplæringen vil du lære:

  • Hva Er Data Skraping?
  • hvordan forberede Excel Makro før du Utfører Data Skraping Ved Hjelp Av Internet explorer?
  • Slik Åpner Du Internet Explorer ved Hjelp Av Excel VBA?
  • Slik Åpner Du Nettsted I Internet explorer ved HJELP AV VBA?
  • Hvordan Skrape informasjon Fra Nettstedet ved HJELP AV VBA?

hvordan forberede Excel Makro før du Utfører Data Skraping Ved Hjelp Av Internet explorer?

det er visse forutsetninger som må utføres på excel-makrofilen før du kommer inn i prosessen med dataskraping i excel.

disse forutsetningene er som følger – –

Trinn 1) Åpne En Excel – Basert Makro og få tilgang til utvikleralternativet i excel.

Trinn 2) Velg Visual Basic alternativet Under Utvikler bånd.

Trinn 3) Sett inn en ny modul.

Trinn 4) Initialiser en ny subrutine

Sub test()End sub

modulen vil resultere som følger: –

Trinn 5) Få tilgang til referansealternativet under kategorien verktøy og referanse Microsoft HTML Object Library Og Microsoft internet control.

følgende filer skal refereres til modulen, da det hjelper med å åpne internet explorer og letter utviklingen av makroskripting.

Nå Er Excel-filen klar til å samhandle med internet explorer. Det neste trinnet vil være å innlemme makroskript som vil lette dataskraping I HTML.

Slik Åpner Du Internet Explorer ved Hjelp Av Excel VBA?

Trinn 1) Initialiser variabelen i delrutinene som vist nedenfor

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

Trinn 2) for å åpne internet explorer ved HJELP AV VBA, skriv dvs. synlig=sann og trykk F5.

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

modulen vil se slik ut: –

Slik Åpner Du Et Nettsted I Internet explorer ved HJELP AV VBA?

her er trinn For Å Åpne Nettsted I Internet exploer ved HJELP AV VBA

Trinn 1) når du har tilgang til internet explorer ved Hjelp Av Excel VBA, vil neste trinn innlemme tilgangen til et nettsted ved HJELP AV VBA. Dette tilrettelagt Av Naviger Attributt, hvor URL HAR å passere som doble anførselstegn i attributtet. Følg følgende trinn som vist.

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

Trinn 2) – Trykk F5 for å utføre makroen. Følgende webside vil bli åpnet som vist

nå er excel-makroen klar med hensyn til å utføre skrapingsfunksjonene. Det neste trinnet vil vise hvordan informasjonen kan hentes fra internet explorer ved HJELP AV VBA.

Hvordan Skrape informasjon Fra Nettstedet ved HJELP AV VBA?

Anta at dagshandleren ønsker å få tilgang til dataene fra nettstedet på daglig basis. Hver gang dagshandleren trykker på klikk-knappen, bør den automatisk trekke markedsdataene inn i excel.

fra ovennevnte nettsted vil det være nødvendig å inspisere et element og observere hvordan dataene er strukturert.

Trinn 1) Få tilgang til HTML-kildekoden nedenfor ved å trykke på 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>

kildekoden vil være som følger: –

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

som det kan ses at dataene er strukturert som et ENKELT HTML-Bord. Derfor, for å trekke hele data fra html-tabellen, ville det kreve utforming av makro som samler dataene i form av en samling.

samlingen vil da bli limt inn i excel. For å oppnå, utfører de ønskede resultatene de nedenfor nevnte trinnene – –

Trinn 2) Initialiser Html-dokumentet i underrutinen

VBA-modulen vil se ut som følger – –

Trinn 3) Initialiser samlingselementet som er tilstede i HTML-dokumentet

VBA-modulen vil se ut som følger: –

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

Trinn 4) Initialiser excel-arkcellene ved hjelp av nestet sløyfe som vist

VBA-modulen vil se ut som følger: –

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 kan initialiseres ved hjelp av områdeattributtet til excel-arket eller gjennom celleattributtet til excel-arket. Hvis DU vil redusere kompleksiteten TIL vba-skriptet, initialiseres innsamlingsdataene til excel-celleattributtet for ark 1 i arbeidsboken.

når makroskriptet er klart, pass og tilordne subrutinen til excel-knappen og avslutt modulen TIL VBA. Merk knappen som oppdater eller et passende navn som kan initialiseres til det. I dette eksemplet initialiseres knappen som en oppdatering.

Trinn 5) Trykk på oppdateringsknappen for å få den nedenfor nevnte utgangen

Trinn 6) Sammenlign resultatene i excel med resultatene fra internet explorer

Sammendrag:

  • data skraping tillater brukeren å skrape ut bare den informasjonen som brukeren ønsker.
  • Skraping kan utføres ved hjelp av internet explorer.
  • skrapeprosessen er tregere når det gjelder internet explorer; den leverer imidlertid de ønskede resultatene til brukeren.
  • skrapingen skal utføres med absolutt forsiktighet og forsiktighet, da det kan skade og krasje systemet som brukes til skraping.

Leave a Reply

Din e-postadresse vil ikke bli publisert.