from types import * import urllib, urllib2, csv class GoogleGeo: api_key = "ABQIAAAAvCbGW5EV-rEJpZP96-o0NxRPc12EQQx6Mu62N-PrzOQunKtWdRSVe1MQKF8NjPuHWXoMt0I-QOiNqQ" url = "http://maps.google.com/maps/geo?" def __init__(self,address=None): if isinstance(address, (DictType,ListType,TupleType)): self.par_str = ', '.join(address); self.address = address; self.parameters = {'q': ', '.join(address), 'key': self.api_key, 'output': 'csv'} elif isinstance(address, (StringType)): self.parameters = {'q': address, 'key': self.api_key, 'output': 'csv'} def geo(self, address=None): #return self.pull() res = self.pull() if res[0] == '200': return {'latitude':res[2],'longitude':res[3]} def pull(self): req = urllib2.Request(self.url+urllib.urlencode(self.parameters)) response = urllib2.urlopen(req) cs = response.read() res = csv.reader([cs]).next() return res