Wie man Google mit Python scrapen kann

Anleitungen, Python, Scraping, Nov-15-20225 Min. gelesen

Google ist der größte Akteur unter allen Suchmaschinen, wenn es um die Suche nach Informationen im Internet geht. Schätzungen zufolge werden täglich über 3,5 Milliarden Suchanfragen über die Google-Suche durchgeführt. Wir (Google-Nutzer) erhalten nur eine bestimmte Menge an Informationen auf der Grundlage von Google Analytics und Google Ads. Google verwendet seine API

Inhaltsübersicht

Google ist der größte Akteur unter allen Suchmaschinen, wenn es um die Suche nach Informationen im Internet geht. Schätzungen zufolge werden täglich über 3,5 Milliarden Suchanfragen über die Google-Suche durchgeführt. Wir (Google-Nutzer) erhalten nur eine bestimmte Menge an Informationen auf der Grundlage von Google Analytics und Google Ads. Google nutzt seine API (Application Programming Interface) und wählt im Wesentlichen die für uns wertvollsten Informationen auf der Grundlage seiner Recherchen und Rankings aus. Aber was ist, wenn wir ein wenig tiefer in die Informationen eindringen wollen, die für Sie wirklich wertvoll sind? 

Hier kommt der Bedarf an Scraping ins Spiel. Sie können sich einen Google Scraper als eine Möglichkeit vorstellen, die wichtigsten Kapitel eines Buches hervorzuheben. Wenn Sie ein Lehrbuch nach Informationen durchsuchen, neigen Sie dazu, den Text herauszusuchen, der für Ihre Forschung oder Ihren Test am wertvollsten ist. Aber das World Wide Web ist größer als ein 1000-seitiges Buch. Im Falle des Internets kann Google Scraper also Ihr laserfokussiertes Auge sein, das sofort die besten Ergebnisse zu dem Thema, das Sie interessiert, erfasst und sammelt. Sie können Google-Suchergebnisse auf der Grundlage bestimmter Schlüsselwörter extrahieren. Wenn Sie z. B. Google mit dem Schlüsselwort "Löwen" scrapen, liefert Ihnen der Google Web Scraper eine bestimmte Anzahl von URLs mit den besten Bewertungen zu diesem Schlüsselwort. Je mehr Schlüsselwörter Sie verwenden, desto mehr spezifische URLs und Daten liefert Ihnen Google. Je spezifischer die Daten sind, desto mehr sind sie auf Ihre Anforderungen zugeschnitten. Aber lassen Sie uns zunächst verstehen, warum Sie Google scrapen müssen.

Warum müssen Sie Google scrapen?

Sie wissen, dass Google für Milliarden von Menschen der wichtigste Zugang zum Internet ist, und fast jedes Unternehmen möchte in den Google-Suchergebnissen erscheinen. Google-Bewertungen und Rezensionen haben einen massiven Einfluss auf die Online-Profile lokaler Unternehmen. Die Marketing-Agenturen, die viele Kunden aus verschiedenen Branchen haben, verlassen sich stark auf zuverlässige SEO-Tools (Search Engine Optimization). Sie sind ein Mittel zur effektiven Durchführung verschiedener Aufgaben und ein Mittel zur erfolgreichen Verwaltung und Analyse der Ergebnisse. 

Nachfolgend sind einige Anwendungsfälle für das Scraping von Google aufgeführt.

  • Sie können Anzeigen für eine bestimmte Gruppe von Schlüsselwörtern analysieren.
  • Sie können Ihre Konkurrenz sowohl in den organischen als auch in den bezahlten Ergebnissen beobachten.
  • Sie können eine URL-Liste für bestimmte Schlüsselwörter erstellen. 

