Meteen naar de inhoud

Hoe Google-zoekresultaten te schrapen

Google is de populairste zoekmachine ter wereld. Wanneer mensen een vraag hebben of informatie nodig hebben, is hun eerste instinct vaak om het te ‘googlen’. Dit maakt Google een ongelooflijk waardevolle gegevensbron. Het kunnen extraheren en analyseren van informatie uit de zoekresultaten van Google opent veel mogelijkheden. In deze uitgebreide gids bespreken we alles wat u moet weten over het schrapen van Google-zoekresultaten.

Overzicht van het schrapen van Google-zoekresultaten

Het schrapen van Google-zoekresultaten verwijst naar de geautomatiseerde extractie van gegevens uit de zoekresultatenpagina's van Google (SERP's). Dit wordt gedaan door een programma te schrijven dat Google ondervraagt, de SERP laadt, de HTML-inhoud parseert en de gewenste gegevens extraheert.

Enkele voorbeelden van gegevens die van Google kunnen worden geschraapt zijn:

  • Trefwoorden gezocht
  • Zoekposities
  • Titels, beschrijvingen en URL's van resultaten
  • Advertentietekst en landingspagina's
  • Verwante zoekopdrachten
  • Uitgelichte fragmenten
  • Kennispanelen
  • Recensies en beoordelingen
  • Productprijzen
  • Zoekresultaten voor afbeeldingen

Deze gegevens kunnen vervolgens worden gestructureerd en geëxporteerd om voor verschillende toepassingen te worden gebruikt:

  • SEO analyse – Volg trefwoordrangschikkingen in de loop van de tijd, analyseer de inhoud van pagina’s met de hoogste ranking, vind zoekwoordmogelijkheden.

  • Marktonderzoek – Verzamel informatie over concurrenten, volg trends in de sector en analyseer het zoekgedrag van consumenten.

  • Lead generation – Bedrijfsvermeldingen en contactgegevens extraheren.

  • Data analytics – Begrijp de volumes van zoekopdrachten, analyseer demografische gegevens en intentie van zoekresultaten.

  • Inhoudsoptimalisatie – Identificeer hiaten in de inhoud, inspireer nieuwe inhoudsideeën, verbeter SEO op de pagina.

  • Prijsbewaking – Volg productprijzen en prijsveranderingen in de loop van de tijd.

Zoals u kunt zien, zijn er veel waardevolle toepassingen voor Google-scrapers in verschillende sectoren. Vervolgens kijken we of Google scrapen is toegestaan.

Een belangrijke vraag die rijst is of het schrapen van Google legaal is. Het korte antwoord is ja, is het schrapen van Google-zoekresultaten volkomen legaal.

De zoekresultaten van Google worden beschouwd als openbare gegevens. De 爬虫- en robots.txt-bestanden maken het schrapen van Google mogelijk voor niet-commerciële gebruiksscenario's. Zolang u zich houdt aan de Servicevoorwaarden van Google en vermijdt dat u in een zeer buitensporig tempo scrapt, is het extraheren van gegevens uit de zoekpagina's van Google niet illegaal.

Hoewel het schrapen van Google zelf legaal is, moet u echter voorzichtig zijn met de manier waarop u de geëxtraheerde gegevens gebruikt. U moet voorkomen dat auteursrechtelijk beschermde inhoud, zoals fragmenten van nieuwsartikelen of afbeeldingen, opnieuw wordt gepubliceerd. Persoonlijk identificeerbare informatie in de zoekresultaten mag ook niet zonder toestemming worden bewaard of opnieuw worden gepubliceerd.

Het is raadzaam om een ​​advocaat te raadplegen als u van plan bent geschrapte Google-gegevens voor commerciële doeleinden te gebruiken. Maar voor de meeste persoonlijke analyses, onderzoeken en SEO-toepassingen brengt het schrapen van de zoekresultaten van Google geen grote juridische risico's met zich mee.

Hoe Google Zoeken werkt

Om te begrijpen hoe u Google effectief kunt schrapen, helpt het om te begrijpen hoe Google Zoeken onder de motorkap werkt.

Wanneer een gebruiker een zoekopdracht op Google uitvoert, wordt de zoekopdracht naar de servers van Google verzonden. Eigen algoritmen analyseren de zoekopdracht om de bedoeling van de gebruiker te bepalen. De algoritmen doorzoeken de enorme index van webpagina's en andere inhoud van Google om de meest relevante resultaten te vinden.

