[HowTo] Web scraping; niet alleen voor growth hackers

How to "Web scraping" door Patric van Maaren

Web scraping is hot en niet alleen voor startups of growth hackers. Handige (online) marketeers gebruiken het om sites te analyseren, marktonderzoek te doen of leads te verzamelen.

Wat is web scraping?

Web scraping is de extractie van informatie uit websites of applicaties van derden. Met speciale scripts of tools wordt ongestructureerde data van een website omgezet naar een gestructureerde opslag. Dit gebeurt in de vorm van een bestand of database. Sommige tools kunnen ook API’s maken, zodat je de data uit de bron ook in andere applicaties kunt opvragen.

Welke toepassingen zijn er?

Een opvallend voorbeeld is de lead generation van een amerikaanse makelaarsfirma: zij scrapen de overlijdensberichten van online kranten om daarna de familie te benaderen en hulp te bieden bij de verkoop van het huis.

Marketing teams bij grote bedrijven maken ook al veel gebruik van web scraping technieken. Denk hierbij aan:

  • Prijsvergelijking.
  • Ranking zoekresultaten.
  • Contactlijsten leads/influencers.
  • Klantreviews op sites van derden.
  • Wijzigingen catalogus of product details concurrent.
  • Analyse van engagement op blogposts.

Mag het eigenlijk wel?

De discussie wordt sinds lange tijd gevoerd, een bekend voorbeeld is de vete tussen Funda en Jaap.nl. Vaak is het kopiëren van informatie een inbreuk op auteurs- en/of databankrecht.

Gebruik je de data als input voor research waarmee je nieuwe informatie produceert, mag het vaak wel. Maar dat hangt ook af van de gebruiksvoorwaarden van de website. Kortom een grijs gebied waar je bij twijfel een gespecialiseerde jurist bij moet raadplegen.

Hoe pas je dit op Social Media toe?

Platformen, zoals Facebook, Twitter of LinkedIn, hebben een eigen API waarmee je data kunt uitlezen. Vooral bij blogs, fora en community websites die dat niet hebben kan web scraping een uitkomst zijn.

Wil je weten welke content het meest gelezen wordt, welke bezoeker de meeste comments schrijft, of wil je een lijst van populaire vloggers op YouTube? Dat kan eenvoudig, als je gebruikt maakt van de juiste tool.

Welke tools zijn er?

Vroeger moest je veel zelf programmeren, maar met deze nieuwe tools is het eenvoudiger geworden. Ik noem er een paar die gratis te gebruiken of te proberen zijn:

 

How To: Web scraping met Import.io

Om eenvoudig te beginnen heb ik in een aantal stappen een extractie gemaakt van de artikelen op nieuws.marketing.

1. Maak een account aan op Import.io, installeer en open de desktop applicatie.

2. Klik op New

3. Kies Start Magic

4. Voer de URL in van de webpagina die je wilt scrapen, http://www.socialmediasocialmedia.nl/strategie_nieuws/

5. Klik op Extract Data

Je krijgt nu een overzicht van alle data gestructureerd in kolommen. In deze kolommen vind je bijvoorbeeld de titel van het artikel, het aantal views en de auteur.

 

webscraping_1

 

6. Klik op Save API om de definitie van de extractie op te slaan en opnieuw te gebruiken

7. In het volgende scherm selecteer je bij “How would you like to use the API?” de optie Bulk Extract

8. Open een spreadsheet en maak even snel een samenvoeging van het hoofdbestanddeel van de url van overzichtspagina (http://www.socialmediasocialmedia.nl/strategie_nieuws/page/) en de nummers 2 tot en met … (de laatste overzichtspagina)

 

Google Sheets

 

9. Knip en plak de eerste webpagina http://www.socialmediasocialmedia.nl/strategie_nieuws/ en de gehele lijst uit de spreadsheet voor overzichtpaginas 2 t/m … in het veld voor extractie

 

Import.io bulk extract

 

10. Klik op Run Queries en wacht op het resultaat

11. Klik daarna op Export, en vervolgens Spreadsheet om de file op te slaan als csv bestand

 

Import.io extract

 

12. Open het csv-bestand in je spreadsheet.

De resultaten

Vervolgens schoon je de data een beetje op en haal je daar met een Pivot table eenvoudig wat cijfers uit, zoals de top 3 auteurs van 2015 naar aantal artikelen en totaal aantal views. Wil je zelf met de data aan de slag, maak dan een kopie van deze spreadsheet.

De tussenstand van 19 december 2015:

  1. Redactie 434 posts –  7,6 miljoen views.
  2. Patrick Petersen 320 posts – 5,5 miljoen views.
  3. Social Recruiter 227 posts- 3,6 miljoen views.

Geïnspireerd?

Wil je zelf met de data aan de slag, maak dan een kopie van deze spreadsheet. Want er is nog veel meer informatie uit te halen. En wat als je deze data combineert met een extractie van de inhoud van elk artikel of het aantal comments? Daar ga ik graag een volgende keer dieper op in…

Nu de kerstvakantie is begonnen, is dit misschien het uitgelezen moment om je eigen ideeën uit te proberen tussen de familiebezoeken door. Ik wens je dan ook veel succes met experimenteren en natuurlijk hele fijne feestdagen!