Hvordan scraper man med Excel?

Forfatter :

Reagerer:

Kommentar

Med Excel kan man scrape websider uden at installere noget eksternt værktøj. Power Query er den nemmeste metode: Det kræver kun et par klik for at udtræk en HTML-tabel og importere den direkte til et regneark. For mere komplekse sider er VBA tager over og giver dig mere kontrol.

Her er en vejledning i, hvordan man udfører webscraping i begge tilfælde.

Excel-grænseflade, der viser udtræk af data fra internettet via Power Query
Det tager kun få trin at overføre data fra internettet til Excel. ©Christina for Alucare.fr

Hvordan kan man hente data fra en webside til Excel ved hjælp af Power Query?

Power Query er et værktøj, der er integreret i Microsoft Excel (også kaldet Webforespørgsel (i visse versioner), som bruges til at importere, bearbejde og analysere webdata fra forskellige kilder. Konkret kan du:

  • At komme sig webdata fra en hjemmeside, en fil eller en database.
  • Rens eller bearbejd disse data, inden de analyseres.
  • Indlæs data automatisk i et regneark, så dit team kan arbejde med opdaterede oplysninger.

Det er den mest enkel for at hente data fra internettet til Excel uden at skrive en eneste linje kode. Her er de fire trin, du skal følge.

Trin 1: Åbn importværktøjet

I Microsoft Excel, gå ind i’fanen »Data«, og klik derefter på Hent data og til sidst på Fra internettet.

Åbn et nyt Excel-ark, gå til »Data«, derefter »Hent data« og derefter »Fra internettet«.
Åbn et nyt Excel-ark, gå til “Data”, derefter “Hent data” og så “Fra internettet”. ©Christina for Alucare.fr

Trin 2: Indsæt webadressen

Indsæt’URL den hjemmeside eller den side, der indeholder de oplysninger, du vil hente, og klik derefter på »Bekræft«.

Indsæt URL-adressen til webstedet eller målsiden i Power Query.
Indsæt adressen på webstedet eller målsiden. ©Christina for Alucare.fr

Trin 3: Navigering i "Navigatoren"

Der åbnes et vindue, der viser registrerede tabeller. Power Query identificerer automatisk de tabeller, der findes i sidens kode. Vælg den tabel, du er interesseret i, for eksempel en HTML-tabel, for at få et rent datasæt.

Vælg tabellen eller de data, der er fundet, i Power Query-navigatoren.
Vælg tabellen eller dataene. ©Christina for Alucare.fr

Trin 4: Indlæs dataene i et Excel-ark

Klik på Oplad for at importere dataene direkte ind i dit regneark. Du får hurtigt en overskuelig tabel, der er klar til analyse.

Klik på »Indlæs« for at importere data fra internettet til Excel-arket.
Indlæs for at importere dataene. ©Christina for Alucare.fr

For at hente de seneste oplysninger fra hjemmesiden skal du foretage en Højreklik i din tabel, og klik derefter på Opdater. På den måde holder du dataene opdaterede næsten i realtid.

Det, du skal vide, før du går i gang

Power Query fungerer kun med statiske HTML-sider. Hvis tabellen ikke vises i browseren, skyldes det ofte, at siden indlæser sit indhold i JavaScript : websteder på React, Angular, eller data, der vises, når man ruller ned.

I dette tilfælde har du to muligheder. Du kan målrette direkte mod’API som hjemmesiden kalder i baggrunden, og som ofte kan ses i browserens udviklerværktøjer. Ellers kan du gå videre til metoden VBA eller et dedikeret værktøj som Octoparse.

Hvordan scraper man med VBA og Excel-makroer?

VBA (Visual Basic for Applications) er det programmeringssprog, der er integreret i Microsoft Excel og andre programmer Microsoft Office. Det giver dig mulighed for at:

  • Automatisere gentagne opgaver i Excel.
  • Opret makroer, små programmer, der kører direkte i din fil.
  • Åbn en webside, udtræk tekst eller tabeller, og indsæt dem derefter automatisk i Excel.

Det er mere teknisk end Power Query, men du vinder en avanceret kontrol : navigation mellem flere sider, administration af en forbindelse med autentificering, indsamling af data, som Power Query ikke registrerer.

Her er et eksempel på en makro, der henter en HTML-tabel fra en side:

Sub ScraperTableau()

 ' Deklaration af objekter
    Dim http As Object, html As Object
    Dim tableau As Object, ligne As Object, cellule As Object
    Dim i As Long, j As Long

 ' URL til den side, der skal scrapes
    Dim url As String
    url = "https://www.w3schools.com/html/html_tables.asp"
 
 ' Oprettelse af et HTTP-objekt
    Set http = CreateObject("MSXML2.XMLHTTP")
    http.Open "GET", url, False
    http.Send

 ' Indlæs HTML-indholdet
    Set html = CreateObject("HTMLFile")
    html.body.innerHTML = http.responseText

    ' Udvælgelse af den første fundne tabel
    Set tabel = html.getElementsByTagName("table")(0)

 ' Gennemløb af rækker og kolonner
    For i = 0 To tabel.Rows.Length - 1
        For j = 0 To tabel.Rows(i).Cells.Length - 1
 Cells(i + 1, j + 1).Value = tabel.Rows(i).Cells(j).innerText
 Next j
    Next i

End Sub

Forklaring af koden:

  • Dim http As Object, html As Object : opretter objekter til håndtering af webforespørgslen og HTML-indholdet.
  • url = "..." : URL'en til den hjemmeside, der skal scrapes.
  • http.Open "GET", url, False : sender en HTTP-anmodning for at indlæse siden.
  • html.body.innerHTML = http.responseText : indsætter HTML-svaret i et objekt, der kan redigeres.
  • Set tabel = html.getElementsByTagName("table")(0) : retter sig mod første tabel af siden.
  • Dobbelt spænde For i … For j … : læser hver celle i tabellen og indsætter den i den tilsvarende celle i Excel.

Vær opmærksom på en vigtig begrænsning. Denne kode sender en enkel HTTP-anmodning via MSXML2.XMLHTTP og henter udelukkende den statiske HTML, som serveren returnerer. Den kan ikke køre JavaScript på en side. På et moderne websted, der indlæser sine data dynamisk, vil du få et tomt resultat. I sådanne tilfælde skal man bruge en rigtig browser, for eksempel med Selenium og Python.

Hvornår skal man bruge VBA til web-scraping:

  • På den sider, der kræver godkendelse (brugernavn og adgangskode).
  • Når du skal hente flere tabeller på samme side eller skifte mellem flere sider.
  • Til automatisere daglig dataindsamling ved hjælp af en knap eller en programmeret udløser.

Power Query vs. VBA: hvilken metode skal man vælge til at scrape med Excel?

Valget mellem Power Query og VBA Det afhænger af dine behov og af, hvor kompleks den pågældende hjemmeside er. Her er en kort sammenligning, der kan hjælpe dig med at træffe en beslutning.

Kriterier Power Query VBA
Brugervenlighed Meget enkel, ingen kode Kompleks, kræver kode
Fleksibilitet Begrænset til data tabelformede Meget fleksibel, fuld kontrol
Læringskurve Svag Høj
Sidetype Sider HTML kun statiske HTTP-anmodninger, sider med autentificering
Anvendelsestilfælde Udvinding hurtig af tabeller Avanceret automatisering, specifikke behov

I praksis, Power Query er stadig det bedste valg for begyndere og de fleste almindelige opgaver: Det tager kun fire trin at importere data fra internettet til Microsoft Excel, uden at skrive en eneste linje kode.

Vælg VBA kun når du har et specifikt behov, som Power Query omfatter ikke: komplekse sider, brugergodkendelse, avanceret automatisering. For alt andet, Power Query vil give dig tid.

Hvilke alternativer til Excel findes der til webscraping?

Excel er stadig praktisk, men det når hurtigt sine grænser, når der er tale om store mængder data fra internettet. Til et mere ambitiøst projekt tager andre værktøjer over. Nogle af dem fungerer uden kode, mens andre kræver lidt programmering. Du finder også nogle gratis værktøjer alt efter dine behov.

No-code- og low-code-værktøjer

Disse værktøjer gør det muligt at indsamling af webdata uden at skrive en eneste linje kode. Du konfigurerer dit mål via en visuel brugergrænseflade og eksporterer derefter resultatet til CSV-format for at åbne den direkte i Excel. Det er nyttigt til markedsføringsovervågning eller overvågning af forskellige internetkilder.

  • Bright Data : en professionel og kraftfuld løsning, der er udviklet til at imødekomme en virksomheds store behov.
  • Octoparse a webscraper uden kodning med en enkel brugerflade, perfekt til begyndere, og med mulighed for at eksportere til Excel med blot et par klik.

Bright Data-brugergrænseflade, infrastruktur til indsamling af webdata til AI og BI
Bright Data er en ubegrænset webdatainfrastruktur til AI og BI. ©Christina for Alucare.fr

Programmeringssprog

Et sprog som Python giver dig mulighed for at scrape hjemmesider på en meget fleksibel måde. Du kan navigere på flere sider automatisk, administrere websteder med brugergodkendelse og sikre en dataindsamling, som ikke kan gennemføres med Power Query. Det er især nyttigt for en virksomhed, der følger med i konkurrenterne eller analyserer sine distributionsnetværk.

Ved et komplekst projekt bør du vælge Webscraping med Python og BeautifulSoup. Det er den mest effektive metode, når dataindsamlingen bliver regelmæssig eller omfattende.

Her er en kort sammenligning af de løsninger, der overgår Excel i kraft, fleksibilitet og brugervenlighed.

Værktøj / Sprog Koste Kompleksitet Magtfulde
Excel (Power Query) Afhænger af pakken Office Let Grundlæggende
Excel (VBA) Gratis (med en licens) Office) Betyde Betyde
Bright Data Månedligt abonnement Betyde Meget høj
Octoparse Månedligt abonnement Let Betyde
Python (BeautifulSoup, Scrapy) Ledig Høj Meget høj

