it-swarm.com.de

Die Google-Bildersuche sagt, dass API nicht mehr verfügbar ist

Ich benutze die Google-Bildersuch-API. Bis gestern hat es funktioniert, aber heute morgen steht "Diese API ist nicht mehr verfügbar"

Ist es offiziell geschlossen, oder einen Fehler an meiner Seite?

Anfrage

https://ajax.googleapis.com/ajax/services/search/images?v=1.0&rsz=8&q=cute+kittens

Antwort

{"responseData": null, "responseDetails": "This API is no longer available.", "responseStatus": 403}
61
Md. Parvez Alam

Dies ist die vollständige URL-Vorlage, die verwendet werden soll

Wir können unnötige Parameter eliminieren.

https://www.googleapis.com/customsearch/v1?q= {searchTerms} & num = {count?} & start = {startIndex?} & lr = {sprache?} & safe = {safe?} & cx = { cx?} & cref = {cref?} & sort = {sort?} & filter = {filter?} & gl = {gl?} & cr = {cr?} & googlehost = {googleHost?} & c2coff = {disableCnTwTranslation?} & hq = {hq? } & hl = {hl?} & siteSearch = {siteSearch?} & siteSearchFilter = {siteSearchFilter?} & exactTerms = {exactTerms?} & excludeTerms = {excludeTerms?} & linkSite = {linkSite?} & orTerms = {orTerms?} & relatedSite? = {dateRestrict?} & lowRange = {lowRange?} & highRange = {highRange?} & searchType = {searchType} & fileType = {fileType?} & rights = {rights?} & imgSize?} & imgType = {imgType?} & imgType?} & imgType? ?} & imgDominantColor = {imgDominantColor?} & alt = json

Ich benutze 

https://www.googleapis.com/customsearch/v1?key=ap_key&cx=cx&q=hello&searchType=image&imgSize=xlarge&alt=json&num=10&start=1

2
Md. Parvez Alam

Die Antwort, die ich gefunden habe, war die Verwendung der Custom Search Engine (CSE) API von Google. Beachten Sie, dass dies auf 100 kostenlose Anfragen pro Tag beschränkt ist.

cx erstellen und ändern, um nach Bildern zu suchen

  1. Erstellen Sie eine benutzerdefinierte Suchmaschine unter https://cse.google.com/cse/create/new basierend auf Ihren Suchkriterien. 
  2. Wählen Sie die zu durchsuchenden Websites aus (lassen Sie dieses Feld leer, wenn Sie das gesamte Web durchsuchen möchten. Andernfalls können Sie eine Website eingeben, die auf einer bestimmten Website durchsucht werden soll.)
  3. Geben Sie einen Namen und eine Sprache für Ihre Suchmaschine ein.
  4. Klicken Sie auf "Erstellen". Sie finden jetzt cx in Ihrer Browser-URL.
  5. Klicken Sie unter "Ändern Sie Ihre Suchmaschine" auf die Schaltfläche "Systemsteuerung". Im Abschnitt "Bearbeiten" finden Sie eine Beschriftung für "Bildsuche" mit einer EIN/AUS-Schaltfläche. Ändern Sie sie in IN. Klicken Sie auf "Aktualisieren", um Ihre Änderungen zu speichern.

Suche mit der API durchführen

Die URL des API-Endpunkts lautet https://www.googleapis.com/customsearch/v1