Twee belangrijke componenten van de zoekalgoritmen van Google zijn:

  • PageRank – Het gepatenteerde systeem van Google voor het rangschikken van webpagina's op basis van het aantal andere sites dat ernaar linkt, in de veronderstelling dat meer links gelijk staat aan meer vertrouwen en autoriteit.

  • Latente semantische indexering – Technieken die relaties tussen termen en concepten analyseren in plaats van alleen maar trefwoorden te matchen. Hierdoor kan Google betekenis en context interpreteren om relevantere resultaten te retourneren.

Er wordt ook rekening gehouden met honderden andere rangschikkingssignalen, waaronder paginasnelheid, mobielvriendelijkheid, lokale intentie, personalisatie en meer.

Google is voortdurend bezig met het aanpassen van zijn algoritmen via grote updates zoals Hummingbird en Panda. Als u de rankingfactoren van Google begrijpt, kunt u betere zoekopdrachten opstellen en zoekresultatengegevens interpreteren.

Hoe Google SERP's te schrapen

Nu we de basisbeginselen hebben besproken, gaan we dieper in op de details van het bouwen van een Google-scraper. We doorlopen de belangrijkste stappen:

1. Stel een script in

We hebben een scripttaal nodig zoals Python, JavaScript (Node.js), Ruby, PHP etc. om onze scraper te coderen. Ik zal voorbeelden geven in Python, omdat dit een van de meest populaire keuzes is.

Eerst importeren we de benodigde bibliotheken:

import requests
from bs4 import BeautifulSoup
import csv
  • requests – voor het verzenden van HTTP-verzoeken naar Google
  • BeautifulSoup – voor het parseren van HTML en het extraheren van gegevens
  • csv – voor het exporteren van geschraapte gegevens naar CSV-formaat

2. Maak zoekopdrachten

We moeten beslissen welke trefwoorden of zoekopdrachten we willen targeten. Bijvoorbeeld:

keywords = ["web scraping", "seo", "google search engine"] 

We kunnen deze trefwoorden ook uit een bestand of database laden.

3. Stuur verzoeken naar Google

Vervolgens maken we voor elk zoekwoord een zoek-URL en sturen we een verzoek om de HTML op te halen:

for keyword in keywords:
  url = f"https://www.google.com/search?q={keyword}"

  headers = {"User-Agent": "Mozilla/5.0"} 

  response = requests.get(url, headers=headers)

  html = response.text

We simuleren de headers van een echte browser om botdetectie te voorkomen. De HTML-code html variabele bevat nu de onbewerkte broncode van de Google-resultatenpagina.

4. Resultaten analyseren met BeautifulSoup

We kunnen BeautifulSoup gebruiken om de HTML te analyseren en de gewenste gegevens te extraheren:

soup = BeautifulSoup(html, "html.parser")

# Extract search result titles
results = soup.select(".tF2Cxc") 
titles = [r.text for r in results]

# Extract search result URLs
links = [r.a["href"] for r in results]

De CSS-selectors en parseerlogica variëren op basis van de gegevens die moeten worden geëxtraheerd. Mogelijk moeten we ook de paginering afhandelen voor aanvullende resultaten.

5. Gegevens opslaan

Ten slotte kunnen we de geschraapte gegevens opslaan in een CSV-bestand:

with open("google_results.csv", "w") as f:
  writer = csv.writer(f)
  writer.writerow(["Keyword", "Title", "URL"])

  for keyword, title, url in zip(keywords, titles, links):
    writer.writerow([keyword, title, url])

De gegevens kunnen vervolgens voor analyse worden geopend in Excel of een andere spreadsheet-app.

Dit omvat de basislogica van het schrapen - er zou aanvullende code nodig zijn om proxy's, user-agents, nieuwe pogingen, paginering en robuustere parsering af te handelen. Er zijn ook veel Python-bibliotheken zoals Scrapy en Selenium die kunnen helpen bij het bouwen van meer geavanceerde scrapers.

Tools en services van Google Scraper

Het helemaal opnieuw schrijven van een schraper geeft u maximale flexibiliteit, maar vereist meer inspanning. Er zijn ook tools en services waarmee u Google-gegevens kunt extraheren met minimale code:

Apify – Biedt een kant-en-klaar Google SERP-scraper om titels, links, teksten en meer te extraheren. Voer gewoon trefwoorden in en configureer filters. Resultaten kunnen worden geëxporteerd naar CSV, Excel, enz.

ParseHub – Visuele webschraper waarmee u elementen kunt selecteren om gegevens uit Google-resultaten te extraheren zonder code te schrijven.

SchrapenBee – Scraper API en proxyservice die CAPTCHA's en blokkering afhandelt. Biedt Python-, Postman- en Zapier-integraties.

