Ad verba per numeros

Servicios y Utilidades
Wednesday, March 28, 2007, 01:22 PM
Actualización (17/04/2008): La técnica descrita en este post ya no tiene mucho sentido puesto que es posible utilizar el API AJAX desde otros lenguajes aunque, eso sí, la respuesta siempre será JSON. Más información...

Atención, información probablemente obsoleta:

Hace algún tiempo comenté que Google había dejado de dar soporte al API de búsquedas mediante SOAP reemplazándolo por un sistema basado en AJAX. Este nuevo API hace imposible, en principio, su utilización fuera de aplicaciones Javascript; afortunadamente algunas personas se han dedicado a "destripar" su funcionamiento de tal modo que es posible utilizarlo desde cualquier lenguaje que nos permita realizar peticiones HTTP.

A continuación se muestra una URL para realizar una búsqueda mediante la nueva API:

http://www.google.com/uds/GwebSearch?callback=GwebSearch.RawCompletion&context=0&lstkp=0&rsz=small&hl=en&sig=7460b296e440b95f2997e301146bf802&q=blog+dani+gayo&key=internal&v=1.0

La consulta se especifica, urlencodeada, en el parámetro q. ¿Qué son el resto de parámetros? Los más importantes son los siguientes:

  • rsz puede tomar los valores small y large que retornan 4 y 8 resultados, respectivamente.
  • key se corresponde con la clave que Google os proporciona al solicitar el uso del API; sin embargo, es posible emplear siempre el valor internal y, además, parece que puede eliminarse sin afectar a los resultados.
  • sig puede tomar diversos valores dependiendo de qué página consultéis, el valor siempre debe ser el correspondiente a la variable UDS_JSHash de este script; aparentemente, este valor es independiente de la clave de usuario.

Un aspecto positivo es que, por lo que he visto hasta el momento, este nuevo API no presenta restricciones respecto al número de consultas diarias.

Matthew Wilkinson proporciona un script PHP para realizar la consulta y procesar los resultados de Google, retornados como JSON, convirtiéndolos en un array PHP.



Back Next