Python - 使用"Google AJAX搜索"API的本地搜索对象

0 投票
2 回答
2592 浏览
提问于 2025-04-15 22:32

我刚开始使用谷歌的搜索API来查找地址和这些地址之间的距离。我用的是geopy这个工具,但我经常遇到一个问题,就是查询的地址不太准确。所以我决定尝试一下谷歌的“本地搜索”(http://code.google.com/apis/ajaxsearch/local.html)。

我想问一下,我能不能在python中使用API提供的“本地搜索”对象。感觉好像不行,我必须使用json格式。有没有人知道有没有什么解决办法?

顺便说一下,我想做一个像这样的东西:http://www.google.com/uds/samples/random/lead.html ... 只是我想做成一个矩阵,里面填满地址之间的距离。

谢谢你的阅读!

2 个回答

0

本地搜索还有哪些其他参数呢?有没有办法为查询设置一个北、南、东、西的边界框?http://ajax.googleapis.com/ajax/services/search/local?v=1.0&q=...

2

根据文档的说明,

Google AJAX搜索API是一个JavaScript库,它可以让你把Google搜索嵌入到你的网页和其他网络应用中。如果你使用Flash或其他不支持JavaScript的环境,这个API提供了一个原始的RESTful接口,可以返回JSON格式的结果,这种格式大多数编程语言都能轻松处理。

Python处理JSON没有任何问题(比如在2.6及以上版本中可以使用标准库里的json模块,还有一些第三方库,比如在早期版本中使用的simplejson,它是今天标准json的前身)。所以,关键在于如何正确使用这个RESTful接口,因为大多数Google API并没有直接为某些非JavaScript语言封装。

这里的代码示例包括Flash、Php、Java、Python和Perl,它们的核心都是访问一个特定的URL,比如在Python中使用urllib2,然后处理返回的JSON数据,比如在(2.6之前的)Python中使用simplejson

这些RESTful代码示例中的所有查询都是针对网页搜索的,但本地搜索非常相似,只需在请求的URL中开始使用:

http://ajax.googleapis.com/ajax/services/search/local?v=1.0&q=...

也就是说,在URL中用local替代web

撰写回答