Si altii fac la fel, acesta fiind si motivul pentru care nu lipseste acuratetea in unele cazuri..
Versiune printabilă
Poate te ajuta asta :
geolocation - Is there a way to get the users location without having the user install Google Gears? - Stack Overflow (raspunsul 9)
De corect e sigur corect pana la nivel de oras (e aceeasi baza de date cu cea de targhetare de la AdWords), singura problema este daca poti folosi workaroundul asta sau ai nevoie efectiv de o baza de date ca sa analizezi niste loguri.
@Filip - raspunsul respectiv este din 2008 iar sub el cineva scrie ca l-a testat in 2010 si rata de succes este sub 54%..
Eu folosesc metoda asta intr-o aplicatie de prin februarie 2012 si rata de succes este de 99% (pt. un web service cu acces majoritar din RO si UK). Cand nu poate, iti da null (ceea ce era una din cerinte, adica nu da locatii gresite- cel putin noi asta am determinat).
Avantajul este ca se poate folosi din server side cu un apel de tip, "web get". Daca te intereseaza pt client side, poti folosi alternativa de geolocare din HTML5.
Problema este ca facilitatea este unsupported, deci ...
Am pus mai jos o pagina de test, daca vreti sa faceti teste.
<html>
<header>
<script type="text/javascript"
src="http://www.google.com/jsapi?key=FAKEKEY">
</script>
</header>
<body>
<script>
var x=google.loader.ClientLocation;
alert(x.latitude);
alert(x.longitude);
alert(x.address.city);
alert(x.address.country);
alert(x.address.country_code);
alert(x.address.region);
</script>
</body>
</html>