2009-06-27 6 views
1

J'ai une petite base de données d'affaires et leurs adresses. En utilisant le Google Geocode API, j'ai pu obtenir jusqu'à 80% de précision. Si une entreprise a une adresse simple dans une rue, Google fait généralement du bon travail. Cependant, de nombreuses entreprises ont des adresses impaires, qui sont présentées différemment selon la base de données. Exemple:Comment géocoder des adresses d'affaires non standard

Royal Copenhagen 
Manly 1 
Shop 2A, The Corso (Wharf End) 
Manly NSW 2095 
(02) 9977 1618‎ 

Google Geocoder ne parvient pas à trouver une bonne adresse pour cet emplacement. Cependant, si je Google for 'Royal Copenhagen, Manly NSW 2095', je peux facilement trouver l'adresse et la broche a l'emplacement correct:

2 The Corso 
Manly New South Wales 2095, Australia 
(02) 9977 1618‎ 

En ce moment, j'ai mon programme de géocodage essayer diverses combinaisons des champs d'adresse pour tenter d'obtenir le meilleur emplacement . Remarque, sur Google Maps, entering the phone number and city renvoie de très bons résultats, mais le géocodeur renvoie des résultats très différents.

Quelqu'un a-t-il réussi à programmer des bases de données comme ceci?

Répondre

2

J'ai trouvé que je pouvais utiliser le Google AJAX Search API à mes fins. C'est le design à utiliser à partir de JavaScript, mais il est possible de call directly from Python. Pour une recherche, elle renvoie une liste des entreprises correspondantes et leurs emplacements géocodés.

2

Il est possible que l'API Google ne soit pas suffisamment sophistiquée à cette fin.

J'ai déjà utilisé un produit commercial pour le géocodage. Le produit incluait une pile de DVD, mise à jour tous les mois, pour les données de géocodage pour la plus grande partie du monde que vous pourriez souhaiter payer. Ce n'était pas un système trivial à utiliser, mais il a obtenu ses données d'analyse et de géocodage auprès des autorités postales des pays du monde entier, afin de rester à jour. La théorie était que toute adresse permettant de délivrer une lettre pouvait être analysée et géocodée.

Je ne recommande pas ce produit. Je vais vous dire le nom seulement pour que vous puissiez rechercher et trouver leurs concurrents. Le produit était Trillium.

3

Personnellement, j'utilise YAHOO's geocoder pour obtenir les informations long/lat et j'utilise l'API de Google pour mapper les données. Je suis tombé sur le même problème où Google n'était pas tout à fait à la hauteur des adresses plus compliquées, mais l'API Yahoo a plus de flexibilité. Je cours également une très petite application et ce n'est pas un problème en utilisant les deux, mais votre kilométrage peut varier.

+0

Est-ce que Yahoo travaille pour des adresses en dehors des États-Unis? –

+0

ouais, j'ai été capable de convertir l'adresse de l'OP nécessaire –

+0

Gardez à l'esprit que cela viole les termes de Yahoo. :) –

0

Google ne peut géocoder les adresses qui est là-bas la base de données, il est dynamique

si vous voulez faire cela, je pense que yopu doivent écrire une application pour trouver la latitude et la longitude et enregistrer dans la base de données alors ce sera facile .......... :)

Questions connexes