2009-03-31 21 views
14

Estoy tratando de usar la API de búsqueda web AJAX (JSON) de Google en Python. Estoy atrapado porque el urllib.urlencode() de Python solo toma pares de valores, no cadenas, para codificar. En la API de Google, la cadena de consulta es el término de búsqueda y no se asocia con una variable.URL codifica un par sin valor en Python

query = "string that needs to be encoded" 
params = urllib.urlencode(query) # THIS FAILS 
# http://code.google.com/apis/ajaxsearch/documentation/reference.html 
url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&rsz=large&%s&%s" % (params, GOOGLE_API_KEY) 

request = urllib2.Request(url) 
request.add_header('Referer', GOOGLE_REFERER) 

search_results = urllib2.urlopen(request) 
raw_results = search_results.read() 
json = simplejson.loads(raw_results) 
estimatedResultCount = json['responseData']['cursor']['estimatedResultCount'] 

if estimatedResultCount != 0: 
    print "Google: %s hits" % estimatedResultCount 

¿Cómo ordeno mis términos de búsqueda?

Respuesta

Cuestiones relacionadas