Verwenden Sie die Google -Search -API mit Python

Verwenden Sie die Google -Search -API mit Python
Es ist keine Nachricht, dass Google die größte Suchmaschine der Welt ist. Viele Leute werden die Extrameile gehen, um ihren Inhalt vor einer anderen Suchmaschine in Google hoch zu haben. Infolgedessen hat Google für jede Suche viele Qualitätsergebnisse und mit großartigen Ranking -Algorithmen können Sie erwarten, dass Sie bei Google das Beste aus Suchergebnissen erzielen, um das Beste aus Suchergebnissen zu erhalten.

Dies hat eine Implikation. Seine Implikation ist, dass es viele nützliche Daten über Google gibt und die Notwendigkeit erfordert, diese goldenen Daten abzukratzen. Die abgekratzten Daten können zur Qualitätsdatenanalyse und zur Entdeckung wundervoller Erkenntnisse verwendet werden. Es kann auch wichtig sein, in einem Versuch großartige Forschungsinformationen zu erhalten.

Wenn Sie über das Schatzen sprechen, kann dies mit Tools Dritter erfolgen. Es kann auch mit einer Python -Bibliothek durchgeführt werden, die als Scrapy bekannt ist. Scrapy wird als eines der besten Kratzwerkzeuge bewertet und kann verwendet werden, um fast jede Webseite zu kratzen. Sie können mehr in der Scrapy Library erfahren.

Unabhängig von den Stärken dieser wunderbaren Bibliothek jedoch. Das Abkratzen von Daten auf Google könnte eine schwierige Aufgabe sein. Google fällt bei allen Web -Scraping -Versuchen hart an und stellt sicher, dass das Abkratzen von Skripten nicht einmal in einer Stunde vor dem Verbot der IP -Adresse so viele 10 Kratzanfragen erstellt. Dies macht Dritte und persönliche Web -Scraping -Skripte nutzlos.

Google gibt die Möglichkeit, Informationen zu kratzen. Was auch immer das geschabtete Schaber erledigt, muss über eine Anwendungsprogrammierschnittstelle (API) erfolgen.

Nur für den Fall, dass Sie noch nicht wissen, was eine Anwendungsprogrammierschnittstelle ist, gibt es nichts, worüber Sie sich Sorgen machen müssen, da ich eine kurze Erklärung geben werde. Per Definition ist eine API eine Reihe von Funktionen und Verfahren, die die Erstellung von Anwendungen ermöglichen, die auf die Funktionen oder Daten eines Betriebssystems, eine Anwendung oder einen anderen Dienst zugreifen. Grundsätzlich ermöglicht eine API, dass Sie Zugriff auf das Endergebnis von Prozessen erhalten, ohne an diesen Prozessen beteiligt sein zu müssen. Zum Beispiel würde eine Temperatur -API Ihnen die Celsius/Fahrenheit -Werte eines Ortes liefern, ohne dass Sie mit einem Thermometer dorthin gehen müssen, um die Messungen selbst zu machen.

Wenn Sie dies in den Umfang des Abkratzens von Informationen von Google bringen, können Sie die API, die wir verwenden würden. Über die API können wir einfach Zugriff auf das Endergebnis haben (nachdem Google am Ende das „Kratzen“), ohne Code zu schreiben, um Webseiten zu kratzen.

Während Google viele APIs für verschiedene Zwecke hat, werden wir die benutzerdefinierte Suche JSON -API für diesen Artikel verwenden. Weitere Informationen zu dieser API finden Sie hier.

Diese API ermöglicht es uns, kostenlos 100 Suchanfragen pro Tag zu erstellen, wobei Preispläne zur Verfügung stehen.

Erstellen einer benutzerdefinierten Suchmaschine

Um die benutzerdefinierte Such -JSON -API verwenden zu können, benötigen wir eine benutzerdefinierte Suchmaschinen -ID. Wir müssten jedoch zuerst eine benutzerdefinierte Suchmaschine erstellen, die hier durchgeführt werden kann.

Wenn Sie die benutzerdefinierte Suchmaschinenseite besuchen, klicken Sie auf die Schaltfläche „Hinzufügen“, um eine neue Suchmaschine zu erstellen.

Geben Sie in der Box „Websites to -Suche“ einfach in "www" ein.LinuxHint.com ”und im Feld„ Name der Suchmaschinen “geben Sie einen beschreibenden Namen Ihrer Wahl ein (Google wäre vorzuziehen).