Unternehmen müssen aus den folgenden Gründen Google scrapen.

  • Suchmaschinenoptimierung (SEO) - Das Scraping von Google zeigt einem Unternehmen, wie weit oben seine Website auf der Google-Ergebnisseite erscheint, und gibt Aufschluss darüber, wie viele Schlüsselwörter seine Website auf einer Seite verwendet. Je mehr Schlüsselwörter eine Website verwendet, desto weiter oben auf der Ergebnisseite erscheint die betreffende Seite. Wenn Sie also wissen, wie Sie SEO einsetzen können, bleibt Ihr Unternehmen äußerst wettbewerbsfähig.
  • Marketing - Je häufiger wir das Amazon-Logo auf unseren Bildschirmen sehen, desto wahrscheinlicher ist es, dass wir zu Amazon gehen, wenn wir einen Kauf tätigen wollen. Google Scraping hilft dabei, Daten darüber zu sammeln, wie Ihre Konkurrenten für ihre Produkte werben, für welche Produkte sie Werbung machen und wie die Kunden auf diese Produkte reagieren. 
  • Wettbewerbsfähige Verkaufstaktiken - Google Scraping hilft Ihrem Unternehmen, wettbewerbsfähigere Verkaufstaktiken zu entwickeln. Wenn Ihr Unternehmen auf einer bestimmten Ergebnisseite schlecht abschneidet, kann dies Aufschluss darüber geben, warum ein bestimmtes Produkt Ihres Unternehmens nicht erfolgreich ist. Scraping verschafft Ihnen einen Vorsprung vor Ihren Mitbewerbern und bietet neue Möglichkeiten, in dieser Welt wettbewerbsfähig zu sein. 

Scraping von Google mit Python

Schauen wir uns an, wie wir Google mit Python scrapen können.

Einrichtung

Zuerst müssen Sie einen Fake-User-Agent installieren. Dieser holt sich einen aktuellen Useragent mit einer realen Datenbank.

pip install fake-useragent

Bibliotheken importieren

Sie müssen alle erforderlichen Bibliotheken importieren, wie unten dargestellt.

importiere pandas als pd
importiere numpy als np
urllibimportieren 
von fake_useragent importieren UserAgent
importiere Anfragen
importieren re
from urllib.request import Request, urlopen
von bs4 importieren BeautifulSoup

Verwenden Sie ein Schlüsselwort

Sie müssen die Google-URL mit Ihrem Schlüsselwort und der Anzahl der Ergebnisse erstellen. Dazu führen wir zwei Schritte aus:

Codierung des Schlüsselworts in HTML mit urllibAdd the id to the URL

Wir nehmen an, dass unser Stichwort "maschinelles Lernen in Python" lautet.

keyword= "maschinelles lernen python"
html_keyword= urllib.parse.quote_plus(keyword)
print(html_Schlüsselwort)

Wenn wir das Schlüsselwort ausdrucken, erhalten wir das folgende Ergebnis.

Erstellen Sie die Google-URL

Nachdem wir das Schlüsselwort mit urllib in HTML kodiert haben, müssen wir die Google-URL wie unten gezeigt erstellen.

Anzahl_der_Ergebnisse = 15
google_url = "https://www.google.com/search?q=" + html_keyword + "&num=" + str(number_of_result)
print(google_url)

Wir erhalten die folgende URL:

Erhalten Sie die Ergebnisse

Jetzt müssen wir die URL anklicken und die Ergebnisse abrufen. Beautiful Soup und Fake Useragent werden uns dabei helfen.

ua = UserAgent()
response = requests.get(google_url, {"User-Agent": ua.random})
soup = BeautifulSoup(response.text, "html.parser")

Wir brauchen die regulären Ausdrücke nur, um die gewünschten Informationen zu extrahieren.

result = soup.find_all('div', attrs = {'class': 'ZINbbc'})
results=[re.search('\/url\?q\=(.*)\&sa',str(i.find('a', href = True)['href'])) for i in result if "url" in str(i)]
#this is because in rare cases we can't get the urls
links=[i.group(1) for i in results if i != None]
links

Das ist das Ergebnis.

So können Sie Google mit Python scrapen. 

Wir können den obigen Code auch in einer einzigen Scraper-Funktion zusammenfassen, wie unten gezeigt.