Die folgenden JSON-Parameter werden für diese API verwendet:

  • q: Gibt den Suchtext an
  • num: gibt die Anzahl der Ergebnisse an. Erfordert einen ganzzahligen Wert zwischen 1 und 10 (einschließlich)
  • start: Der "Offset" für die Ergebnisse, bei dem die Suche beginnen soll. Erfordert einen ganzzahligen Wert zwischen 1 und 101.
  • imgSize: die Größe des Bildes. Ich habe "medium" verwendet
  • searchType: muss auf "image" eingestellt sein
  • filetype: Gibt den Dateityp für das Bild an. Ich habe `" jpg "verwendet, aber Sie können dies weglassen, wenn die Dateierweiterung für Sie keine Rolle spielt.
  • key: ein API-Schlüssel, erhalten von https://console.developers.google.com/
  • cx: Die benutzerdefinierte Suchmaschinen-ID aus dem vorherigen Abschnitt

Stellen Sie einfach eine GET-Anforderung her, indem Sie die obigen Parameter als JSON an den API-Endpunkt (ebenfalls oben aufgeführt) übergeben.

Hinweis: Wenn Sie in den Suchmaschineneinstellungen eine Liste von Referrern festlegen, funktioniert der Besuch der URL über Ihren Browser wahrscheinlich nicht. Sie müssen einen AJAX - Aufruf (oder den entsprechenden Befehl aus einer anderen Sprache) von einem in dieser Liste angegebenen Server aus durchführen. Es funktioniert nur für die Referrer, die in den Konfigurationseinstellungen angegeben wurden.

Referenz: https://developers.google.com/custom-search/json-api/v1/reference/cse/list

96
Vijay Shegokar

Jetzt können Sie Bilder mit der API zur benutzerdefinierten Bildsuche suchen.

Sie können dies mit zwei Schritten tun: 

1) Holen Sie sich CUSTOM_SEARCH_ID

Gehe zu - https://cse.google.ru/cse/all

Hier müssen Sie eine neue Suchmaschine erstellen. Tun Sie dies und aktivieren Sie die Bildsuche dort.

Bildschirm (ich bin russisch ... sorry)

image search enable

holen Sie sich dann diese Suchmaschinen-ID. Drücken Sie dazu auf die Schaltfläche Code abrufen:

get code button

Und dort finden Sie eine Zeile mit cx = "hier wird Ihre CUSTOM_SEARCH_ID":

get CSE id

OK. Es ist fertig, jetzt der zweite Schritt:

2) Holen Sie sich SERVER_KEY

Gehen Sie zu google Console - https://console.developers.google.com/project

Google API Console

Klicken Sie auf die Schaltfläche zum Erstellen eines Projekts, geben Sie den Namen und andere erforderliche Informationen ein. Wählen Sie dieses Projekt aus, und wählen Sie Apis aktivieren aus project dashboard Suchen Sie jetzt nach der benutzerdefinierten Suchmaschine. 

custom SE find Und aktivieren Sie es.

Enable Custom Search

Jetzt müssen wir zu Anmeldeinformationen gehen und einen neuen Serverschlüssel erstellen:

Create server Key

OK. Jetzt können wir die Bildsuche verwenden. 

Abfrage:

https://www.googleapis.com/customsearch/v1?key=SERVER_KEY&cx=CUSTOM_SEARCH_ID&q=flower&searchType=image&fileType=jpg&imgSize=xlarge&alt=json

Ersetzen Sie SERVER_KEY und CUSTOM_SEARCH_ID und rufen Sie diese Anfrage auf.

Limit: kostenlos können Sie nur 100 Bilder pro Tag suchen. Vielen Dank für Ihre Aufmerksamkeit. 

20
aftamat4ik

Wenn dies nur für Ihre eigenen Zwecke (nicht für die Produktion) gedacht ist und Sie nicht vorhaben, Google Bildersuche zu missbrauchen, können Sie einfach die erste Bild-URL aus den Google-Suchergebnissen mit JSOUP extrahieren. 

Zum Beispiel: Code zum Abrufen der Bild-URL der ersten Miniaturansicht:

public static String FindImage(String question, String ua) {
            String finRes = "";

    try {
            String googleUrl = "https://www.google.com/search?tbm=isch&q=" + question.replace(",", "");
            Document doc1 = Jsoup.connect(googleUrl).userAgent(ua).timeout(10 * 1000).get();
            Element media = doc1.select("[data-src]").first();
            String finUrl = media.attr("abs:data-src"); 

            finRes= "<a href=\"http://images.google.com/search?tbm=isch&q=" + question + "\"><img src=\"" + finUrl.replace("&quot", "") + "\" border=1/></a>";

        } catch (Exception e) {
            System.out.println(e);
        }

        return finRes;
    }

Führen: 

frage - Bildsuchbegriff

ua - Benutzeragent des Browsers

6
jjj

Ändern Sie die API-URL in Google Benutzerdefinierte Bildsuche

Geben Sie dieselben Parameter zusammen mit API KEY und CX an.

Weitere Informationen und Explorer

3
Pir Abdul

Die Yahoo Boss API ist ein sinnvoller Ersatz, obwohl sie nicht kostenlos ist und die Ergebnisse nicht ganz so gut sind.

UPDATE: YAHOO BOSS JSON-Such-API wird am 31. März 2016 eingestellt

0
alzy