Récupérer automatiquement la latitude et la longitude d'une page Google Maps

Discussion dans 'YouTube, Google Images et Google Maps' créé par OTP, 30 Novembre 2009.

  1. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    Bonsoir,

    J'utilise énormément Google Maps pour récuperer des latitudes/longitudes que je dois recopier dans un classeur Excel.
    Actuellement, j'utilise le lien 'Lien' de Google Maps, je copie l'URL, la colle dans une cellule d'un classeur Excel spécial qui extrait les coordonnées puis je sélectionne les deux cases qui contiennent les deux coordonnées et enfin je copie ça dans le bon classeur Excel avec un collage spécial pour ne pas copier la formule...

    En gros, c'est long et fastidieux, d'autant plus que je le fais souvent. :roll:

    Ma question : peut-on aisément développer une sorte d'extension Firefox (ou tout autre moyen) qui récupererait automatiquement l'URL de la page, l'analyserait et remplirait le presse-papier ?

    Vu le temps que je passe à la chose, je suis prêt à fouiller un peu pour trouver un moyen de gagner ensuite pas mal de temps.

    Je suis preneur de toute suggestion.

    OTP
     
  2. screuscreu
    screuscreu WRInaute impliqué
    Inscrit:
    14 Janvier 2008
    Messages:
    687
    J'aime reçus:
    0
    Un simple JS exécute via un bookmark ?
    Un peu comme le firebug pour IE si tu vois ?
     
  3. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    Non, je ne vois pas (mais alors pas du tout ! ;) ), mais je vais regarder la piste.
    Merci.
     
  4. screuscreu
    screuscreu WRInaute impliqué
    Inscrit:
    14 Janvier 2008
    Messages:
    687
    J'aime reçus:
    0
    le truc c'est comme le lien "firebug lite" ici :
    http://getfirebug.com/lite.html

    Si tu te créer un truc comme cela dans tes bookmarks ça devrait le faire ... même directement le rentrer dans une BDD si tu veux.

    Tu vois mieux ou pas ?
     
  5. screuscreu
    screuscreu WRInaute impliqué
    Inscrit:
    14 Janvier 2008
    Messages:
    687
    J'aime reçus:
    0
  6. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    Merci. je regarde et je te tiens au courant.
     
  7. forty
    forty WRInaute passionné
    Inscrit:
    30 Octobre 2008
    Messages:
    1 901
    J'aime reçus:
    0
    je me suis fait un petit formulaire pour récupérer une lati/longi. ca permet de positionner un marqueur à partir d'une adresse, de le déplacer puis ca copie la valeur dans le clipboard (sous firefox).
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <title>Latitude et longitude d'une adresse</title>
    <meta name="robots" content="none">
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=<your_key>&amp;hl=fr" type="text/javascript"></script>
    <script type="text/javascript">
    <!--
    var map = null;
    var geocoder = null;
    var marker = null;
    var point = null;
    
    function InitGoogleMap() {
    	if (GBrowserIsCompatible()) {
    		map = new GMap2(document.getElementById('google_map'));
    		map.addControl(new GLargeMapControl());
    		map.addControl(new GMapTypeControl());
    		map.addControl(new GScaleControl());
    		point = new GLatLng(43.599414,3.925509);
    		map.setCenter(point, 5);
    		map.setMapType(G_HYBRID_MAP);
    		geocoder = new GClientGeocoder();
    	}
    	document.forms['formulaire'].elements['address'].focus();
    }
    
    if (!window.clipboardData) {
    	window.clipboardData = {
    		setData : function(mode,content) {
    			if (netscape) {
    				try {
    					// On test si la configuration permet l'accès au presse-papier.
    					netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
    				} catch (e) {
    					alert("Impossible d'accéder au presse-papier. La solution est là : http://groups.google.com/group/Snipurl/web/copy-to-clipboard-not-working");
    				}
    				// Initialisation du composant fournit par Mozilla.
    				var gClipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
    				// Copie du texte dans le presse papier.
    				gClipboardHelper.copyString(content);
    			}
    		}
    	}
    }
    
    function showAddress(address) {
    	if (geocoder) {
    		geocoder.getLatLng(address, 
    			function(unpoint) {
    				if (!unpoint) {
    					alert(address + " not found");
    				} else {
    					map.setCenter(unpoint, 13);
    					if (marker) {
    						map.closeInfoWindow();
    						map.removeOverlay(marker);
    					}
    					marker = new GMarker(unpoint, {draggable: true});
    					map.addOverlay(marker);
    					window.clipboardData.setData('Text', marker.getPoint().toUrlValue());
    					marker.openInfoWindowHtml(marker.getPoint().toUrlValue()+'<br>zoom : '+map.getZoom());
    					GEvent.addListener(marker, "click", function() {
    						map.setCenter(unpoint, map.getZoom()+1);
    					  });
    					GEvent.addListener(marker, "dragstart", function() {
    						map.closeInfoWindow();
    					});
    					GEvent.addListener(marker, "dragend", function() {
    						window.clipboardData.setData('Text', marker.getPoint().toUrlValue());
    						marker.openInfoWindowHtml(marker.getPoint().toUrlValue()+'<br>zoom : '+map.getZoom());
    					});
    				}
    			}
    		);
    	}
    }
    
    window.onload = InitGoogleMap;
    window.onunload = GUnload;
    -->
    </script>
    </head>
    <body>
    <form action="#" name="formulaire" onsubmit="showAddress(this.address.value); return false;">
    	<p>
    	<input type="text" size="60" name="address" value="">
    	<input type="submit" value="Go!">
    	</p>
    	<div id="google_map" style="width: 1000px; height: 450px;"></div>
    </form>
    </body>
    </html>
     
  8. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    Je teste ce soir, merci.
     
  9. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    @forty : tu crois qu'on peut modifier la page pour avoir :

    1- le zoom actif à la roulette
    2- la fenêtre à la demande quand on a trouvé le point recherché ?

    Michaël
     
  10. forty
    forty WRInaute passionné
    Inscrit:
    30 Octobre 2008
    Messages:
    1 901
    J'aime reçus:
    0
  11. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    1- Merci pour le lien.

    2- Ton outil actuel : on saisit le nom, on a les lat/long illico
    Ce que je voudrais faire : on saisit le nom, on affine la position, puis un clic sur un 2ème bouton affiche la fenêtre
     
  12. forty
    forty WRInaute passionné
    Inscrit:
    30 Octobre 2008
    Messages:
    1 901
    J'aime reçus:
    0
    tel que c'est actuellement tu peux déplacer le marqueur. La fenêtre se réaffiche automatiquement avec les nouvelles coordonnées.
     
  13. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    Ah oui, excellent.
    Je vais approfondir alors.
    Merci.
     
  14. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    J'ai légèrement changé le code pour :

    - activer la roulette
    - que les coordonnées soient directement collables dans deux cellules Excel adjacentes.

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <title>Latitude et longitude d'une adresse</title>
    <meta name="robots" content="none">
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=<cle>&amp;hl=fr" type="text/javascript"></script>
    <script type="text/javascript">
    <!--
    var map = null;
    var geocoder = null;
    var marker = null;
    var point = null;
    
    function InitGoogleMap() {
       if (GBrowserIsCompatible()) {
    	  map = new GMap2(document.getElementById('google_map'));
    	  map.addControl(new GLargeMapControl());
    	  map.addControl(new GMapTypeControl());
    	  map.addControl(new GScaleControl());
    	  point = new GLatLng(43.599414,3.925509);
    	  map.setCenter(point, 5);
    	  map.setMapType(G_HYBRID_MAP);
    	  geocoder = new GClientGeocoder();
    	  map.enableScrollWheelZoom();
       }
       document.forms['formulaire'].elements['address'].focus();
    }
    
    if (!window.clipboardData) {
       window.clipboardData = {
    	  setData : function(mode,content) {
    		 if (netscape) {
    			try {
    			   // On test si la configuration permet l'accès au presse-papier.
    			   netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
    			} catch (e) {
    			   alert("Impossible d'accéder au presse-papier. La solution est là : http://groups.google.com/group/Snipurl/web/copy-to-clipboard-not-working");
    			}
    			// Initialisation du composant fournit par Mozilla.
    			var gClipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
    			// Copie du texte dans le presse papier.
    			gClipboardHelper.copyString(content);
    		 }
    	  }
       }
    }
    
    function showAddress(address) {
       if (geocoder) {
    	  geocoder.getLatLng(address,
    		 function(unpoint) {
    			if (!unpoint) {
    			   alert(address + " not found");
    			} else {
    			   map.setCenter(unpoint, 13);
    			   if (marker) {
    				  map.closeInfoWindow();
    				  map.removeOverlay(marker);
    			   }
    			   marker = new GMarker(unpoint, {draggable: true});
    			   map.addOverlay(marker);
    			   window.clipboardData.setData('Text', marker.getPoint().lat()+'\t'+marker.getPoint().lng());
    			   marker.openInfoWindowHtml(marker.getPoint().lat()+'\t'+marker.getPoint().lng()+'<br>zoom : '+map.getZoom());
    			   GEvent.addListener(marker, "click", function() {
    				  map.setCenter(unpoint, map.getZoom()+1);
    				 });
    			   GEvent.addListener(marker, "dragstart", function() {
    				  map.closeInfoWindow();
    			   });
    			   GEvent.addListener(marker, "dragend", function() {
    				  window.clipboardData.setData('Text', marker.getPoint().lat()+'\t'+marker.getPoint().lng());
    				  marker.openInfoWindowHtml(marker.getPoint().lat()+'\t'+marker.getPoint().lng()+'<br>zoom : '+map.getZoom());
    			   });
    			}
    		 }
    	  );
       }
    }
    
    window.onload = InitGoogleMap;
    window.onunload = GUnload;
    -->
    </script>
    </head>
    <body>
    <form action="#" name="formulaire" onsubmit="showAddress(this.address.value); return false;">
       <p>
       <input type="text" size="60" name="address" value="">
       <input type="submit" value="Go!">
       </p>
       <div id="google_map" style="width: 1400px; height: 650px;"></div>
    </form>
    </body>
    </html>
    Ca marche nickel et ça va me faire gagner beaucoup de temps.

    Merci Forty !
     
  15. forty
    forty WRInaute passionné
    Inscrit:
    30 Octobre 2008
    Messages:
    1 901
    J'aime reçus:
    0
    il n'y a pas de quoi ;)
     
  16. OTP
    OTP WRInaute accro
    Inscrit:
    16 Décembre 2005
    Messages:
    14 580
    J'aime reçus:
    3
    Si, car ça me rend un grand service.
    Je viens déjà d'utiliser une 50aine de fois la page en question !
     