Klicken Sie nun auf "Erstellen", um die benutzerdefinierte Suchmaschine zu erstellen, und klicken Sie von der Seite auf die Schaltfläche "Bedienfeld", um den Erfolg der Erstellung zu bestätigen.

Sie würden einen Abschnitt „Suchmaschinen -ID“ und eine ID darunter sehen, dh die ID, die wir für die API benötigen, und wir würden später in diesem Tutorial darauf verweisen. Die Suchmaschinen -ID sollte privat gehalten werden.

Bevor wir gehen, denken Sie daran, wir haben „www) eingelegt.Linuhint.com ”früher. Mit dieser Einstellung würden wir nur die Ergebnisse von der Website allein erhalten. Wenn Sie die normalen Ergebnisse aus der gesamten Websuche erhalten möchten, klicken Sie im Menü links auf "Setup" und dann auf die Registerkarte "Grundlagen" klicken. Gehen Sie zum Abschnitt "Im gesamten Web suchen" und wechseln Sie diese Funktion auf.

Erstellen eines API -Schlüssels

Nachdem Sie eine benutzerdefinierte Suchmaschine erstellt und ihre ID erhalten haben, wird als nächstes eine API -Taste erstellt. Der API -Schlüssel ermöglicht den Zugriff auf den API -Dienst und sollte nach der Erstellung genau wie die Suchmaschinen -ID sicher gehalten werden.

Um eine API -Taste zu erstellen, besuchen Sie die Site und klicken Sie auf die Schaltfläche „Ein Schlüssel abrufen“.

Erstellen Sie ein neues Projekt und geben Sie ihm einen beschreibenden Namen. Wenn Sie auf "Weiter" klicken, würden Sie die API -Taste generieren lassen.

Auf der nächsten Seite hätten wir verschiedene Setup -Optionen, die für dieses Tutorial nicht erforderlich sind. Daher klicken Sie einfach auf die Schaltfläche „Speichern“ und wir sind bereit zu gehen.

Zugriff auf die API

Wir haben die benutzerdefinierte Such -ID und die API -Taste gut gemacht. Als nächstes werden wir die API verwenden.

Während Sie mit anderen Programmiersprachen auf die API zugreifen können, werden wir dies mit Python tun.

Um mit Python auf die API zugreifen zu können, müssen Sie den Google API -Client für Python installieren. Dies kann mit dem PIP -Installationspaket mit dem folgenden Befehl installiert werden:

PIP Installieren Sie Google-API-Python-Client

Nach erfolgreicher Installation können Sie die Bibliothek jetzt in unseren Code importieren.

Das meiste, was getan wird, würde durch die folgende Funktion erfolgen:

von googleapiclient.Entdeckung Import Build
my_api_key = "Ihre API -Taste"
my_cse_id = "Deine CSE -ID"
Def Google_search (Search_term, api_key, cse_id, ** kwargs):
Service = Build ("CustomSearch", "V1", Entwicklere = api_key)
res = Service.CSE ().Liste (q = such_term, cx = cse_id, ** kwargs).ausführen()
return res

In der obigen Funktion die my_api_key Und my_cse_id Variablen sollten durch die API -Taste bzw. der Suchmaschinen -ID als Stringwerte ersetzt werden.

Jetzt muss nur noch erledigt werden, dass die Funktion im Suchbegriff, die API -Taste und die CSE -ID aufgerufen werden.

result = google_search ("kaffee", my_api_key, my_cse_id)
Druck (Ergebnis)

Der obige Funktionsaufruf würde nach dem Schlüsselwort "Kaffee" suchen und dem zurückgegebenen Wert dem zuweisen Ergebnis Variable, die dann gedruckt wird. Ein JSON -Objekt wird von der benutzerdefinierten Such -API zurückgegeben, daher würde ein weiteres Parsen des resultierenden Objekts ein wenig Kenntnis von JSON erfordern.

Dies ist aus einer Stichprobe des Ergebnisses ersichtlich, wie unten angezeigt:

Das oben zurückgegebene JSON -Objekt ist dem Ergebnis aus der Google -Suche sehr ähnlich:

Zusammenfassung

Google für Informationen zu kratzen ist den Stress nicht wirklich wert. Die benutzerdefinierte Such -API erleichtert das Leben für alle, da die einzige Schwierigkeit darin besteht, das JSON -Objekt für die erforderlichen Informationen zu analysieren. Zur Erinnerung, denken Sie immer daran, Ihre benutzerdefinierte Suchmaschinen -ID und API -Schlüsselwerte privat zu halten.