Adresse de géocodage une fois dans Google Maps, enregistrer dans la base de données, lire le résultat géocodé à partir de là


13

Est-il possible de géocoder une adresse, d'enregistrer le résultat dans une base de données, puis de lire ce résultat à partir de là?

J'utilise une carte Google qui géocode des centaines d'adresses qui ont évidemment atteint la limite de géocodage. Une fois géocodée, il est très peu probable que l'adresse change à nouveau, il est donc logique d'enregistrer le résultat du géocodage dans une base de données.

J'utilise Wordpress comme plate-forme, donc si possible, j'aimerais enregistrer le résultat géocodé en tant que champ dans la base de données qui se rapporte à l'entreprise en question.

LE CLIENT A DEMANDÉ SPÉCIFIQUEMENT À L'UTILISATION DE GOOGLE TOUT AU LONG DU PROJET EN ÉLIMINANT YAHOO OU AUTRE.

MISE À JOUR: Tout le monde dit que ce que je demande va à l'encontre de leurs TOS, mais leur propre exemple ne fait-il pas la même chose - developers.google.com/maps/articles/phpsqlgeocode ?


6
S'il vous plaît lire les termes et conditions 10.0.3 (a, b, c) developers.google.com/maps/terms~~V~~number=plural~~3rd vous ne devez pas utiliser le contenu pour créer une base de données indépendante des « lieux » ou d' autres informations listes locales.
Mapperz

3
Yahoo PlaceFinder developer.yahoo.com/geo/placefinder a de meilleures conditions générales - l'API Placefinder n'a pas la restriction mentionnée concernant le stockage des données de localisation renvoyées.
Mapperz

@Mapperz Ok merci. Est-il possible d'enregistrer dans une table de fusion Google et de le lier d'une manière ou d'une autre à wordpress?
Rob

Avez-vous besoin des données postales ZIP + 4? Si oui, cela change la réponse. Alors, allez-vous envoyer quelque chose à l'adresse ou simplement utiliser les données géographiques pour l'emplacement et la position?
Jeffrey

1
Attendez ... Je suis presque sûr que c'est toujours une violation de TOS avec l'API de Yahoo aussi.
Matt

Réponses:


5

Selon les conditions d'utilisation de YahooMaps , vous n'êtes pas autorisé à stocker les données que vous collectez à l'aide de l'API. (spécifiquement viii) "VOUS NE DEVEZ PAS:"

(vi) utiliser Yahoo! Cartes API avec des informations de localisation datant de moins de 6 heures et provenant d'un appareil GPS ou de tout autre appareil de détection d'emplacement;

(vii) utiliser Yahoo! Cartes API avec des informations de localisation dérivées d'un appareil GPS ou de tout autre appareil de détection de position où ces informations n'ont pas été téléchargées directement sur votre application ou service par l'utilisateur final;

(viii) stocker ou autoriser les utilisateurs finaux à stocker des images de carte, des données de carte ou des informations de localisation géocodées à partir de Yahoo! Cartes API pour toute utilisation future;

(ix) utiliser le géocodeur autonome pour toute autre utilisation que l'affichage de Yahoo! Cartes ou affichage de points sur Yahoo! Plans;

(x) publier ou afficher, ou permettre à d'autres utilisateurs de publier ou d'afficher, toute information de localisation géocodée à l'aide de Yahoo! Cartes API;

Cela correspond à ce que j'ai vu dans les TOS de Google, Bing, MapQuest et Yahoo. La raison en est qu'ils bénéficient directement de la possibilité de présenter les résultats à l'utilisateur final. Si leur logo et "maps by google" ne s'affichent pas, ils n'obtiennent aucun "street cred" ou exposition. Ainsi, leur incitation à fournir le service a disparu. Ils vous permettent d'utiliser le service très facilement (extrêmement facile) mais ils imposent également des limites raisonnables. Tant que vous utilisez leurs données pour gagner de l'argent (même si elles sont simplement exposées), vous respectez les conditions d'utilisation. Si vous essayez de contourner ces termes, vous courez le risque d'être coupé à tout moment. Pas une histoire heureuse si votre service est basé sur leur service.

Je n'ai jamais utilisé d'établi FME, il a l'air vraiment puissant (et en même temps, plus complexe que nécessaire), mais sera toujours soumis aux CGU des fournisseurs de données. Comparez le flux de travail FME à cette simple requête HTTP à l'API LiveAddress de SmartyStreets:

https://api.qualifiedaddress.com/street-address/?street=1600+Ampytheatr+Pkway+Mountain+Vew+ca&auth-token=23350695

Il prend l'adresse suivante et la standardise (y compris la correction orthographique évidente), vérifie qu'elle est livrable, puis la géocode et décompose l'adresse en différents composants la sortant en tant que flux JSON. (si vous ne lisez pas JSON, vous pouvez brancher la sortie dans un formateur JSON pour des résultats beaucoup plus lisibles. (N'hésitez pas à utiliser vos propres données dans la chaîne URL également, à des fins de test)

1600 Ampytheatr Pkway Mountain Vew, Californie

devient

1600 Amphitheatre Pkwy Mountain View, CA 94043-1351

