14
Ich versuche, Google AJAX (JSON) Web Search API in Python zu verwenden. Ich stecke fest, weil Pythons urllib.urlencode() nur Wertepaare und keine eigenen Zeichenfolgen für die Codierung benötigt. In der Google-API ist die Abfragezeichenfolge der Suchbegriff und sie wird keiner Variablen zugeordnet.URL codieren ein nicht-Wert-Paar in 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
Wie leite ich meine Suchbegriffe ein?