Googlebot sendet Tausende von Anfragen an unseren Kartenfinder und verwendet das API-Kontingent

10

Wir haben eine Store Locater-Seite auf der Website unseres Kunden. Der Endbenutzer gibt seine Postleitzahl und einen Suchradius ein und wir zeigen die Ergebnisse auf einer Google Map an.

Vor kurzem hatten wir festgestellt, dass die Website das kostenlose Kartensuchlimit (ca. 25.000 pro 24 Stunden) erreicht hat, ohne dass der Gesamtverkehr merklich gestiegen ist. Ich habe eine zusätzliche Protokollierung aktiviert, um herauszufinden, wo das Problem liegt.

Es stellt sich heraus, dass Googlebot Tausende von Suchanfragen auf dieser Karte durchläuft. Dies ist eine kleine Auswahl:

2017-07-09 23: 56: 22,719 [7] INFO ShopLanding - [Thread 41] Google Maps: gesucht G23 erhielt OK von 66.249.66.221
2017-07-09 23: 56: 35,469 [7] INFO ShopLanding - [Thread 10] Google Maps: Gesucht CA6 erhielt OK von 66.249.66.221
2017-07-09 23: 57: 24,563 [7] INFO ShopLanding - [Thread 48] Google Maps: gesucht BN14 erhielt OK von 66.249.66.223
2017-07-09 23: 58: 00,970 [7] INFO ShopLanding - [Thread 42] Google Maps: gesucht CB4 erhielt OK von 66.249.66.221
2017-07-09 23: 58: 13,064 [7] INFO ShopLanding - [Thread 54] Google Maps: gesucht DY9 erhielt OK von 66.249.66.221
2017-07-09 23: 59: 18,722 [7] INFO ShopLanding - [Thread 59] Google Maps: gesucht TS3 erhielt OK von 66.249.66.223
2017-07-09 23: 59: 53,223 [7] INFO ShopLanding - [Thread 49] Google Maps: gesucht S45 erhielt OK von 66.249.66.221

Gibt es eine Möglichkeit, Google daran zu hindern, so viele Anfragen zu bearbeiten? Dies frisst einen erheblichen Teil der kostenlosen Zulage. Legitime Suchanfragen scheinen unter 200 pro Tag zu liegen.

BEARBEITEN

Die Site basiert auf C # ASP.NET. Die Store-Suche verwendet POST, die URL ändert sich beim Senden nicht. Ich kann morgen früh ein Beispiel für IIS-Protokolle veröffentlichen, um dieses Verhalten zu bestätigen.

Burgi
quelle
Haben die Artikel, nach denen Googlebot sucht, eine Bedeutung? "G23" und "CA6" bedeuten mir nichts. Googlebot sendet normalerweise keine zufälligen Daten an Formulare. Normalerweise werden nur Dropdown-Optionen, vorab ausgefüllte Daten oder Abfragelinks gecrawlt. Sind diese Werte auf der Website irgendwo als Liste? Wie sehen Ihre URLs für diese Anfragen aus?
Stephen Ostermiller
@StephenOstermiller sind teilweise britische Postleitzahlen, insbesondere die Distriktkennung. Dies sollten POSTAnfragen für AJAX sein, ich werde jedoch die IIS-Protokolle überprüfen.
Burgi
Nebenbei: Was ist das für eine "kostenlose Kartensuche"?
MrWhite
1
@SamWeaver Die IP wird als Google-Bot aufgelöst und der entsprechende IIS-Protokolleintrag enthält den Googlebot UserAgent. Zugegeben, beide können gefälscht werden.
Burgi
1
Verwendet Ihr Filialfinder eine Abfragezeichenfolge (GET-Anforderung)? Was ist die grobe URL-Struktur Ihrer Store Locator-Seite? Ändert sie sich (Abfragezeichenfolge) bei der Benutzersuche? Wenn Sie die funktionale / technische Seite etwas detaillierter erklären können, kann sie effektiver beantwortet werden.
TopQnA

Antworten:

11

Um zu verhindern, dass Googlebot über Google Maps sucht, legen Sie eine Datei mit dem Namen robots.txtim Stammverzeichnis Ihrer Domain ab. zB https://www.wikipedia.org/robots.txt

Beispiel robots.txt:

User-agent: Googlebot
Disallow: /search-store/

Wobei / search-store / die Seite ist, die die Anfrage an Google Maps sendet.

Wenn es sich um etwas anderes als Googlebot handelt, können Sie versuchen, das Crawlen auf diese Seite zu deaktivieren, indem Sie:

User-agent: *
Disallow: /search-store/

Beachten Sie, dass Skripte, die robots.txt ignorieren, nicht aufhören, sich schlecht zu verhalten.

satibel
quelle
10
Beachten Sie, dass Google und andere Suchmaschinen diese Seiten sowieso nicht spinnen sollen!
Ari Davidow
1
Ich bin nicht sicher, ob das Blockieren des gesamten Suchspeichers die richtige Option ist. Möglicherweise müssen wir die Abfragezeichenfolge usw. verstehen. Das heißt, lassen Sie Google lesen, aber senden Sie nicht zu viele Anfragen. Das Blockieren des gesamten Suchspeichers sollte die letzte Option sein.
TopQnA
Eine Suche mit Ratenbegrenzung ist möglicherweise eine weitere Option. Nehmen wir an, Sie müssen sich nach 25 Suchvorgängen zwischen den einzelnen Suchvorgängen eine Stunde lang abkühlen. Es würde Bots und schändliche Leute aufhalten, aber keine regulären Benutzer.
Satibel
Wenn die Seite nur zur Suche nach dem Standort eines Geschäfts dient, bezweifle ich, dass es nützlich wäre, sie zuerst indizieren zu lassen. Dies hängt von der Site-Struktur ab. Außerdem ist die Implementierung von robots.txt einfacher / schneller (also billiger) als schnelle Lösung, als es einige Stunden dauert, bis das Ratenlimit erreicht ist. @ TopQnA
Satibel
Nun, der Standort des Geschäfts ist für den Benutzer sehr wichtig, und die meisten Leute suchen nach einem Geschäft mit Bezug auf den Standort in Google. Wenn der Filialfinder eine Karte mit nützlichen Informationen mit einer eindeutigen URL für jedes Geschäft erstellen kann, ist dies viel nützlicher der Benutzer. Und deshalb sollte das Blockieren die letzte Option sein.
TopQnA