Il existe un certain nombre d'API commerciales disponibles qui vérifient les adresses, SmartyStreets se trouve être celui où je stationne ma voiture chaque matin. (Cdyne, StrikeIron, QAS sont quelques autres qui offrent un service similaire.) Ces services commerciaux vous offrent une utilisation de leurs données qui n'est pas liée par un TOS trop restrictif. Vous pouvez essentiellement utiliser l'ensemble de données résultant pour à peu près tout ce qui n'est pas directement en concurrence.

Vous avez raison de dire que les données de géocodage ne changent pas très fréquemment et peuvent certainement être mises en cache localement ou dans votre base de données pour minimiser le nombre de demandes au serveur. Bien pensé.


Les données sont actualisées toutes les 6 heures et l'intention est d'être utilisées avec Yahoo Maps - élément clé >> utiliser Yahoo! Cartes API avec des informations de localisation datant de moins de 6 heures et dérivées d'un appareil GPS ou de tout autre appareil de détection d'emplacement;
Mapperz

@Mapperz La fraîcheur et la source d'entrée des données d'adresse n'étaient pas le principal problème dans les TOS. J'ai cité ceux-ci simplement pour ajouter du contexte au point le plus important qui est: "VOUS NE DEVEZ PAS" (viii) stocker ou permettre aux utilisateurs finaux de stocker des images de carte, des données de carte ou des informations de localisation géocodées à partir de Yahoo! Cartes API pour toute utilisation future. Peu importe à quel point les données sont fraîches ou périmées.
Jeffrey

@Jeffrey Je n'ai pas d'autre choix que d'utiliser les services de Google tout au long, c'est une exigence spécifique du client. Cela exclut l'utilisation de Yahoo ou de toute autre chose.
Rob

@ Teamworksdesign.com Excellent, cela élimine beaucoup de regard autour et maintenant vous pouvez creuser dans le code. La chance!
Jeffrey

5

Après de nombreuses recherches, Google montre comment stocker les résultats du géocodage dans une base de données. Comme il existe un véritable didacticiel de Google sur la façon de le faire, je suppose que cela ne viole pas les conditions de service claires et boueuses que beaucoup ont mentionnées.


4

Utilisation de FME Workbench pour effectuer un géocodage «en masse» à partir de l'API Yahoo PlaceFinder

50000 demandes de limite par 24 heures:

entrez la description de l'image ici

Le composant clé est HTTPFetcher

Cette capture d'écran est une version fortement modifiée de l'espace de travail « Création de services Web» disponible gratuitement http://fmepedia.safe.com/articles/FAQ/Building-Web-services-workspace

Modifications:

Entrée d'adresse multiple (csv est le plus rapide)

La qualité de chaque match géocodé est enregistrée (au-dessus de 87, c'est bien)

Élévation ajoutée à partir d'un service différent (geonames gtop30 dem)

Validation et filtrage des mauvaises adresses à rechercher.

(J'essaierai d'accéder au magasin FME après avoir examiné l'accord / les conditions).


Je serais également très intéressé à voir votre espace de travail, car cela correspond également à plusieurs de mes objectifs de programme ...
DEWright

Cela ressemble à un excellent flux de travail, mais gardez à l'esprit que le stockage des résultats constituerait certainement une violation des conditions d'utilisation.
Jeffrey

uniquement si vous le stockez plus de 6 heures ... ou si vous l'utilisez conjointement avec Yahoo Maps pour afficher les emplacements
Mapperz

L'utilisation de PlaceFinder ne nécessite pas l'utilisation de Yahoo! Cartes ou Yahoo! Maps APIs.Eddie Babcock Yahoo! Geo Technologies developer.yahoo.com/forum/PlaceFinder-General-Discussion/…
Mapperz

@Mapperz Eh bien, le TOS dit "VOUS NE DEVEZ PAS:" {en majuscules également} "stocker ou autoriser les utilisateurs finaux à stocker des images de carte, des données de carte ou des informations de localisation géocodées à partir des API Yahoo! Maps pour toute utilisation future." Il semble assez clair que si l'intention est de "stocker" les données, cela viole les CGU. Mais, c'est certainement laissé à l'interprétation. Cela dit, si je construisais une application commerciale, je voudrais m'assurer que mon interprétation était la même que celle des fournisseurs de données puisqu'ils (Yahoo dans ce cas) détiennent le kill switch ultime.
Jeffrey

4

La réponse courte à votre question initiale est oui, tant que vous utilisez le service de cartographie de Google , vous pouvez stocker les résultats. Il est clairement expliqué (après quelques relectures) dans leur ToS et leur API de géocodage.

Vous devez savoir que, comme de nombreux autres services de géocodage populaires, ils exigent également que vous

  1. Utilisez uniquement les données acquises et mises en cache par Google avec leurs utilitaires de cartographie
  2. S'il s'agit d'un service public gratuit interne plutôt qu'externe, vous devez vous enregistrer en tant que client commercial pour l'utiliser légalement.

Notez soigneusement # 1 ... distinction très critique, vous pouvez mettre en cache, mais ils ne veulent pas que vous utilisiez le lat / long (par exemple) sur l'utilitaire de cartographie de quelqu'un d'autre, qu'il s'agisse d'un autre site Web ou d'un "homebrew" (bien qu'il soit Honnêtement, je ne sais pas comment quelqu'un peut suivre où les données lat / long sont utilisées.

toutes les limites et autres restrictions telles qu'énoncées par leurs ToS et autres documents directeurs.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.