def google_results(keyword, n_results):
    query = keyword
    query = urllib.parse.quote_plus(query) # Format into URL encoding
    number_result = n_results
    ua = UserAgent()
    google_url = "https://www.google.com/search?q=" + query + "&num=" + str(number_result)
    response = requests.get(google_url, {"User-Agent": ua.random})
    soup = BeautifulSoup(response.text, "html.parser")
    result = soup.find_all('div', attrs = {'class': 'ZINbbc'})
    results=[re.search('\/url\?q\=(.*)\&sa',str(i.find('a', href = True)['href'])) for i in result if "url" in str(i)]
    links=[i.group(1) for i in results if i != None]
    return (links)

Hier ist google_results unsere Scraper-Funktion, in der wir das Schlüsselwort und die Anzahl der Ergebnisse als Parameter übergeben und die Google-URL erstellen.

google_results('maschinelles lernen in python', 10)

Das ist das Ergebnis.

Verwendung von Bevollmächtigten

Was, wenn Sie eine Verbindung zur Google Ads API herstellen möchten? Sie können dies über einen Proxy tun, indem Sie die http_proxy-Konfiguration in Ihrer google-ads.yaml-Datei wie unten gezeigt einstellen.

http_proxy: INSERT_PROXY_HERE

Sie können http://user:pass@localhost:8082 als Proxy angeben. Sie können die Proxy-Einstellung auch programmatisch mit Hilfe der GoogleAdsClient-Methoden wie folgt konfigurieren:

  • load_from_dict
  • load_from_env
  • load_from_string

Zum Beispiel, 

config = {
  ...
  "http_proxy": "INSERT_PROXY_HERE",
}
googleads_client = GoogleAdsClient.load_from_dict(config)

Sie müssen die Umgebungsvariable GOOGLE_ADS_HTTP_PROXY setzen, um einen Proxy der load_from_env-Methode zu verwenden.

Warum Google Proxies verwenden?

Im Folgenden werden die Gründe für die Verwendung von Google-Proxys aufgeführt.

  • Schnelle und eindeutige Ergebnisse - Alle Suchmaschinen, einschließlich Google, missbilligen die Verwendung automatisierter Software zur Gewinnung von Ergebnissen. Wenn sie feststellen, dass mehrere Suchanfragen von einer IP-Adresse ausgehen, sperren sie die IP-Adresse und verhindern, dass sie Zugang zu Daten erhält. Mit einer ganzen Reihe einzigartiger und dedizierter privater Proxys können Sie nicht nur die automatisierte Software zum Extrahieren der Google-Suchergebnisse nutzen, sondern auch die Daten extrem schnell erhalten.
  • Schutz der Privatsphäre - Google-Proxys sorgen dafür, dass Ihre ursprüngliche IP-Adresse sicher ist und nicht für Hacking-Versuche anfällig ist. Sie sorgen auch dafür, dass die sensiblen Informationen auf Ihrem Computer an einem sicheren Ort aufbewahrt werden können.
  • Automatisierung - Die Automatisierungssoftware funktioniert korrekt unter Verwendung von qualitativ hochwertigen Proxys, und Sie müssen in Verbindung mit den speziellen Proxys und der Automatisierungssoftware nichts weiter kaufen.

Schlussfolgerung

Sie können Google mit Python für scrapen:

  • Analyse der Wettbewerber
  • Links aufbauen
  • Soziale Präsenz hervorheben
  • Suche nach Schlüsselwörtern

Beim Scraping von Google-Daten sind Proxys unverzichtbar, da sie Unternehmen helfen können, ihr Ranking in Suchmaschinen zu verbessern und zu verhindern, dass ihre Internet-IP blockiert wird. Sie können einen ganzen Stapel spezieller Proxys für das Scraping von Google verwenden, und sie helfen Ihnen, die Daten extrem schnell zu erhalten.

Ich hoffe, Sie haben verstanden, wie man Google mit Python scrapen kann.