2011-03-22 4 views
3

Je suis à la recherche d'un moyen de géocoder des lieux avec google maps. L'API Geocoder fournit uniquement la possibilité d'utiliser des adresses pour le géocodage. Mais que faire si je ne connais pas l'adresse et seulement la ville et le nom du restaurant? Ou je veux récupérer les résultats pour "Mc Donalds Berlin" ou juste "Bar Berlin"?Google Maps géocoder pour les lieux

J'ai trouvé ce post où il demande exactement ce que je dois: Suggest list in google maps search input

And at his blog I found a solution

Cela fonctionne très bien et son incroyable rapide! J'ai vérifié le code source et vu qu'il utilise cette URL:

http://maps-api-ssl.google.com/maps/suggest?hl=en&gl=us&v=2&json=b&auth=4c8b041euWw4-3h2-Ty2fD3D1BKVQqJCEcU&src=1,2&num=5&numps=5&callback=handleResponse&q=........

BTW, c'est la même URL que maps.google.com utilise pour obtenir leur ajax autocomplétion.

Mes questions sont maintenant:

  • Est-il autorisé à utiliser cette URL pour mon propre site web?
  • Ai-je besoin d'une clé API spéciale? (en raison de l'auth = var dans l'URL ci-dessus)
  • Ou est-ce comme un service payant?
  • Existe-t-il d'autres moyens de résoudre le problème? par exemple. avec l'API Geocoder standard de google?

Répondre

1

Vous voudrez peut-être jeter un coup d'oeil dans API Google Places pour les sites:

Google Places API

Une autre façon de le faire est par YQL, mais je ne suis pas sûr à 100% sur la précision de celui-ci . Aller à YQL Console et essayez la requête suivante:

select * from local.search where query="outback steakhouse" and location="atlanta, ga" 

Cela vous donne des emplacements de Outback steakhouse à Atlanta, Géorgie. Aussi, vous pouvez interroger à proximité d'un code postal resturants:

select * from local.search where zip='30045' and query='restaurant' 

Je suis sûr qu'il ya des façons d'interroger les lieux autour d'un point donné à l'aide YQL.

+0

Merci pour votre réponse. Mais vous avez besoin d'un identifiant d'éditeur AdSense pour accéder à Google Adresses. Je n'en ai pas, alors j'ai essayé de m'inscrire au service AdSense. Dans le formulaire, ils ont besoin de mon nom complet, y compris l'adresse, le téléphone et ainsi de suite. Mais je ne veux pas fournir cette information à google (ils savent déjà trop sur moi;) Y a-t-il une autre façon où je peux juste tester google place, sans signer à adsense? – 23tux

+0

@ 23tux dès maintenant, vous aurez besoin d'un compte AdSense. Une autre façon est d'utiliser YQL – kjy112

+0

@ 23tux aussi je crois que l'exemple que vous montrez simplement utiliser google instance pour faire Geocode de google map. Il ne trouve pas vraiment les sites autour de cette zone. – kjy112

Questions connexes