SchraapStorm – Beheerde scraping-service waarbij u URL’s indient om te scrapen en zij de verzameling van gegevens in API’s, databases, enz. afhandelen.

SchraperApi – Slimme proxy en roterende IP-oplossing ontworpen om Google te schrappen en blokkades te omzeilen. Codevoorbeelden verstrekt.

Deze crawlerservices kunnen u tijd en moeite besparen. Maar je offert wat aanpassingsvermogen op in plaats van het bouwen van je eigen schraper. Evalueer uw behoeften om te beslissen welke route u moet nemen.

Tips voor het effectief schrapen van Google

Hier zijn enkele praktische tips die u kunt volgen bij het scrapen van Google om de beste resultaten te krijgen:

  • Gebruik proxy's – Roteer verschillende IP-adressen om verzoeken te distribueren en blokkades te voorkomen. Consumentenproxydiensten zoals Luminati en Oxylabs bieden miljoenen IP's.

  • Willekeurige user-agents – Varieer bij elk verzoek de user-agent-string van de browser om menselijk gedrag na te bootsen. Lijsten met populaire user-agents zijn online te vinden.

  • Volume bewaken – Houd verzoeken onder de scrapinglimieten van Google om te voorkomen dat uw IP wordt gemarkeerd. Verdeel de werklast over de tijd en over meerdere IP's.

  • Probeer het opnieuw bij mislukkingen – Implementeer logica om mislukte aanvragen opnieuw te proberen en edge cases zoals captcha’s netjes af te handelen.

  • Zorgvuldig analyseren – Google verandert regelmatig de lay-outs, dus CSS-selectors en parseercode moeten dienovereenkomstig worden bijgewerkt.

  • Gehoorzaam ToS – Hergebruik geen aanzienlijke auteursrechtelijk beschermde inhoud, overmatig spammen van zoekopdrachten of een verkeerde voorstelling van gegevens.

  • Anonimiseer gegevens – Verwijder persoonlijk identificeerbare informatie uit de geschraapte resultaten.

  • Controleer robots.txt – Vermijd het schrapen van delen van Google die niet zijn toegestaan ​​door robots.txt, zoals zoeken naar afbeeldingen.

Met de juiste zorg en technieken kunnen gegevens met succes uit Google worden geschraapt zonder dat er grote problemen optreden.

Google Afbeeldingenzoekresultaten schrapen

Naast zoeken op internet biedt Google ook zoekresultaten voor afbeeldingen die kunnen worden geschraapt. Hier is een overzicht van hoe Google Image Scraping werkt:

  • Construeer URL's voor het zoeken naar afbeeldingen met de q parameter zoals https://www.google.com/search?q=kitten&tbm=isch.

  • De pagina bevat miniaturen van afbeeldingsresultaten die linken naar de volledige afbeeldingen wanneer erop wordt geklikt.

  • Schraap de afbeeldingstitels, miniaturen, volledige afbeeldings-URL's en andere metagegevens.

  • De volledige afbeeldingen kunnen worden gedownload om een ​​lokale kopie op te slaan.

  • Extra pagina's kunnen worden geschraapt door ze toe te voegen &ijn= met paginanummers naar de URL.

  • Beperk het downloaden van afbeeldingen tot een redelijk aantal en houd rekening met het auteursrecht. Download of herhost geen afbeeldingen van anderen zonder toestemming.

  • OCR-technieken kunnen mogelijk ook tekstgegevens uit gescande documenten en afbeeldingen extraheren.

Er zijn uitdagingen bij het schrapen van Google Afbeeldingen, zoals frequente lay-outwijzigingen en botdetectie. Maar de gegevens kunnen krachtige toepassingen voor reverse image search en visuele gegevensanalyse mogelijk maken.

Andere Google-producten schrapen

De behandelde technieken zijn voornamelijk van toepassing op het schrapen van de organische zoekresultaten op internet. Maar veel andere Google-eigenschappen zoals Maps, Shopping, Flights, Books, Scholar etc. kunnen ook worden geschraapt:

  • Google Maps – Extraheer bedrijfsvermeldingen, recensies, kenmerken zoals adressen en telefoonnummers.

  • Google Shopping – Ontvang productvermeldingen, afbeeldingen, prijzen en verkopersinformatie.

  • Vluchten naar Google – Schraap vluchtprijzen, dienstregelingen en gerelateerde gegevens.

  • Google Nieuws – Verzamel de koppen, fragmenten, sentimenten en metadata van nieuwsartikelen.

  • Google Scholar – Academische paper-metadata, citaties, gerelateerde artikelen, etc.

  • Google Patenten – Details van gepubliceerde patenten.

