Scraping von Google-Suchergebnissen mit Python

Lesen Sie hier, wie Sie mit Python und den Bibliotheken Selenium und BeautifulSoup Googles Suchergebnisse einlesen und analysieren können, um wertvolle Daten zu extrahieren. [...]

Ob Sie ein eigenes LLM-Modell aufbauen oder Markteinblicke gewinnen möchten, ein Google-Scraper ist dafür unerlässlich. (c) stock.adobe.com/Павел Озарчук

Google enthält als eine der größten Suchmaschinen eine enorme Menge an wertvollen Daten, die für Unternehmen und Forscher von Interesse sind. Um jedoch effizient Google-Suchergebnisse zu scrapen, muss das Programm dafür robust, skalierbar und in der Lage sein, dynamische Veränderungen in Googles Struktur zu bewältigen.

Ob Sie ein eigenes LLM-Modell aufbauen oder Markteinblicke gewinnen möchten, ein Google-Scraper ist dafür unerlässlich. In einem Artikel zeigt Autor Manthan Koolwal, wie man einen Google-Suchergebnis-Scraper mit Python und der BeautifulSoup-Bibliothek erstellt.

Das Web-Scraping mit Python gehört 2025 zu den gefragtesten Fähigkeiten, da KI im Aufschwung ist. Um mit dem Scraping zu beginnen, müssen Sie sicherstellen, dass Python auf Ihrem Computer installiert ist und einige erforderliche Bibliotheken wie Selenium, BeautifulSoup und Pandas installiert sind.

Selenium wird verwendet, um den Google-Chrome-Browser zu automatisieren, während BeautifulSoup dazu dient, wichtige Daten aus den Roh-HTML-Daten zu extrahieren. Da JavaScript-Rendering erforderlich ist, kommt nicht ein einfacher Download einer Seite zum Zug, sondern Selenium. Das schafft die nötige Headless-Browserumgebung, die wie ein echter Benutzer funktioniert und die Seite aufruft. Danach können Sie die HTML-Daten mit BeautifulSoup parsen und die benötigten Informationen wie Titel, Links und Beschreibungen extrahieren.

Da Google eine Vielzahl von Anti-Scraping-Maßnahmen einsetzt, kann das einfache Scraping mit einem Standardansatz nicht skalierbar sein. Sie benötigen also fortgeschrittene Tools oder API-Dienste wie zum Beispiel Scrapingdog, die Proxy- und Header-Rotation übernehmen, um sicherzustellen, dass Sie nicht blockiert werden.

Das folgende Skript lädt die Seite in Selenium:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
import time
from bs4 import BeautifulSoup

# Set path to ChromeDriver (Replace this with the correct path)
CHROMEDRIVER_PATH = "D:/chromedriver.exe"  # Change this to match your file location

# Initialize WebDriver with Service
service = Service(CHROMEDRIVER_PATH)
options = webdriver.ChromeOptions()


options.add_argument("--window-size=1920,1080")  # Set window size
options.add_argument("--disable-blink-features=AutomationControlled")

driver = webdriver.Chrome(service=service, options=options)

# Open Google Search URL
search_url = "https://www.google.com/search?q=lead+generation+tools&oq=lead+generation+tools"

driver.get(search_url)

# Wait for the page to load
time.sleep(2)

page_html = driver.page_source
print(page_html)

Und die folgenden Zeilen Code holen Titel, Link und Beschreibung aus der Datei:

page_html = driver.page_source
obj={}
l=[]
soup = BeautifulSoup(page_html,'html.parser')

allData = soup.find("div",{"class":"dURPMd"}).find_all("div",{"class":"Ww4FFb"})
print(len(allData))
for i in range(0,len(allData)):
    try:
        obj["title"]=allData[i].find("h3").text
    except:
        obj["title"]=None

    try:
        obj["link"]=allData[i].find("a").get('href')
    except:
        obj["link"]=None

    try:
        obj["description"]=allData[i].find("div",{"class":"VwiC3b"}).text
    except:
        obj["description"]=None

    l.append(obj)
    obj={}



print(l)

Den vollständigen, englischsprachigen Artikel finden Sie hier.

* Tilman Börner schreibt für PCtipp.ch.


Mehr Artikel

News

Produktionsplanung 2026: Worauf es ankommt

Resilienz gilt als das neue Patentrezept, um aktuelle und kommende Krisen nicht nur zu meistern, sondern sogar gestärkt daraus hervorzugehen. Doch Investitionen in die Krisenprävention können zu Lasten der Effizienz gehen. Ein Dilemma, das sich in den Griff bekommen lässt. […]

Maximilian Schirmer (rechts) übergibt zu Jahresende die Geschäftsführung von tarife.at an Michael Kreil. (c) tarife.at
News

tarife.at ab 2026 mit neuer Geschäftsführung

Beim österreichischen Vergleichsportal tarife.at kommt es mit Jahresbeginn zu einem planmäßigen Führungswechsel. Michael Kreil übernimmt mit 1. Jänner 2026 die Geschäftsführung. Maximilian Schirmer, der das Unternehmen gegründet hat, scheidet per 14. April 2026 aus der Gesellschaft aus. […]

News

Warum Unternehmen ihren Technologie-Stack und ihre Datenarchitektur überdenken sollten

Seit Jahren sehen sich Unternehmen mit einem grundlegenden Datenproblem konfrontiert: Systeme, die alltägliche Anwendungen ausführen (OLTP), und Analysesysteme, die Erkenntnisse liefern (OLAP). Diese Trennung entstand aufgrund traditioneller Beschränkungen der Infrastruktur, prägte aber auch die Arbeitsweise von Unternehmen.  Sie führte zu doppelt gepflegten Daten, isolierten Teams und langsameren Entscheidungsprozessen. […]

News

Windows 11 im Außendienst: Plattform für stabile Prozesse

Das Betriebssystem Windows 11 bildet im technischen Außendienst die zentrale Arbeitsumgebung für Service, Wartung und Inspektionen. Es verbindet robuste Geräte, klare Abläufe und schnelle Entscheidungswege mit einer einheitlichen Basis für Anwendungen. Sicherheitsfunktionen, Updates und Unternehmensrichtlinien greifen konsistent und schaffen eine vertrauenswürdige Plattform, auf der sowohl Management als auch Nutzer im Feld arbeiten können. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*