Chargement...
Similar Threads - Récupérer automatiquement latitude Forum Date
récupérer automatiquement des données depuis excel Développement d'un site Web ou d'une appli mobile 10 Juin 2013
recuperer automatiquement les urls des resultat gg Développement d'un site Web ou d'une appli mobile 8 Février 2008
récuperer automatiquement des noms de domaines Développement d'un site Web ou d'une appli mobile 11 Septembre 2007
Récupérer automatiquement les balises métas description Développement d'un site Web ou d'une appli mobile 12 Décembre 2005
Commande site : monsite.com. Comment récupérer les URL dans un fichier ? Crawl et indexation Google, sitemaps 2 Juillet 2022
Récupérer URL destination liste redirection Netlinking, backlinks, liens et redirections 22 Novembre 2021
Récupérer les 10 plus grandes valeurs dans un fichier JSON Développement d'un site Web ou d'une appli mobile 18 Novembre 2021
Js : récupérer un élément dans un array Développement d'un site Web ou d'une appli mobile 23 Octobre 2021
FORMULAIRE FB ADS récupérer les données Facebook 28 Juillet 2021
Récupérer le premier et dernier enregistrement sql Développement d'un site Web ou d'une appli mobile 16 Juillet 2021
Comment récupérer le solde impayé de mon compte Adsense ? AdSense 26 Juin 2021
Search Console Sitemaps non indéxés ""Impossible de recuperer le sitemap" Crawl et indexation Google, sitemaps 23 Juillet 2020
Récupérer backlinks vers liens morts : fausse bonne idée ? Netlinking, backlinks, liens et redirections 6 Avril 2020
Récupérer le contenu d'une vidéo youtube Le café de WebRankInfo 23 Mars 2020
Comment récupérer un compte insta ouvert par un cybersquatteur ? Autres réseaux sociaux 29 Janvier 2020
comment récupérer mon positionnement Problèmes de référencement spécifiques à vos sites 5 Janvier 2020
Attendre des années avant de récupérer l'argent amassé sur adsense AdSense 23 Novembre 2019
Comment récupérer variable dynamique pour GTM ? Google Analytics 30 Septembre 2019
SELECT COUNT avec PDO et récupérer le résultat Développement d'un site Web ou d'une appli mobile 27 Mai 2019
récupérer id en php sans lien Développement d'un site Web ou d'une appli mobile 25 Avril 2019