Me encontré con el blog de Damon Cortesi que contiene un ejemplo de uso, que utiliza simplejson, incorporado en la biblioteca estandar a partir de Python 2.6.
Nuestro uso del api se limita a construir un URL que incluya los terminos a buscar y las restricciones de la misma.
La URL base es http://ajax.googleapis.com/ajax/services/search/images , a la que tendremos que agregar el termino a buscar, la version del protocolo, la cantidad de resultados devueltos
# -*- coding: utf-8 -*-
#!/usr/bin/python
import urllib
import json
# vamos a crear la consulta
query = urllib.urlencode({'q' : 'flores', #cadena a buscar
'v' : '1.0', #version del protocolo
'rsz' : 'large'}) # estableces que se devuelvan 8 resultados por consulta
#completamos el url
url = 'http://ajax.googleapis.com/ajax/services/search/images?%s' \
% (query)
#solicitamos el url
resultados = urllib.urlopen(url).read()
#interpretamos el objeto json. json.loads() nos devuelve un diccionario
json = json.loads(resultados)
#creamos un diccionario con los datos que nos interesan
resultados = json['responseData']['results']
#los imprimimos!
for i in resultados:
print i['title'] + ": " + i['url']
"""Salida:
flores089.gif: http://i121.photobucket.com/albums/o207/bicfomh/rec/flores/flores089.gif
ashley-flores.jpg: http://www.hoax-slayer.com/images/ashley-flores.jpg
z-flores.gif: http://www.zwani.com/graphics/portuguese/flores/images/z-flores.gif
Flor_289035504_017_flores.jpg: http://images.recados.net/img/recados/Flor_289035504_017_flores.jpg
z-flores1.gif: http://images.zwani.com/graphics/portuguese/flores/images/z-flores1.gif
z-flores3.gif: http://www.zwani.com/graphics/portuguese/flores/images/z-flores3.gif
z-flores10.gif: http://www.recados.com/graficos/flores/images/z-flores10.gif
RanchodeLasFlores3.jpg: http://www.herecomestheguide.com/images/location/RanchodeLasFlores/RanchodeLasFlores3.jpg
"""
Durante esta semana voy a seguir investigando, y voy a pasar de urllib a urllib2, que es mas eficiente(segun lo que lei)
Si quieren saber mas sobre la api AJAX lo pueden encontrar en:
http://code.google.com/intl/es/apis/ajaxsearch/documentation/reference.html#_intro_fonje
Hasta la proxima!
1 comentario:
Muchas pruebas y muy buen post!
Publicar un comentario