Elk product heeft zijn eigen ingewikkeldheden, maar de algemene methodologie van opvragen, ophalen, parseren en opslaan blijft van toepassing. Dezelfde tips als het gebruik van proxy's en beperkingsverzoeken zijn van toepassing. Breid verder uit dan alleen zoeken op internet en haal gegevens uit alle tools van Google.

Risico's en uitdagingen bij het schrapen van Google

Hoewel Google-scraping waardevolle gegevens kan opleveren, zijn er enkele kanttekeningen:

  • Juridische onzekerheid – Schraapwetten blijven dubbelzinnig. Bepaald gebruik van gegevens kan nog steeds aanleiding geven tot bezorgdheid.

  • Het blokkeren van – Bij agressief scrapen bestaat het risico dat IP-adressen worden verbannen door de antibotsystemen van Google.

  • Data-integriteit – Veranderingen in de markup van Google kunnen scrapers kapot maken en de gegevenskwaliteit beïnvloeden.

  • Complexe vragen – Het kan voor scrapers moeilijk zijn om complexe zoekintenties te interpreteren.

  • Gepersonaliseerde resultaten – Geschrapte SERP’s komen mogelijk niet overeen met de resultaten van andere gebruikers vanwege personalisatie.

  • Pagina laadtijden – Het parseren van volledig dynamische SPA's zoals Google Flights voegt meer complexiteit toe.

  • Datalimieten – Google beperkt het aantal dagelijkse zoekopdrachten om misbruik tegen te gaan.

Door de scrape-percentages zorgvuldig te beheren en proxy's te gebruiken, kunnen de meeste van deze potentiële problemen worden vermeden. Maar houd rekening met de beperkingen bij het ontwerpen van uw scraperarchitectuur.

Google-zoekresultaten in andere talen schrapen

De voorbeelden tot nu toe waren gericht op Google in het Engels. Maar de technieken werken net zo goed voor andere Google-landdomeinen:

  • Voor het Duitse Google gebruikt u google.de
  • Voor Spaanse Google gebruikt u google.es
  • Voor Franse Google gebruikt u google.fr
  • enz.

De querytaal kan worden beheerd door toe te voegen &lr=lang_code als &lr=es voor Spaans.

Lokale bedrijfsinformatie, recensies, kaarten en trends kunnen unieke inzichten bieden in internationale markten. Target tijdens het scrapen gewoon het juiste landdomein.

Moet u openbare scraping-API's gebruiken?

Sommige openbare API's en scrapingdiensten bieden ook toegang tot zoekmachinegegevens:

  • Bing Webzoekopdracht-API – Biedt een beperkt aantal gratis zoekopdrachten om Bing-resultaten te extraheren.

  • Google Custom Search-API (verouderd) – Hiermee kunt u een specifieke site of een reeks sites doorzoeken.

  • SchraperAPI – Pay-as-you-go proxy-API die sloopblokken omzeilt.

  • SerpApi – Betaalde API voor JSON-resultaten van Google, Bing, YouTube en anderen.

  • SchrapenBee – Wrapper API met proxy’s, CAPTCHA’s oplossen en residentiële IP’s.

Deze services kunnen een eenvoudigere optie bieden in vergelijking met het bouwen van uw eigen schraper. Maar ze brengen beperkingen met zich mee, zoals querylimieten, kosten en een gebrek aan volledige aanpassing. Vaak maken ze intern nog gebruik van scraperbots.

Voor volledige controle en flexibiliteit verdient het coderen van uw eigen schraper in de meeste gevallen de voorkeur. Maar API's kunnen handig zijn voor snelle projecten of eenmalige gegevensbehoeften.

Conclusie

Schraap naar hartenlust, maar dan wel verantwoord.

Tot slot kan het schrapen van Google en andere zoekmachines gegevens leveren om concurrentievoordeel te behalen en unieke inzichten te ontsluiten. Met een zorgvuldig ontwerp en verantwoord gebruik kunt u enorme waarde uit de resultaten van Google halen, terwijl u binnen de wettelijke grenzen blijft. Hopelijk gaf deze gids een uitgebreid overzicht van hoe je Google-SERP’s effectief kunt schrapen met behulp van Python, proxy’s, automatiseringsservices en meer.

Nu heb je de blauwdruk: ga aan de slag en schrap! Vergeet niet om het ethisch te doen als een goede webburger. Als je leuke ideeën of projecten bedenkt door Google te schrappen, horen we dat graag!

Doe mee aan het gesprek

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *