Devolver la primera fuente de imagen de google images


10

¿Hay alguna forma de obtener la primera fuente de imágenes de la búsqueda de Google si tengo un término de búsqueda?

Por ejemplo, si la entrada es tomato, la salida seríahttp://www.cksinfo.com/clipart/food/fruits/tomatoes/tomato.png

¡Gracias!

Respuestas:


5

La API de búsqueda personalizada de Google ahora incluye imágenes. Está limitado a 100 consultas / día antes de la facturación, pero es la única forma legítima de utilizar Google para buscarlo.

Si el enlace dirige mal:

Estilos de llamada

Hay más de una forma de invocar la API:

DESCANSO

La transferencia de estado representativa en la API de búsqueda personalizada de Google es algo diferente de REST tradicional. En lugar de proporcionar acceso a los recursos, la API proporciona acceso a un servicio. Como resultado, la API proporciona un único URI que actúa como punto final del servicio.

Accede al punto final del servicio API de búsqueda personalizada de Google utilizando el verbo HTTP GET REST, como se describe en las operaciones de la API. Usted pasa los detalles de todas las solicitudes de búsqueda como parámetros de consulta.

El formato específico para el único URI de la API de búsqueda personalizada de Google es:

https://www.googleapis.com/customsearch/v1?parameters

donde los parámetros son cualquier parámetro para aplicar a la consulta. Consulte Trabajar con resultados de búsqueda y Referencia de parámetros de consulta en el documento Uso de REST para obtener más detalles.

Aquí hay un ejemplo de cómo funciona esto en la API de búsqueda personalizada de Google, que busca conferencias en un motor de búsqueda personalizado de prueba:

GET https://www.googleapis.com/customsearch/v1?key=INSERT-YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=lectures

RESTO desde JavaScript

Puede invocar la API de búsqueda personalizada de Google utilizando REST de JavaScript, utilizando el parámetro de consulta de devolución de llamada y una función de devolución de llamada. Esto le permite escribir aplicaciones ricas que muestran datos de búsqueda personalizada sin escribir ningún código del lado del servidor.

El siguiente ejemplo utiliza este enfoque para mostrar la primera página de resultados de búsqueda para el tomate de consulta:

<html>
  <head>
    <title>JSON/Atom Custom Search API Example</title>
  </head>
  <body>
    <div id="content"></div>
    <script>
      function hndlr(response) {
      for (var i = 0; i < response.items.length; i++) {
        var item = response.items[i];
        // in production code, item.htmlTitle should have the HTML entities escaped.
        document.getElementById("content").innerHTML += "<br>" + item.htmlTitle;
      }
    }
    </script>
    <script src="https://www.googleapis.com/customsearch/v1?key=YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=tomato&callback=hndlr">
    </script>
  </body>
</html>

Por supuesto, actualizaría el src del script para incluir el valor de la entrada desde la que está buscando.


¿deberíamos disponer públicamente la clave API en la scripturl? o_O
T.Todua

3

Puede usar la API de Google Image Search para hacer esto. Desafortunadamente, se ha depravado, por lo que puede encontrar que la cantidad de consultas por día que puede hacer es limitada. No estoy seguro de si hay una nueva API para reemplazarla.


No ha habido reemplazo, y esta API en particular está realmente en la lista de las que definitivamente se cerrarán (en lugar de simplemente en desuso sin más horarios para el apagado), según la reciente publicación de "limpieza de primavera" API , aunque es probable que esté en el rango de tres años (ver sección 1.3).
Su '

Bien, pero ¿puedo obtener de alguna manera el contenido de la página de resultados y analizar el primer enlace de la imagen o algo así? ¿Alguna solución en absoluto?
3mpetri

Puede hacer una búsqueda y luego analizar el HTML para obtener el primer resultado. Eso definitivamente es factible. Sin embargo, probablemente viole las condiciones de servicio de Google.
John Conde
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.