2

我尝试使用以下代码从Google Nearby Search获取地点。

from googleplaces import GooglePlaces, types, lang

YOUR_API_KEY = 'AIzaSyAiFpFd85eMtfbvmVNEYuNds5TEF9FjIPI'

google_places = GooglePlaces(YOUR_API_KEY)

query_result = google_places.query(
        location='London, England', keyword='Fish and Chips',
        radius=20000, types=[types.TYPE_FOOD])

if query_result.has_attributions:
    print query_result.html_attributions


for place in query_result.places:
    # Returned places from a query are place summaries.
    print place.name
    print place.geo_location
    print place.reference

    # The following method has to make a further API call.
    place.get_details()
    # Referencing any of the attributes below, prior to making a call to
    # get_details() will raise a googleplaces.GooglePlacesAttributeError.
    print place.details # A dict matching the JSON response from Google.
    print place.local_phone_number
    print place.international_phone_number
    print place.website
    print place.url

我得到了给定位置和半径的地点列表的 json 输出。我从 json 中检索了名称、地址、纬度、经度。我也需要那个地方的距离,但是找不到。有人请帮忙。

4

1 回答 1

0

您可以使用谷歌距离矩阵 API。

它会为您返回如下输出:

<?xml version="1.0" encoding="UTF-8"?> 
<DistanceMatrixResponse> 
<status>OK</status> 
<origin_address>Vancouver, BC, Canada</origin_address> 
<origin_address>Seattle, État de Washington, États-Unis</origin_address> 
<destination_address>San Francisco, Californie, États-Unis</destination_address> 
<destination_address>Victoria, BC, Canada</destination_address> 
<row> 
 <element> 
  <status>OK</status> 
  <duration> 
  <value>340110</value> 
  <text>3 jours 22 heures</text> 
  </duration> 
  <distance> 
   <value>1734542</value> 
   <text>1 735 km</text> 
  </distance> 
 </element>
 ...... 
于 2012-12-21T07:43:46.573 回答