Hvilke værktøjer og ressourcer kan hjælpe med at scrape med Excel?

For at gå et skridt videre end Power Query og VBA kan du kombinere Excel med Tredjepartsværktøjer. Disse scrapers eksporterer dataene til CSV, et format, som Excel åbner direkte. På den måde får du et rent datasæt, der er klar til analyse, uden at skulle skrive en eneste linje kode.

Her er to nyttige muligheder, afhængigt af dine behov:

  • EN Udvidelse til webscraping til din browser, f.eks. Web ScraperChrome Hvor Firefox. Det er den perfekte løsning til at hente data fra en hjemmeside med blot et par klik, uden at skulle installere noget omfattende.
  • det web scraping med Python. Denne metode kræver lidt kode, men den håndterer komplekse sider at Power Query registrerer ikke.

Konkret skal du vælge den’udvidelse til et engangsbehov, der skal dækkes hurtigt. Gå videre til Python så snart du ønsker at automatisere en regelmæssig dataindsamling eller behandle en stor mængde information.

Er webscraping lovligt?

det web scraping er lovligt under visse betingelser. Det afhænger helt af hjemmesidens brugsbetingelser, den intellektuelle ejendomsret og den måde, du bruger de indsamlede data på.

I praksis er offentlige data kan som regel gendannes. Men så snart du rører ved personlig data (navn, e-mail, profil), skal du indtaste i feltet RGPD, selvom disse oplysninger er offentligt tilgængelige på internettet.

Inden du scraper en hjemmeside, skal du tjekke to enkle ting:

  • Filen robots.txt på webstedet, der angiver, hvilke sider robotterne har tilladelse til eller ikke har tilladelse til at gennemgå.
  • Det Betingelser for brug, som i nogle tilfælde udtrykkeligt forbyder automatiseret dataindsamling.

For at bevare roen bør du nøjes med ikke-personlige oplysninger og følg webstedets rytme, så det ikke bliver overbelastet.

👍Din mening
Artiklen er informativ
Artiklen er objektiv
Artiklen besvarer mit spørgsmål
Indholdet er opdateret
🔍 Fandt du nogen fejl? Fortæl os hvor!

Kan du lide det? Så del den!

Dette indhold er oprindeligt på fransk (Se redaktøren lige nedenfor). Den er blevet oversat og korrekturlæst på forskellige sprog ved hjælp af Deepl og/eller Google Translate API for at kunne tilbyde hjælp i så mange lande som muligt. Denne oversættelse koster os flere tusinde euro om måneden. Hvis den ikke er 100 % perfekt, så skriv en kommentar, så vi kan rette den. Hvis du er interesseret i at læse korrektur og forbedre kvaliteten af oversatte artikler, så send os en e-mail ved hjælp af kontaktformularen!
Vi sætter pris på din feedback, så vi kan forbedre vores indhold. Hvis du vil foreslå forbedringer, kan du bruge vores kontaktformular eller skrive en kommentar nedenfor. Dine kommentarer hjælper os altid med at forbedre kvaliteten af vores hjemmeside Alucare.fr


Alucare er et uafhængigt medie. Støt os ved at tilføje os til dine Google News-favoritter:

Skriv en kommentar på diskussionsforummet